我可以在测试服务器上很好地使用并行付款,即根据从开发人员paypal网站下载的示例parallel.php文件,一次可以同时向多个人汇款。

我还下载了preapproval_flow.php文件,但是在代码中,我看不到一个变量/数组,该变量/数组允许我设置并行付款接收方,或者为此设置单个接收方。

使用Paypal API是否可以预先批准并行付款?

如果有可能,我该怎么办?

使用直接并行支付,我可以使用以下方法设置支付的并行接收者:

$receiverEmailArray = array(
    'email0',
    'email1',
    'email2',
    'email3',
    'email4',
    'email5',
    'email6',
    'email7',
    'email8',
    'email9'
);


根据cms.paypal.comx.com的说法,preappoval_flow有一个名为feesPayer的选项,文档中对此说:


  SENDER-发件人支付所有费用(对于个人,隐性
  简单/并行付款;请勿用于链式或单边
  付款)


粗体字告诉我可以进行预先批准的并行付款,但是我不知道如何发送收款人...

另外,在x.com上,它表示:


  开发人员和商人可以合并;
  
  
  平行付款和预先批准的付款。

最佳答案

预先批准的第一步是从买方那里获得批准。

此预先批准不与任何特定的卖方绑定,而是与API调用者绑定,并且它允许您将来进行Pay API调用,而无需买方确认。

预先批准流程是与付款流程分开的API调用。在其中,您可以指定要预批准的总额,预批准有效的开始日期和结束日期以及其他一些参数。 (有关完整规格,请参见“自适应支付”开发指南的第8章:https://cms.paypal.com/cms_content/US/en_US/files/developer/PP_AdaptivePayments.pdf

在此API调用中,您将买方重定向到PayPal网站,该网站上他将批准不超过您指定金额的未来付款。 (例如,如果您指定了$ 1000的总金额,则买方可以进行20笔$ 50的购买,或1笔$ 1000的大笔购买)

买方批准此交易后,您便可以向他收取费用(以预批准令牌PA-xxxxxxxxxxxxxx的形式,但此时没有钱易手。

现在您已经有了令牌,可以继续进行Parallel Payment Pay API调用,就像现在一样,但是您将指定一个附加参数:
preapprovalKey=<The PA key obtained previously>

(并且您还需要确保actionType设置为PAY)

进行此API调用后,由于PayPal认为您已经获得了购买者的许可(以批准的PA密钥的形式),因此它将立即将钱转移到指定的接收者。由于买方已经预先批准了付款,因此无需将其重定向到批准该付款。 (在这里看到逻辑吗?)

总结一下:


调用预批准API,以获得购买者的付款许可
调用Pay API(包括步骤1中的PA密钥)以执行给定的权限

关于paypal - 平行批准的 Paypal 付款?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11603168/

10-13 00:17