javascript-在贝宝(Paypal)中,什么能保护买方在结帐时将正确的金额记入他们的帐户?

前端之家收集整理的这篇文章主要介绍了javascript-在贝宝(Paypal)中,什么能保护买方在结帐时将正确的金额记入他们的帐户? 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在使用Braintree SDK在PayPal沙箱中测试我的代码.
我可以在客户端设置一个金额,例如10美元,客户可以继续进行结帐流程.

但是在服务器端,收到“ nonce”代码后,我可以向客户收取200美元,并且没有错误或验证.

如果开发者决定收取比结帐时所说的更多的费用,那么如何保护买方免受多付的费用?

在客户端,我发送了意图选项以“授权”,但是如果愿意,我仍然可以向买方收取高价.

客户端代码

 paypal.Button.render({
     braintree: braintree,client: {

                    sandBox: '{{$btClientToken}}'
                  },env: 'sandBox',commit: true,payment: function (data,actions) {
                    return actions.braintree.create({
                      flow: 'checkout',// required
                      intent:'authorize',amount: '10',// required
                      currency: 'USD',// required
                      displayName: 'test dispaly name',description: 'test description',lineItems:[
                        {
                            quantity:'1',unitAmount:'10',totalAmount: '10',name:'line item test',description:'test description',kind:'debit'
                        }

                      ]
                    });

                  },onAuthorize: function (payload) {

                    console.log(payload);

                    $.ajax({
                        method:'POST',data:{
                            _token: '{{ csrf_token() }}',payment_method_nonce: payload.nonce,uid: '{{$uid}}',order_id:payload.orderID,payer_id:payload.payerID,payment_token: payload.paymentToken
                        },url:'{{url("cart/order/nonce")}}'

                    }).done((reply)=>{

                        console.log(reply);
                    });
                  },},'#paypal-pay');

服务器端代码

$result = $gateway->transaction()->sale([
   'amount' => '200.00','paymentMethodNonce' => $nonce,'descriptor' => [
          'name' => 'company name*myurl.com'
      ],'options' => [
        'submitForSettlement' => True,"paypal" => [
            "description" => $order->title
        ],],'lineItems' => [
            [
                  'description' => 'TEST DESCRIPTION','name'        => 'TEST NAME','quantity'    => '1','unitAmount'  => '200.00','totalAmount' => '200.00','kind'        => 'debit'
            ]

      ]
    ]);

我在卖方信息中心收到一笔200美元的成功交易.

最佳答案
如果您不正确地向客户收取费用,大多数消费者保护法都会允许消费者向您追回款项,并且如果您系统地进行了收费,贸易标准局可能会对您采取行动.

PayPal自己还将提供“买方保护”担保,这表示如果商家自己不退款,则消费者可以直接从PayPal取回款项.

编辑

@Grumpy指出,PayPal在几次交易后很可能会阻止或禁止您的帐户.

猜你在找的JavaScript相关文章