Paypal智能支付结账 - 获取使用的支付类型

问题描述 投票:1回答:1

我使用智能支付按钮(https://developer.paypal.com/docs/checkout/#)整合了新的paypal结账订单。它工作得很好,允许我让用户使用信用卡或SEPA付款而无需PayPal帐户:

paypal.Buttons({
  // ...
  createOrder(data, actions) {
},
  // ...
  onApprove(data, actions) {
  // data.orderID available here

现在,在用户的订单概述中,我想显示使用了哪种付款方式,而不仅仅是他们使用paypal付款给我。然而,我找不到使用@paypal/checkout-server-sdkpaypal-rest-sdk获取信息的方法,因为我所有的都是CheckoutOrderCapture对象。

客户端的orderID可以在我的后端使用以获取订单详细信息:

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也没有帮助。它很光秃,并没有提供订单没有告诉我的任何信息。没有链接到任何地方。 captureId不允许我搜索交易或付款。

如果我登录沙箱卖家帐户,订单不会显示使用的付款方式。这些信息刚丢失了吗?或者有办法检索它吗?

谢谢!

javascript paypal paypal-sandbox paypal-rest-sdk
1个回答
2
投票

对于此付款,2GP872418N1179401是卖家帐户中的PayPal交易ID。这是您应该在捕获完成时在您的企业会计数据库中记录的ID,因为您可以在以后的几年内在卖家(沙盒。)paypal.com帐户和报告中引用它。

顶级6CC44267CA709615A更短暂,我相信这是您开始时结账的订单ID,因此它仅用于支付审批。我不确定它到期的时间到期但你应该只保留一段时间用于调试目的,它没有业务/会计价值。

至于找出使用何种类型的付款,PayPal会在付款人的设计中将该信息保密。他们是否使用特定的Visa,MC,Amex,Discover,PayPal Credit,他们的余额或其他一些本地资金来源....这是买方的业务;所有卖家都知道他们是通过PayPal收到付款的。据说这是为了安全和隐私,因此如果任何卖方的网站遭到入侵,买方的账单信息就不会泄露。

© www.soinside.com 2019 - 2024. All rights reserved.