API REFERENCE
Reversión de transacción
Parámetros
| Parameter | Type | Descripción | Obligatorio |
|---|---|---|---|
| data.tid | string | 设备的TID | ✓ |
| data.trade_id | string | YabandPay订单编号 | ✓ |
| data.request_id | string | 请求id需保持唯一,建议24以上位数字+字母 | ✓ |
Se aplica a pagos presenciales con POS
Esta API inicia a través de la nube la reversión de transacciones completadas correctamente.
La reversión de transacciones solo admite operaciones del día en curso y únicamente permite reversiones totales.
Para reversiones parciales o transacciones de días anteriores, utilice la API de reembolso.
Tras enviar una instrucción de reversión, el terminal POS muestra el proceso y el resultado final en tiempo real para que el comercio y el usuario puedan confirmar inmediatamente el estado de la reversión. For a silent reversal (without desplaying the process on the POS terminal), use the Cancelar pago API.
Antes de llamar a esta API, asegúrese de que el despositivo POS esté conectado y desponible para que la instrucción de reversión pueda entregarse y procesarse correctamente.
API URL (production): https://mapi.yabandpay.com/Payments
API URL (test): https://acc-mapi.yabandpay.com/Payments
| Parámetro | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| user | String | Device TID | Obligatorio |
| sign | String | Signature | Obligatorio |
| method | String | v3.POSReversal | Obligatorio |
| time | Long | Timestamp | Obligatorio |
- Parámetros
| Parámetro | Tipo | Descripción | Obligatorio |
|---|---|---|---|
| tid | string | Device TID | Obligatorio |
| trade_id | String | Número de pedido de YabandPay | Obligatorio |
| request_id | String | Unique request ID; a combination of digits and letters at least 24 caracteres es recommended | Obligatorio |
Ejemplo de firma:
Parámetros ordenados y concatenados en una cadena de consulta con formato de URL
"method=v3.POSReversal&request_id=a7z1lox4l6z6mdx1udgn5gtezasze1x0&tid=T125119061&time=1555498137&trade_id=4a49ffb3-a30f-ba92-9422-1969afb6f121&user=T125119061"
Firme la cadena A con secret_key
La firma resultante es:
"YOUR_SIGNATURE"
Ejemplo de solicitud:
{
"user": "T125119061",
"sign": "YOUR_SIGNATURE",
"method": "v3.POSReversal",
"time": 1555498137,
"data": {
"tid": "T125119061",
"trade_id": "4a49ffb3-a30f-ba92-9422-1969afb6f121",
"request_id": "a7z1lox4l6z6mdx1udgn5gtezasze1x0"
}
}
Ejemplo de respuesta:
{
"status": true,
"code": "200",
"data": {
"type": "payment",
"user": "T125119061",
"amount": "0.10",
"currency": "EUR",
"trade_id": "4a49ffb3-a30f-ba92-9422-1969afb6f121",
"description": "YabandPay test",
"order_id": "YOUR_ORDER_ID",
"createDate": "1706771212",
"demo": "test",
"transaction_id": "",
"state": "cancelled"
},
"message": ""}
Información adicional:
Resultado de la respuesta:
-
A successful request returns "status": true.
-
A failed request returns "status": false.
We strongly recommend using both order queries and asynchronous notifications to synchronize and update the payment status and keep payment information accurate in real time.
Códigos de respuesta:
| Status | Code | Message |
|---|---|---|
| true | 200 | |
| false | -3001 | Required field is missing |
| false | -3002 | duplicate request_id |
| false | -4111 | Exceed cancel window |
| false | -4112 | The transaction has been cleared cannot be cancelled |
| false | -4114 | The trade_id does not exist |
| false | -4115 | The transaction cannot be cancelled |
| false | -4116 | The transaction has been cancelled |
| false | -4117 | The transaction has been Expired |
