Stripe Capture Charge Amount Node和Swift

时间:2017-05-16 03:01:59

标签: swift parse-platform stripe-payments cloud-code stripe-connect

我试图捕获不同金额的费用,但是我收到一条错误,说“没有这样的费用”,有时候金额应该低于收费金额。然而,最常见的错误是“没有这样的费用”,尽管收费不是零。

这是node.js中的Cloud Code函数:

Parse.Cloud.define("cancellationFee", function(request, response){
    stripe.charges.capture({
    charge: request.params.charge,
    amount: 500,
    destination: 500
    }, function(err, charge) {
        if(err){
                console.log(err);
                response.error(err);
        }else{
                console.log("Successfully captured cancellation fee");
                response.success("captured cancellation fee");
        }
}); 
});

Swift Code 费用变量不是零。

PFCloud.callFunctionInBackground("cancellationFee", withParameters: ["charge": chargeID]) { (success: AnyObject?, error: NSError?) -> Void in
             if error == nil{
                 // code
             }else{
                 // code
             }
}

2 个答案:

答案 0 :(得分:1)

对于仍然遇到此问题的一些人来说,正确的解决方案是首先将 charge_id 作为字符串传递,然后作为第二个参数传递数量在像这样的对象里面:

stripe.charges.capture( 'chargeIdExample3242', {amount: 23} );

Source

答案 1 :(得分:0)

您确定错误不是因为将目的地设置为数字吗?目的地应为帐户ID。并且还应该在创建充电时设置,而不是捕获充电。您不应该向收费方法传递任何额外参数而不是您正在捕获的费用。

您也不应该在此处设置费用金额。

相关问题