Paypal 智能支付结账 - 获取使用的支付类型
Paypal smart payment checkout - Get Payment Type that was used
我已经使用智能支付按钮 (https://developer.paypal.com/docs/checkout/#) 集成了新的 paypal 结账订单。它运行良好,允许我让用户在没有 paypal 帐户的情况下使用信用卡或 SEPA 付款:
paypal.Buttons({
// ...
createOrder(data, actions) {
},
// ...
onApprove(data, actions) {
// data.orderID available here
现在,在用户的订单概览中,我想显示使用了哪种付款方式,而不仅仅是他们使用 paypal 向我付款。
但是我找不到使用 @paypal/checkout-server-sdk
或 paypal-rest-sdk
获取该信息的方法,因为我只有 CheckoutOrder
和 Capture
对象。
我的后端可以使用客户端的订单ID来获取订单详情:
paypalCheckoutSdk.orders.OrdersGetRequest(payload.orderID)
但我得到的只是这些东西:
"result": {
"id": "6CC44267CA709615A",
"intent": "CAPTURE",
"purchase_units": [{
"reference_id": "default",
"amount": { ... },
"payee": { ... },
"shipping": {
"name": { ... },
"address": { ... }
},
"payments": {
"captures": [{
"id": "2GP872418N1179401",
"status": "COMPLETED",
"amount": { ... },
"final_capture": true,
"seller_protection": {...},
"links": [...],
...
}]
}
}],
"payer": { ... },
"status": "COMPLETED"
}
没有关于所用信用卡的信息,即使是信用卡也不是 paypal 帐户。
如果我尝试使用 paypal-rest-sdk,甚至无法通过该 ID 找到订单。一定是一些特殊的结账订单。
Capture 对象 paypalOrder.result.purchase_units[0].payments.captures[0].id
也无济于事。它非常简陋,没有提供教团没有告诉我的任何内容。没有 link 到任何地方。 captureId 不允许我搜索交易或付款。
如果我登录沙盒卖家帐户,订单也不会显示使用了哪种付款方式。这些信息只是丢失了吗?或者有没有办法找回它?
谢谢!
对于此次付款,2GP872418N1179401
是卖家账户中的 PayPal 交易 ID。这是您应该在捕获完成时记录在您的商业会计数据库中的 ID,因为它是您以后可以在卖家(沙盒)中引用的内容。paypal.com 未来几年的帐户和报告。
顶层 6CC44267CA709615A
更短暂,我相信这是您开始使用的结帐订单 ID,因此它仅用于付款批准。我不确定它到底什么时候过期,但你应该只保留一段时间用于调试目的,它没有 business/accounting 值。
至于查明所使用的付款类型,PayPal 在其设计中将该信息保密给付款人。他们是否使用特定的 Visa、MC、Amex、Discover、PayPal Credit、他们的余额或其他一些本地资金来源……这是买方的事;卖家只知道他们通过 PayPal 收到了付款。据说这是为了安全和隐私,这样即使任何卖家的网站遭到破坏,买家的账单信息也不会泄露。
我已经使用智能支付按钮 (https://developer.paypal.com/docs/checkout/#) 集成了新的 paypal 结账订单。它运行良好,允许我让用户在没有 paypal 帐户的情况下使用信用卡或 SEPA 付款:
paypal.Buttons({
// ...
createOrder(data, actions) {
},
// ...
onApprove(data, actions) {
// data.orderID available here
现在,在用户的订单概览中,我想显示使用了哪种付款方式,而不仅仅是他们使用 paypal 向我付款。
但是我找不到使用 @paypal/checkout-server-sdk
或 paypal-rest-sdk
获取该信息的方法,因为我只有 CheckoutOrder
和 Capture
对象。
我的后端可以使用客户端的订单ID来获取订单详情:
paypalCheckoutSdk.orders.OrdersGetRequest(payload.orderID)
但我得到的只是这些东西:
"result": {
"id": "6CC44267CA709615A",
"intent": "CAPTURE",
"purchase_units": [{
"reference_id": "default",
"amount": { ... },
"payee": { ... },
"shipping": {
"name": { ... },
"address": { ... }
},
"payments": {
"captures": [{
"id": "2GP872418N1179401",
"status": "COMPLETED",
"amount": { ... },
"final_capture": true,
"seller_protection": {...},
"links": [...],
...
}]
}
}],
"payer": { ... },
"status": "COMPLETED"
}
没有关于所用信用卡的信息,即使是信用卡也不是 paypal 帐户。
如果我尝试使用 paypal-rest-sdk,甚至无法通过该 ID 找到订单。一定是一些特殊的结账订单。
Capture 对象 paypalOrder.result.purchase_units[0].payments.captures[0].id
也无济于事。它非常简陋,没有提供教团没有告诉我的任何内容。没有 link 到任何地方。 captureId 不允许我搜索交易或付款。
如果我登录沙盒卖家帐户,订单也不会显示使用了哪种付款方式。这些信息只是丢失了吗?或者有没有办法找回它?
谢谢!
对于此次付款,2GP872418N1179401
是卖家账户中的 PayPal 交易 ID。这是您应该在捕获完成时记录在您的商业会计数据库中的 ID,因为它是您以后可以在卖家(沙盒)中引用的内容。paypal.com 未来几年的帐户和报告。
顶层 6CC44267CA709615A
更短暂,我相信这是您开始使用的结帐订单 ID,因此它仅用于付款批准。我不确定它到底什么时候过期,但你应该只保留一段时间用于调试目的,它没有 business/accounting 值。
至于查明所使用的付款类型,PayPal 在其设计中将该信息保密给付款人。他们是否使用特定的 Visa、MC、Amex、Discover、PayPal Credit、他们的余额或其他一些本地资金来源……这是买方的事;卖家只知道他们通过 PayPal 收到了付款。据说这是为了安全和隐私,这样即使任何卖家的网站遭到破坏,买家的账单信息也不会泄露。