1

我的测试服务器上的并行支付非常好,即根据我从开发人员贝宝网站下载的示例parallel.php 文件,我可以一次并行向超过1 人汇款。

我还下载了 preapproval_flow.php 文件,但在代码中,我看不到允许我设置并行支付接收器的变量/数组,甚至是单个接收器。

是否无法使用 paypal api 预先批准并行付款?

如果可能,我该怎么做?

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

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

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

发件人 – 发件人支付所有费用(用于个人、隐式简单/并行付款;请勿用于链式或单边付款)

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

此外,在x.com上,它说:

开发者和商家可以结合;

  • 并行和预先批准的付款。
4

1 回答 1

8

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

此预先批准与任何特定卖家无关,而是与 API 调用者相关,它允许您在未来进行支付 API 调用,而无需买家确认。

预批准流程是独立于支付流程的 API 调用。在其中,您可以指定要预批准的总金额、预批准有效的开始和结束日期以及一些其他参数。(有关完整规范,请参阅 Adaptive Payments 开发指南的第 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-key 的形式),它会立即将资金转移到指定的收款人。无需重定向买家来批准此付款,因为他已经预先批准了它。(看到这里的逻辑了吗?)

回顾一下:

  1. 调用Pre-Approval API,获取买家收费权限
  2. 调用支付 API(包括步骤 1 中的 PA 密钥)以在给定的权限上执行
于 2012-07-23T01:35:01.193 回答