【问题标题】:paypal transaction id from express checkout来自快速结帐的贝宝交易 ID
【发布时间】:2021-12-15 22:18:54
【问题描述】:

我无法从 paypal ExpressCheckout 方法获取交易 ID。

 $provider = new ExpressCheckout;
 $response = $provider->getExpressCheckoutDetails($request->token);
 echo "<pre>";print_r($response);
Array
(
  [TOKEN] => EC-79454119W8713794B
  [BILLINGAGREEMENTACCEPTEDSTATUS] => 1
  [CHECKOUTSTATUS] => PaymentActionNotInitiated
  [TIMESTAMP] => 2021-11-01T04:14:23Z
  [CORRELATIONID] => f00ab9c2819b4
  [ACK] => Success
  [VERSION] => 123
  [BUILD] => 55938276
  [EMAIL] => john@abc.com
  [PAYERID] => 238MG2US77AQY
  [PAYERSTATUS] => unverified
  [FIRSTNAME] => john
  [LASTNAME] => doe
  [COUNTRYCODE] => US
  [ADDRESSSTATUS] => Confirmed
  [CURRENCYCODE] => USD
  [AMT] => 24.99
  [ITEMAMT] => 24.99
  [SHIPPINGAMT] => 0.00
  [HANDLINGAMT] => 0.00
  [TAXAMT] => 0.00
  [DESC] => Order #61 Invoice
  [INVNUM] => 61
  [NOTIFYURL] => https://example.com/ipn/notify
  [INSURANCEAMT] => 0.00
  [SHIPDISCAMT] => 0.00
  [INSURANCEOPTIONOFFERED] => false
  [L_NAME0] => Monthly Unlimited
  [L_QTY0] => 1
  [L_TAXAMT0] => 0.00
  [L_AMT0] => 24.99
  [PAYMENTREQUEST_0_CURRENCYCODE] => USD
  [PAYMENTREQUEST_0_AMT] => 24.99
  [PAYMENTREQUEST_0_ITEMAMT] => 24.99
  [PAYMENTREQUEST_0_SHIPPINGAMT] => 0.00
  [PAYMENTREQUEST_0_HANDLINGAMT] => 0.00
  [PAYMENTREQUEST_0_TAXAMT] => 0.00
  [PAYMENTREQUEST_0_DESC] => Order #61 Invoice
  [PAYMENTREQUEST_0_INVNUM] => 61
  [PAYMENTREQUEST_0_NOTIFYURL] => https://example.com/ipn/notify
  [PAYMENTREQUEST_0_INSURANCEAMT] => 0.00
  [PAYMENTREQUEST_0_SHIPDISCAMT] => 0.00
  [PAYMENTREQUEST_0_SELLERPAYPALACCOUNTID] => abc@gmail.com
  [PAYMENTREQUEST_0_INSURANCEOPTIONOFFERED] => false
  [L_PAYMENTREQUEST_0_NAME0] => Monthly Unlimited
  [L_PAYMENTREQUEST_0_QTY0] => 1
  [L_PAYMENTREQUEST_0_TAXAMT0] => 0.00
  [L_PAYMENTREQUEST_0_AMT0] => 24.99
  [PAYMENTREQUESTINFO_0_ERRORCODE] => 0
)

我需要交易 ID 才能退款。这就是为什么我需要交易 ID。 这是我正在尝试退款的功能

$response = $provider->refundTransaction($transactionid);

【问题讨论】:

    标签: php laravel-5 paypal paypal-subscriptions


    【解决方案1】:

    您将在执行 DoExpressCheckoutPayment API 调用后得到它。在此之前,我认为您无法获得交易 ID。你会得到这样的回应: doExpressCheckoutPayment:

    Array
    (
        [TOKEN] => EC-2FR88291S31672645
        [SUCCESSPAGEREDIRECTREQUESTED] => false
        [TIMESTAMP] => 2012-02-24T10:26:08Z
        [CORRELATIONID] => a95c7a9bb64b3
        [ACK] => Success
        [VERSION] => 84
        [BUILD] => 2571254
        [INSURANCEOPTIONSELECTED] => false
        [SHIPPINGOPTIONISDEFAULT] => false
        [PAYMENTINFO_0_TRANSACTIONID] => 2RN165632T770592L
        [PAYMENTINFO_0_TRANSACTIONTYPE] => expresscheckout
        [PAYMENTINFO_0_PAYMENTTYPE] => instant
        [PAYMENTINFO_0_ORDERTIME] => 2012-02-24T10:26:06Z
        [PAYMENTINFO_0_AMT] => 10.00
        [PAYMENTINFO_0_TAXAMT] => 0.00
        [PAYMENTINFO_0_CURRENCYCODE] => GBP
        [PAYMENTINFO_0_PAYMENTSTATUS] => Pending
        [PAYMENTINFO_0_PENDINGREASON] => authorization
        [PAYMENTINFO_0_REASONCODE] => None
        [PAYMENTINFO_0_PROTECTIONELIGIBILITY] => Eligible
        [PAYMENTINFO_0_PROTECTIONELIGIBILITYTYPE] => ItemNotReceivedEligible,UnauthorizedPaymentEligible
        [PAYMENTINFO_0_SECUREMERCHANTACCOUNTID] => WLC8CZSP2C5L8
        [PAYMENTINFO_0_ERRORCODE] => 0
        [PAYMENTINFO_0_ACK] => Success
    )
    

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 我正在从这个 doExpressCheckoutPayment 获取交易 ID。当我尝试通过退款功能通过此交易时,它会给我一条消息“您无权退款此交易”
      • 检查您是否有权限并且您正在通过主题。参考:stackoverflow.com/questions/45146366/…
      猜你喜欢
      • 2014-09-06
      • 2015-11-18
      • 1970-01-01
      • 1970-01-01
      • 2012-08-06
      • 2015-08-11
      • 2017-11-11
      • 2016-10-08
      • 2015-05-03
      相关资源
      最近更新 更多