1

我在沙箱中使用 MassPay 向两个收件人付款。MassPay 响应简单地说“成功”。我预计每个收款人都会有“成功”/“失败”的结果。如果其中一项付款不成功怎么办。MassPay 是否会自动撤销成功的付款,以便双方都没有收到付款?

您能否指出解释其工作原理的 API 文档,我被困在请求/响应字段文档上。

这是一些代表我的请求/响应对的 XML:

<?xml version="1.0" encoding="utf-16"?>
<MassPayReq xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <MassPayRequest>
    <DetailLevel />
    <ReceiverType>EMAILADDRESS</ReceiverType>
    <ButtonSource>PayPal_SDK</ButtonSource>
    <MassPayItem>
      <MassPayRequestItemType>
        <ReceiverEmail>payee1@blah.co.nz</ReceiverEmail>
        <Amount>
          <currencyID>NZD</currencyID>
          <value>330.00</value>
        </Amount>
        <UniqueId>XXXXXXXXXXXXXX1</UniqueId>
      </MassPayRequestItemType>
      <MassPayRequestItemType>
        <ReceiverEmail>payee2@blah.co.nz</ReceiverEmail>
        <Amount>
          <currencyID>NZD</currencyID>
          <value>193.80</value>
        </Amount>
        <UniqueId>XXXXXXXXXXXXXXXX2</UniqueId>
      </MassPayRequestItemType>
    </MassPayItem>
  </MassPayRequest>
</MassPayReq>

<?xml version="1.0" encoding="utf-16"?>
<MassPayResponseType xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Timestamp>2014-05-08T01:44:47Z</Timestamp>
  <Ack>SUCCESS</Ack>
  <CorrelationID>c53adacbd0e76</CorrelationID>
  <Errors />
  <Version>109.0</Version>
  <Build>10918103</Build>
</MassPayResponseType>

嗯,快到午夜了......我在想,在我收到 MassPay 响应后,也许我应该通过调用传入 UniqueId 的 GetTransactionDetails 操作来轮询以检查每笔付款的状态?

更新:不,GetTransactionDetails 不是办法。

也许尝试提高细节级别。

更新:不,那不是方式。

建议依靠即时付款通知 (IPN) 来接收处理单个批量付款项目的结果。

现在,如何为我的沙盒商家帐户配置 IPN url,因为 MassPay 请求不允许提供 IPN url。

4

2 回答 2

1

建议依靠即时付款通知 (IPN) 来接收处理单个批量付款项目的结果。

就是这样。
MassPay 是批处理的,“ACK=Success”仅表示“嘿,成功!您已提交请求!”。
如果您需要跟踪结果,请使用 IPN。

于 2014-05-12T16:16:38.717 回答
0

请参阅 PayPal 的新 REST 支付 API。它旨在解决大量大规模支付的缺点。

https://developer.paypal.com/docs/integration/direct/payouts-overview/

您可以在异步模式下使用支付 API(如 MassPay 批处理),或者选择使用同步模式,在这种模式下您将被限制为一次处理单个支付 - 并且 API 响应将包含交易状态您刚刚要求的付款。

请注意,新的 API 可以更轻松地在一次调用中发布您的批次,然后在第二次调用中获取您的批次的交易请求状态。

于 2014-12-15T20:36:02.223 回答