POST
Refund request rejection webhook
Receive a notification at the original transaction’s
notifyUrl only when Onerway rejects the refund request during review. Do not use the example to determine whether a field is always returned or can be null. See Webhooks for handling and Create or cancel refund for requests.Signature coverage
Request signing guideAll payload fields are included in the signature except:
sign(legacy signature value)
Webhook payload fields
notifyTypeNotification category.
transactionIdOnerway refund transaction number. Return this value unchanged when acknowledging the notification.
merchantNoMerchant number assigned by Onerway.
merchantTxnIdMerchant transaction number for the refund. Onerway generates it if omitted from the refund request.
originMerchantTxnIdMerchant transaction number of the original payment.
responseTimeTime when Onerway generated the notification result, in
yyyy-MM-dd HH:mm:ss format.txnTimeZoneTime zone offset for the transaction times in the notification.
orderAmountTransaction amount reported in this notification, expressed in
orderCurrency as a decimal string.orderCurrencyCurrency of
orderAmount.statusResult of the rejected refund request:
F (failed).reasonResult details encoded as a JSON string containing
respCode and respMsg. When verifying the signature, use the field value as received, without parsing or reserializing its JSON content.signLegacy body signature, excluded from the signature input. It uses only the first enabled key. Verify the notification using the signature in the
X-Rh-Signature header.{
"notifyType": "REFUND_AUDIT",
"transactionId": "demo_transactionId",
"merchantNo": "demo_merchantNo",
"merchantTxnId": "demo_merchantTxnId",
"originMerchantTxnId": "demo_originMerchantTxnId",
"responseTime": "2026-09-14 00:35:26",
"txnTimeZone": "+08:00",
"orderAmount": "593.30",
"orderCurrency": "USD",
"status": "F",
"reason": "{\"respCode\": \"70002\", \"respMsg\": \"Unknown decline\"}",
"sign": "replace_with_signature"
}Acknowledgement
After receiving and accepting the notification, return HTTP 200 with
Content-Type: text/plain and the received transactionId unchanged in the response body. Without a successful response, Onerway retries at 30-minute intervals, up to 3 times.demo_transactionId