繁体   English   中英

贝宝参考交易账单协议

[英]paypal reference transactions billing agreement

我们要求通过PayPal进行参考交易,以每月向客户收取不同金额的费用。 例如,第一个月是30美元,第二个月可能是35美元,第三个月可能是25美元,等等

到目前为止,这似乎是最好的方法: https : //developer.paypal.com/docs/classic/express-checkout/integration-guide/ECReferenceTxns/

我正在从以下页面使用PayPal推荐的SDK: https//developer.paypal.com/docs/classic/api/nvpsoap-sdks/并使用ExpressCheckout方法。 (通过作曲家安装的paypal / merchant-sdk-php)

我们有一个免费的PayPal商业帐户。

通过沙盒进行测试,我能够:

  1. 获取令牌(SetExpressCheckout)-类别->数字,billingAgreement,类型=销售
  2. 将客户转发到沙盒Paypal登录
  3. 确认付款
  4. 重定向回到我们的系统(returnUrl)
  5. 处理付款(GetExpressTocket + doExpressCheckout)

问题:

  • PayPal商业帐户是否需要任何开关/状态/升级才能在实时环境中启用参考交易?

  • 您如何设置$ 0结算协议以在当月晚些时候开具发票? 在上面的步骤1中传递0数量时,显示错误

如果提供了商品类别,则商品名称,数量和数量是必需的,错误代码10003

这与文档https://developer.paypal.com/docs/classic/express-checkout/integration-guide/ECReferenceTxns/#setting-up-a-billing-agreement-before-pay相矛盾,该文档指出将金额设置为0 ...? 更新:删除设置$ itemDetails-> ItemCategory ='Digital'; 解决了$ 0金额问题。

  • 即使我已通过BillingAgreement数据也未返回帐单ID

    //帐单协议明细$ billingAgreementDetails = new BillingAgreementDetailsType('MerchantInitiatedBillingSingleAgreement'); $ billingAgreementDetails-> BillingAgreementDescription = $ billingAgreementTxt; $ setECReqDetails-> BillingAgreementDetails = array($ billingAgreementDetails);

我知道帖子中有一些问题,但我相信它们都与PayPal中“参考交易”的范围有关。 我正在寻找有关文档矛盾的方法和解释的建议。 (或者,如果我做错了,那么高兴地听到它)

要回答您的问题:

1) PayPal商业帐户是否需要任何切换/状态/升级才能在实时环境中启用参考交易?

如果在致电参考交易时收到错误消息,则可能是帐户中的设置已关闭。 您需要联系PayPal业务支持团队才能启用它。

2) 不返回帐单编号。

要设置结算协议,您需要在SetExpressCheckout请求中传递paymentaction = authorization。 如果您将付款操作设置为销售,则将无法设置结算协议。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM