如何使用 PayPal 配置托管参考交易?
How do i Configure hosted reference transactions with PayPal?
我的要求是我需要使用托管(英国)解决方案来生成参考交易令牌,然后可以定期调用该令牌,而无需用户再次启动交易。
目前,使用经典 API 我有一些类似于参考交易的东西,但这需要用户有一个 PayPal 账户 - 我还需要能够接受卡的详细信息(没有 PayPal 账户).
接受卡详细信息的唯一方法似乎是使用托管(英国)解决方案,但我不知道如何设置它。所以,我想问题是这样的:
1) 我可以允许银行卡和 PayPal 账户进行参考交易吗?
或
2) 如何设置/配置托管解决方案?或者这只是在 PayPal 帐户中使用没有配置的文档和 iframe 的情况?
关于你的第二个问题 - 是的,很简单。见Hosted Docs并整合。
正如@DiceyRamp 所说,托管解决方案只是使用文档的一个例子,不需要特定帐户的设置。
回答第一个问题:- 无法使用 PayPal 托管 API 进行参考交易。相反,您必须使用按钮 API 来创建引用令牌。为了在没有购买的情况下生成令牌,您必须更进一步,生成订单然后立即将其作废。
归功于应得的功劳,这是另一位开发人员通过电子邮件为我回答的。我把他的解释放在这里,希望对大家有帮助。
具体过程是这样的:
我们使用 PayPal BMCreateButton 方法创建一个 iframe url,将 BUTTONTYPE 设置为“PAYMENT”,将 BUTTONCODE 设置为“TOKEN”。然后我们设置所有常用的订单参数(名称、地址、notify_url 等),然后对它们进行 url 编码。然后我们使用上面的参数集执行 BMCreateButton,这给了我们一个 iframe url,我们在页面上呈现。
为了生成令牌,我们使用了一个虚拟的 1 英镑订单。
在“notify_url”上执行的代码基本上采用 IPN 消息,如果结果为“已验证”,则它会将“txn_id”存储为令牌。
稍后可以在 Paypal DoReferenceTransaction API 调用中使用,使用 txn_id 作为“REFERENCEID”参数。如果 IPN 声明订单无效,notify_url 代码将不会存储 txn_id,您不能对无效的订单进行重复,因此我们永远不会将无效的 txn_id 存储为令牌。
我的要求是我需要使用托管(英国)解决方案来生成参考交易令牌,然后可以定期调用该令牌,而无需用户再次启动交易。
目前,使用经典 API 我有一些类似于参考交易的东西,但这需要用户有一个 PayPal 账户 - 我还需要能够接受卡的详细信息(没有 PayPal 账户).
接受卡详细信息的唯一方法似乎是使用托管(英国)解决方案,但我不知道如何设置它。所以,我想问题是这样的:
1) 我可以允许银行卡和 PayPal 账户进行参考交易吗?
或
2) 如何设置/配置托管解决方案?或者这只是在 PayPal 帐户中使用没有配置的文档和 iframe 的情况?
关于你的第二个问题 - 是的,很简单。见Hosted Docs并整合。
正如@DiceyRamp 所说,托管解决方案只是使用文档的一个例子,不需要特定帐户的设置。
回答第一个问题:- 无法使用 PayPal 托管 API 进行参考交易。相反,您必须使用按钮 API 来创建引用令牌。为了在没有购买的情况下生成令牌,您必须更进一步,生成订单然后立即将其作废。
归功于应得的功劳,这是另一位开发人员通过电子邮件为我回答的。我把他的解释放在这里,希望对大家有帮助。
具体过程是这样的:
我们使用 PayPal BMCreateButton 方法创建一个 iframe url,将 BUTTONTYPE 设置为“PAYMENT”,将 BUTTONCODE 设置为“TOKEN”。然后我们设置所有常用的订单参数(名称、地址、notify_url 等),然后对它们进行 url 编码。然后我们使用上面的参数集执行 BMCreateButton,这给了我们一个 iframe url,我们在页面上呈现。
为了生成令牌,我们使用了一个虚拟的 1 英镑订单。
在“notify_url”上执行的代码基本上采用 IPN 消息,如果结果为“已验证”,则它会将“txn_id”存储为令牌。
稍后可以在 Paypal DoReferenceTransaction API 调用中使用,使用 txn_id 作为“REFERENCEID”参数。如果 IPN 声明订单无效,notify_url 代码将不会存储 txn_id,您不能对无效的订单进行重复,因此我们永远不会将无效的 txn_id 存储为令牌。