gpt4 book ai didi

java - Paypal 定期付款 API - 工作流程

转载 作者:行者123 更新时间:2023-11-30 11:12:44 29 4
gpt4 key购买 nike

我想弄清楚如何使用 paypal API 来实现定期付款。我正在遵循本指南:

https://devtools-paypal.com/guide/recurring_payment_ec?interactive=OFF&env=sandbox

但是我不明白。这怎么行。在第 1 步中,付款详细信息已构建,但未填充间隔或付款值等值。然后我得到一个 token ,用户必须在第 2 步中确认付款。

在他确认付款之后。我在步骤 3 中设置了间隔的值和付款?这对我来说真的没有意义。是什么阻止我在第 3 步中收取任何我想要的金额?

最佳答案

迟到总比不到好?

我在第一次设置定期计费时遇到的主要问题是定期计费是一种付费“附加”服务,商家帐户持有人必须在他们的 PayPal 上初始化它帐户。 目前,PayPal 抛出此错误的方式是使用它们的通用 RESULT=1 响应;但是,消息是关键。 RESPMSG=User authentication failed: Recurring Billing" 几乎可以肯定意味着商家帐户上没有设置定期账单。

在帐户上设置定期计费后,以下步骤应该有效。

  1. 调用 PayPal Pro(PayFlowPro 等)iFrame:
    'USER'                  => [[[Payflow User]]],
'VENDOR' => [[[Payflow Vendor]]],
'PARTNER' => [[[Payflow Partner]]],
'PWD' => [[[Payflow Password]]],
'TRXTYPE' => 'A', // to authorize a billing profile
'TENDER' => 'C', // even if the user uses PayPal to pay
'BILLINGTYPE' => 'MerchantInitiatedBilling',
'CURRENCY' => 'USD',
'RETURNURL' => [[[Return URL]]],
'CANCELURL' => [[[Cancel URL]]],
'ERRORURL' => [[[Cancel URL]]],
'BA_DESC' => 'A Fitting Description of the Profile',
'CREATESECURETOKEN' => 'Y',
'SECURETOKENID' => [[[Your generated ID]]],
'AMT' => '5.49' // a string, can not be zero

注意:BILLINGTYPEBA_DESC 帮助您创建 PayPal 账单协议(protocol)。尽管 PayPal 具有零授权能力,但您不能将 0.00 用作您的授权金额。

当订户成功完成 PayPal 付款表格时,信息将发布到您的 RETURNURL。解析和使用此 POST 数据并执行以下 PayPal API 调用之一以创建定期计费配置文件。

如果订阅者使用 PayPal 设置他们的帐户,则 POST 将包含名称/值 BAID=#################### ##。您应该使用 BAID(“计费协议(protocol) ID”)作为引用创建一个 PayPal 计费协议(protocol):

    'USER'                  => [[[Payflow User]]],
'VENDOR' => [[[Payflow Vendor]]],
'PARTNER' => [[[Payflow Partner]]],
'PWD' => [[[Payflow Password]]],
'TRXTYPE' => 'R', // recurring billing profile
'ACTION' => 'A', // add/create recurring billing profile
'TENDER' => 'P', // PayPal
'PROFILENAME' => 'A name for your subscription',
'BAID' => '##################', // The BAID POSTed from PayPal
'START' => '190721', // a starting date in mdY format
'PAYPERIOD' => 'MONT', // or YEAR or etc, see manual
'TERM' => '0', // # of payments (0 is until subscriber cancels)
'AMT' => '5.49' // same amount as your auth in previous step

如果订户使用信用卡来设置他们的帐户,则 POST 将不包含名称/值 BAID,您应该将定期计费配置文件创建为标准的定期信用卡配置文件:

    'USER'                  => [[[Payflow User]]],
'VENDOR' => [[[Payflow Vendor]]],
'PARTNER' => [[[Payflow Partner]]],
'PWD' => [[[Payflow Password]]],
'TRXTYPE' => 'R', // recurring billing profile
'ACTION' => 'A', // add/create recurring billing profile
'TENDER' => 'C', // credit card
'PROFILENAME' => 'A name for your subscription',
'ORIGID' => 'PN##########', // PNREF value POSTed from PayPal
'START' => '190721', // a starting date in mdY format
'PAYPERIOD' => 'MONT', // or YEAR or etc, see manual
'TERM' => '0', // # of payments (0 is until subscriber cancels)
'AMT' => '5.49' // same amount as your auth in previous step

请注意,PayPal 发送给我的最后一份相关文档是 2013 年的,已经严重过时了。它包含一个繁琐的四步过程,但根本行不通。希望在您阅读本文时已经更新。

希望对您有所帮助。如果您有任何问题,请告诉我。

关于java - Paypal 定期付款 API - 工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26745355/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com