Callback - Refund TXID Notification
After the BeneficiaryVASP executes an accepted refund and submits its transaction ID, GTR sends this callback to the OriginatorVASP with callbackType: 23.
Required implementation role: OriginatorVASP
- Your role: OriginatorVASP
- Refund sender: BeneficiaryVASP
- Your responsibility: Store the refund TXID and reconcile the returned assets and network fee.
{
"requestId": "beneficiary-exchange-550e8400-e29b-41d4-a716-446655440000",
"invokeVaspCode": "originator-vasp-code",
"originatorVasp": "originator-vasp-code",
"beneficiaryVasp": "beneficiary-vasp-code",
"callbackType": 23,
"callbackData": {
"refundBasicInfo": {"requestId": "beneficiary-exchange-550e8400-e29b-41d4-a716-446655440000"},
"blockchainTransaction": {
"network": "ETH", "ticker": "USDT", "txId": "0xrefund...32bc"
},
"refundFromAddress": {"address": "0x8ba1f109551bD432803012645Ac136ddd64DBA72", "tag": ""},
"refundValue": {"amount": "125.49", "gasFee": "0.01", "gasFeeTicker": "USDT"}
}
}
| Field | Description |
|---|---|
blockchainTransaction.txId | On-chain transaction ID of the refund. |
blockchainTransaction.network, ticker | Network and asset used for the refund. Refer to the Network List and Ticker List. |
refundFromAddress | Address and optional tag from which the BeneficiaryVASP sent the refund. |
refundValue.amount | Actual refunded amount denominated in the asset specified by blockchainTransaction.ticker, represented as a decimal string. |
refundValue.gasFee | Network fee paid, denominated in refundValue.gasFeeTicker and represented as a decimal string. |
refundValue.gasFeeTicker | Ticker in which the fee is denominated. Refer to the Ticker List. |
Validate the transaction using your normal blockchain reconciliation controls and associate it with refundBasicInfo.requestId. Acknowledge receipt using the standard callback response:
{"verifyStatus": 100000, "verifyMessage": "Refund TXID received", "data": null}