Node.js 收到付款后如何执行功能(Sofort)?

Node.js 收到付款后如何执行功能(Sofort)?,node.js,integration,payment-gateway,Node.js,Integration,Payment Gateway,我正在尝试将sofort作为一种支付选项集成到我的NodeJS应用程序中,到目前为止,一切正常。我唯一的问题是,我不知道在收到付款后如何执行函数。现在我只被重定向到sofort,转账,然后被重定向到success URL,但我不知道如何给服务器一个收到付款的标志。 我想我可以使用通知URL作为与服务器通信的一种方式,但它不发送GET或POST请求,因此我不知道它实际上做了什么 以下是我目前的代码: router.get('/sofort', function(req, res, next) {

我正在尝试将sofort作为一种支付选项集成到我的NodeJS应用程序中,到目前为止,一切正常。我唯一的问题是,我不知道在收到付款后如何执行函数。现在我只被重定向到sofort,转账,然后被重定向到success URL,但我不知道如何给服务器一个收到付款的标志。 我想我可以使用通知URL作为与服务器通信的一种方式,但它不发送GET或POST请求,因此我不知道它实际上做了什么

以下是我目前的代码:

router.get('/sofort', function(req, res, next) {
'use strict';
var util = require('util');
var Sofort = new (require('node-sofort'))({
    configKey : '181556:493374:5c3627c5d50e1f77ee0f5824abb46084'
});

try {
    Sofort.createPayment(101.00, 'EUR', ['Demo1'], {
        user_variables: ['variable1','variable2','variable3'],
        success_url: 'http://localhost:3000/',
        success_link_redirect: true,
        notification_urls: 'http://localhost:3000/testo'}, function (err, 
data) {
        console.log(data);
        console.log(data.payment_url);
        res.redirect(data.payment_url)
    });
} catch (e) {
    console.log(e);
}
)}

如果你有什么想法,那就说出来吧

把成功url改成

success_url: 'http://localhost:3000/sofort/success/-TRANSACTION-'
然后创建一条路线(发布或获取我不知道)


将success\u url更改为

success_url: 'http://localhost:3000/sofort/success/-TRANSACTION-'
然后创建一条路线(发布或获取我不知道)


您需要正确使用success\u url,
success\u url-String(255)success链接覆盖项目设置中的默认值。当您的客户成功执行SOFORT Banking且转账已在客户的网上银行中列出时调用。如果SOFORT Banking的交易ID应作为URL的一部分使用,则可以在URL字符串中插入参数“-transaction-”。如果在项目设置中未定义成功链接,则此参数将成为必需参数{success\u url:'https://www.example.com/sofort/success“}
您需要在节点服务器上创建正确的url,以便能够重定向到和接收数据。您需要正确使用成功url,
success\u url-String(255)success链接,覆盖项目设置中的默认值。当您的客户成功执行SOFORT Banking且转账已在客户的网上银行中列出时调用。如果SOFORT Banking的交易ID应作为URL的一部分使用,则可以在URL字符串中插入参数“-transaction-”。如果在项目设置中未定义成功链接,则此参数将成为必需参数{success\u url:'https://www.example.com/sofort/success“}
您需要在节点服务器上创建一个正确的url,以便能够重定向到和接收数据。感谢这一点:)即使transactionId未定义:/I从未使用过此库,只是根据这些文件工作。可能需要检查事务参数的格式和/或位置。文档非常全面,如果发送了任何事务id,请在调试器/网络选项卡中进行检查。如果是,您可以找到需要放入路由中的参数的名称。可能像
:TRANSACTION
:transactionId
好的,我只是从URL字符串中找到了transactionId。谢谢,这是有效的:)即使transactionId没有定义:/我从未使用过这个库,只是根据文档工作。可能需要检查事务参数的格式和/或位置。文档非常全面,如果发送了任何事务id,请在调试器/网络选项卡中进行检查。如果是,您可以找到需要放入路由中的参数的名称。可能像
:TRANSACTION
:transactionId
好的,我刚从URL字符串中找到了transactionId