有线卡退款申请

Wirecard refund request

我正在尝试集成有线卡支付,但遇到退款交易问题。

使用测试用户名“70000-APILUHN-CARD”和密码“8mhwavKVb91T”,我已经创建了支付处理并且可以看到它是成功的。但是当谈到退款时,我得到 "405 method not allowed" 结果。

因此付款请求如下所示:

POST https://wpp-test.wirecard.com/api/payment/register

使用 auth header 包括编码 username/password、content-type header 和 body:

{
"payment" :
{
"merchant-account-id" : 
{
    "value" : merchantId
},
"request-id" : generatedRequestId,
"transaction-type" : "auto-sale",
"requested-amount" : 
{
  "value" : 1,
  "currency" : "EUR"
},
"payment-methods" : 
{
  "payment-method" : 
  [ 
    {"name" : "creditcard"} 
  ]
}
},
"options" :
{
"mode" : "seamless",
"frame-ancestor" : ancestorURL
}
}

验证后我可以检查该交易是否成功完成并且一切正常,所以我尝试使用相同的 headers:

提出退款申请
POST https://api-test.wirecard.com/engine/rest/merchants/{merchantId}/payments/{transactionId}

和body:

{
   "payment":{
  "merchant-account-id":{
 "value":merchantId
  },
  "request-id":generatedRequestId,
  "requested-amount":{
     "value":1,
     "currency":"EUR"
  },
  "payment-methods":{
     "payment-method":[
        {
           "name":"creditcard"
        }
     ]
  },
  "card-token":{
     "token-id":"4819253888096002"
  },
  "card":{
     "expiration-month":"1",
     "expiration-year":"2023",
     "card-type":"visa"
  },
  "parent-transaction-id": parentTransactionId,
  "transaction-type":"refund-request"
   },
   "options":{
  "mode":"seamless",
  "frame-ancestor":ancestorURL
   }
}

其中关于card/card-token/etc的所有数据都是从事务状态请求中获取的。

我的退款申请是否有任何错误,或者我应该执行一些额外的步骤?

付款和退款申请中存在一系列错误:

  • 付款请求需要有 "transaction-type" : "purchase" 而不是 "transaction-type" : "auto-sale"
  • 退款请求应包含 "transaction-type":"refund-purchase" 而不是 "transaction-type": “refund-request”
  • 还应将退款请求发送至 URL:"https://api-test.wirecard.com/engine/rest/payments/"

(来自线卡支持回答)