问题:我正在使用Papal Smart Buttons的集成作为客户端站点上的Checkout V2。问题是,付款后网站上的用户等待时间不够长。他们只是进一步单击,我的网站无法直接在我的数据库上处理交易。
我知道有一些不同的解决方案,例如IPN和Webhooks。但是PayPal的文档和Sandbox令人困惑。我真的很讨厌PayPal的文档。
就像描述的那样-我正在使用智能按钮,并试图通过它发送一些值并在IPN上进行匹配。结果,如果用户不等待客户端站点,我可以在ipn上捕获事务。但有个问题!哪些引用或字段从“智能”按钮字段到IPN字段匹配在一起? ...我在文档中找不到任何内容,哪些字段匹配,哪些字段不匹配!
智能按钮示例
我尝试了诸如reference_id,invoice_id或sku之类的字段,但是在IPN字段中没有一个出现吗?
return actions.order.create({
purchase_units: [{
reference_id: 35 ,
description: "test",
custom_id: user_id,
invoice_id: 35,
amount: {
currency_code: "EUR",
value: 100,
breakdown: {
item_total: {
currency_code: "EUR",
value: 100
}
}
},
items: [{
name: "test1",
description: "test2",
sku: 35,
unit_amount: {
currency_code: "EUR",
value: 100
},
quantity: "1"
}],
}],
});
IPN示例:
mc_gross=12.35 &
custom=96494 &
item_name=test &
transaction_subject=test &
protection_eligibility=Eligible &
address_status=confirmed &
payer_id=VY7TCC2&GHJ &
address_street=Kaiserstraße 14 &
payment_date=01:05:28 Sep 25, 2020 PDT &
payment_status=Completed &
charset=windows-1252 &
address_zip=79067 &
first_name=Alex &
mc_fee=0.63 &
address_country_code=DE &
address_name=Alex Boxman &
notify_version=3.9 &
payer_status=verified &
business=paypal@test.de &
address_country=Germany &
address_city=Freiburg im Breisgau &
quantity=1 &
verify_sign=sqlgasdfs.uUsakasdfasdfbS3YeaE9V5 &
payer_email=test@gmail.com &
txn_id=96255345678 &
payment_type=instant &
last_name=Boxman &
address_state= &
receiver_email=paypal@test.de &
payment_fee= &
shipping_discount=0.00 &
insurance_amount=0.00 &
receiver_id=M7VC&FGHHJL &
txn_type=express_checkout &
discount=0.00 &
mc_currency=EUR &
item_number= &
residence_country=DE &
shipping_method=Default &
payment_gross= &
ipn_track_id=24asdfsfsfds
答案 0 :(得分:0)
没有理由使用具有智能支付按钮和v2 API的IPN等旧产品。
请使用适当的服务器集成。您在服务器上需要两条路由,一条用于“设置交易”,一条用于“捕获交易”,在此处记录:https://developer.paypal.com/docs/checkout/reference/server-integration/
一旦拥有了这两条路线,与它们配对的用户界面就是https://developer.paypal.com/demo/checkout/#/pattern/server