【发布时间】:2012-06-03 04:35:36
【问题描述】:
我下午大部分时间都在处理这个问题,因此感谢您提供任何帮助。
我将 ActiveMerchant 与 active_paypal_adaptive_payment 网关一起使用,但遇到了一些问题。首先,我没有应用程序 ID,也不知道从哪里获得。我想知道这是不是我的问题。
我的目标是使用自适应 API 从一个用户的 PayPal 帐户向另一个用户汇款。我已经调试到可以确定 ActiveMerchant 网关正在生成正确的 XML:
<?xml version="1.0" encoding="UTF-8"?>
<PayRequest>
<requestEnvelope>
<detailLevel>ReturnAll</detailLevel>
<errorLanguage>en_US</errorLanguage>
</requestEnvelope>
<actionType>PAY</actionType>
<cancelUrl>http://localhost:3000/.../</cancelUrl>
<returnUrl>http://localhost:3000/.../</returnUrl>
<ipnNotificationUrl>http://localhost:3000/.../</ipnNotificationUrl>
<currencyCode>USD</currencyCode>
<receiverList>
<receiver>
<email>sandbox_account@gmail.com</email>
<amount>100.0</amount>
</receiver>
</receiverList>
<reverseAllParallelPaymentsOnError>false</reverseAllParallelPaymentsOnError>
</PayRequest>
PayPal 回复:
response_rash: !ruby/hash:Hashie::Rash
response_envelope: !ruby/hash:Hashie::Rash
timestamp: '2012-05-28T15:02:43.381-07:00'
ack: Success
correlation_id: 881baf8e93444
build: '2945555'
pay_key: AP-879734246V2339109
payment_exec_status: CREATED
然后我将用户重定向到正确的 PayPal 页面。用户登录,查看他们的信息,然后点击“支付”,此时他们会遇到以下错误:
您的付款无法完成。请返回参与网站并重试。
我什至上传到暂存环境以查看 IPN 是否已触发但未触发,我认为这是因为付款从未真正完成。我希望我能看到 PayPal 到底发生了什么,但我认为他们没有提供任何工具来做到这一点。
有没有人看到类似的错误?关于下一步从哪里进行的任何建议?
【问题讨论】:
-
cancelUrl、returnUrl和ipnNotificationUrl真的应该是localhost吗?似乎是一个容易犯的错误...... -
@sarnold 对于开发环境,这些 URL 工作正常 - 例如,取消 URL 返回工作正常。
标签: ruby-on-rails ruby paypal activemerchant