eBay 订单 API 在沙盒环境中抛出错误

eBay Order API throwing error in sandbox environment

在ebay订单中API - initiateCheckoutSession(客人结账),添加信用卡信息returns错误。我正在沙盒环境中测试。

API : https://api.sandbox.ebay.com/buy/order/v1/guest_checkout_session/initiate 请求正文:

     {
 "creditCard":
   {
     "accountHolderName": "Frank Smith",
     "cardNumber": "5100000001598174",
     "cvvNumber": "012",
     "expireMonth": 10,
     "expireYear": 2019,
     "brand": "MASTERCARD",
     "billingAddress":
     {
       "firstName": "Frank",
       "lastName": "Smith",
       "addressLine1": "3737 Any St",
       "city": "San Jose",
       "stateOrProvince": "CA",
       "postalCode": "95134",
       "country": "US"
     }
 },
   "contactEmail": "fsmith1234@anymail.com",
   "contactFirstName": "Frank",
   "contactLastName": "Smith",
   "shippingAddress": {
     "recipient": "Frank Smith",
     "phoneNumber": "617 555 1212",
     "addressLine1": "3737 Any St",
     "city": "San Jose",
     "stateOrProvince": "CA",
     "postalCode": "95134",
     "country": "US"
   },
   "lineItemInputs": [ 
     {
       "quantity": 1,
       "itemId": "v1|110188913683|0"
     }
   ]
 }

回复:

 {
     "errors": [
         {
             "errorId": 15000,
             "domain": "API_ORDER",
             "category": "APPLICATION",
             "message": "There was a problem with an eBay internal system or process. Contact eBay developer support for assistance.",
             "parameters": [
                 {
                     "name": "code",
                     "value": "1042"
                 }
             ]
         }
     ]
 }

API 如果没有请求信用卡详细信息,则可以正常工作。有人可以帮忙吗?

根据 eBay 订单 API 文档,您的请求有效负载是好的,但如果您检查访客结账示例,它们在请求中没有信用卡对象。他们还提到,如果您在此请求中没有信用卡信息,那么您可以调用 updatePaymentInfoGuest 将信用卡信息添加到结帐会话中。

文档链接:

The inputs are the buyer's email, name, and address and the item IDs and quantity of each item. You can have a maximum of four individual items of any quantity in a checkout session. Each item is associated with a unique line item. Optionally, you can include the buyer's payment information. If you don't include this information in this call, you can use the updatePaymentInfoGuest call to add this information to the checkout session.

由于访客结帐响应没有太多关于错误的信息,我建议您尝试以下....

  1. 在没有信用卡信息的情况下呼叫客人结帐 (buy/order/v1/guest_checkout_session/initiate)
  2. 使用上面的结帐会话 ID (buy/order/v1/guest_checkout_session/{checkoutSessionId}/update_payment_info)
  3. 使用信用卡信息调用更新付款

结帐会话请求架构:

