gpt4 book ai didi

ruby-on-rails-3 - 资金不足时无法获取 PayPal 结帐错误

转载 作者:太空宇宙 更新时间:2023-11-03 15:49:06 26 4
gpt4 key购买 nike

无法理解 PayPal 支付响应错误或至少是警告。我是澳大利亚开发者(至少我位于澳大利亚并使用澳元作为货币)。

你能告诉我为什么如果沙盒用户资金不足,交易对付款请求有肯定(有效)响应吗?

所以我有 user_A 和 seller_user,他是买家。 user_A 有 0AUD 并进行了 20AUD 的定期付款交易并且响应成功???为什么?

如何得知用户没有足够的资金进行交易?

 gem: paypal-recurring
rails: 3.2.14
location: Australia

====== 重定向到结帐 url 的 Controller 操作

ppl = PayPal::Recurring.new(
return_url: paypal_confirm_url(:plan_id => params[:plan_id], :user_id => current_user.id),
cancel_url: paypal_no_checkout_url,
description: "Starter",
amount: 15,
currency: "AUD"
)
response = ppl.checkout
if response.valid?
redirect_to response.checkout_url
else
redirect_to :back
end

==== 确认后的 Controller Action

ppr = PayPal::Recurring.new(
token: params[:token],
payer_id: params[:PayerID],
description: plan.name,
amount: plan.value,
currency: "AUD",
period: :monthly,
start_at: Time.zone.now,
frequency: 1
)
response = ppr.request_payment
if response.errors.any?
flash.keep[:error] = "Something went wrong please contact paypal or ask our development team: team.grapple1@gmail.com"
return false
end

response = ppr.create_recurring_profile

paypal_recurring_profile_token = response.profile_id # response.profile_id = nil????
save!

最佳答案

所有 PayPal 沙盒账户都有一个虚拟银行账户,里面的资金是无限的。所以当 PayPal 账户有 0 美元时,它只是从那个“银行”中提取。为了发生资金不足错误,您需要以某种方式打开负面测试,尽管我认为这会根据触发 AMT 变量产生错误。对于经典 API,我建议只让您的代码查找包含 Success 的 ACK 响应并将其余部分视为异常(可能打印出 RESPMSG 作为客户通知,但有时您会希望将其替换为您自己的错误消息)

关于ruby-on-rails-3 - 资金不足时无法获取 PayPal 结帐错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20533322/

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