{
  "contactEmail": "string",
  "contactFirstName": "string",
  "contactLastName": "string",
  "creditCard": {
    "accountHolderName": "string",
    "billingAddress": {
      "addressLine1": "string",
      "addressLine2": "string",
      "city": "string",
      "country": "CountryCodeEnum : [AD,AE,AF,AG,AI,AL,AM,AN,AO,AQ,AR,AS,AT,AU,AW,AX,AZ,BA,BB,BD,BE,BF,BG,BH,BI,BJ,BL,BM,BN,BO,BQ,BR,BS,BT,BV,BW,BY,BZ,CA,CC,CD,CF,CG,CH,CI,CK,CL,CM,CN,CO,CR,CU,CV,CW,CX,CY,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,EH,ER,ES,ET,FI,FJ,FK,FM,FO,FR,GA,GB,GD,GE,GF,GG,GH,GI,GL,GM,GN,GP,GQ,GR,GS,GT,GU,GW,GY,HK,HM,HN,HR,HT,HU,ID,IE,IL,IM,IN,IO,IQ,IR,IS,IT,JE,JM,JO,JP,KE,KG,KH,KI,KM,KN,KP,KR,KW,KY,KZ,LA,LB,LC,LI,LK,LR,LS,LT,LU,LV,LY,MA,MC,MD,ME,MF,MG,MH,MK,ML,MM,MN,MO,MP,MQ,MR,MS,MT,MU,MV,MW,MX,MY,MZ,NA,NC,NE,NF,NG,NI,NL,NO,NP,NR,NU,NZ,OM,PA,PE,PF,PG,PH,PK,PL,PM,PN,PR,PS,PT,PW,PY,QA,RE,RO,RS,RU,RW,SA,SB,SC,SD,SE,SG,SH,SI,SJ,SK,SL,SM,SN,SO,SR,ST,SV,SX,SY,SZ,TC,TD,TF,TG,TH,TJ,TK,TL,TM,TN,TO,TR,TT,TV,TW,TZ,UA,UG,UM,US,UY,UZ,VA,VC,VE,VG,VI,VN,VU,WF,WS,YE,YT,ZA,ZM,ZW]",
      "county": "string",
      "firstName": "string",
      "lastName": "string",
      "postalCode": "string",
      "stateOrProvince": "string"
    },
    "brand": "string",
    "cardNumber": "string",
    "cvvNumber": "string",
    "expireMonth": "integer",
    "expireYear": "integer"
  },
  "lineItemInputs": [
    {
      "itemId": "string",
      "quantity": "integer"
    }
  ],
  "shippingAddress": {
    "addressLine1": "string",
    "addressLine2": "string",
    "city": "string",
    "country": "CountryCodeEnum : [AD,AE,AF,AG,AI,AL,AM,AN,AO,AQ,AR,AS,AT,AU,AW,AX,AZ,BA,BB,BD,BE,BF,BG,BH,BI,BJ,BL,BM,BN,BO,BQ,BR,BS,BT,BV,BW,BY,BZ,CA,CC,CD,CF,CG,CH,CI,CK,CL,CM,CN,CO,CR,CU,CV,CW,CX,CY,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,EH,ER,ES,ET,FI,FJ,FK,FM,FO,FR,GA,GB,GD,GE,GF,GG,GH,GI,GL,GM,GN,GP,GQ,GR,GS,GT,GU,GW,GY,HK,HM,HN,HR,HT,HU,ID,IE,IL,IM,IN,IO,IQ,IR,IS,IT,JE,JM,JO,JP,KE,KG,KH,KI,KM,KN,KP,KR,KW,KY,KZ,LA,LB,LC,LI,LK,LR,LS,LT,LU,LV,LY,MA,MC,MD,ME,MF,MG,MH,MK,ML,MM,MN,MO,MP,MQ,MR,MS,MT,MU,MV,MW,MX,MY,MZ,NA,NC,NE,NF,NG,NI,NL,NO,NP,NR,NU,NZ,OM,PA,PE,PF,PG,PH,PK,PL,PM,PN,PR,PS,PT,PW,PY,QA,RE,RO,RS,RU,RW,SA,SB,SC,SD,SE,SG,SH,SI,SJ,SK,SL,SM,SN,SO,SR,ST,SV,SX,SY,SZ,TC,TD,TF,TG,TH,TJ,TK,TL,TM,TN,TO,TR,TT,TV,TW,TZ,UA,UG,UM,US,UY,UZ,VA,VC,VE,VG,VI,VN,VU,WF,WS,YE,YT,ZA,ZM,ZW]",
    "county": "string",
    "phoneNumber": "string",
    "postalCode": "string",
    "recipient": "string",
    "stateOrProvince": "string"
  }
}

更新付款信息请求架构:

{ /* UpdatePaymentInformation */
    "creditCard": { /* CreditCard */
        "accountHolderName": "string",
        "billingAddress": { /* BillingAddress */
            "addressLine1": "string",
            "addressLine2": "string",
            "city": "string",
            "country": "CountryCodeEnum : [AD,AE,AF...]",
            "county": "string",
            "firstName": "string",
            "lastName": "string",
            "postalCode": "string",
            "stateOrProvince": "string"
        },
        "brand": "string",
        "cardNumber": "string",
        "cvvNumber": "string",
        "expireMonth": "integer",
        "expireYear": "integer"
    }
}