This endpoint can be implemented by the partner to receive real-time transaction status updates from Payward.
When a Ramp transaction is created or changes state, Payward sends a POST request to the partner’s configured webhook URL with transaction details and status information.
All webhook requests include an X-Signature header containing an HMAC-SHA256 signature of the request body. Partners should verify this signature to ensure integrity of the request.
Contact your Payward integration point of contact to securely exchange the HMAC secret key for signature verification.
X-Signature header valueX-Signature header value (hex-encoded)import crypto from 'crypto';
// This function will return true/false if the signature matches
const verifySignature = (signature: string, secret: string, body: string) => {
const hash = crypto.createHmac('sha256', secret).update(body).digest('hex');
return (signature === hash);
};
Payward will automatically retry failed webhook deliveries using exponential backoff. Partners should respond with HTTP 2xx status to acknowledge receipt. Non-2xx responses will trigger retries.
The status field provides a simplified transaction state:
new - Transaction has been initiatedpaid - Payment has been receivedpending - Transaction is being processedcompleted - Transaction successfully completedfailed - Transaction failedcanceled - Transaction was canceledcurl --request POST \
--url https://your-webhook-endpoint.com/webhooks/payward/transaction-update \
--header 'Content-Type: <content-type>' \
--header 'X-Signature: <x-signature>' \
--data '
{
"status": "completed",
"payload": {
"transaction_id": "<string>",
"in_amount": "10.00",
"in_asset": "USD",
"out_asset": "BTC",
"out_amount": "0.002813",
"in_method": "creditCard",
"out_method": "Bitcoin",
"timestamp": "2025-11-07T14:35:57.391208753Z",
"wallet": "<string>",
"transaction_hash": "a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456",
"external_transaction_id": "<string>",
"external_user_id": "<string>",
"external_partner_id": "<string>",
"external_metadata": "<string>",
"affiliate_fee": "0.50"
},
"raw_status": {},
"timestamp": "2025-11-07T14:35:57.391209043Z"
}
'Documentation Index
Fetch the complete documentation index at: https://kraken-sandbox.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
HMAC-SHA256 signature of the request body (hex-encoded). Use this to verify the webhook authenticity.
"35d050c7eb06bf050fd676db4e6c79f5e90abef9b2ae8aa2dac23302998db5cf"
application/json Webhook request sent by Payward when a Ramp transaction status changes.
Transaction status:
new - Transaction has been initiatedpaid - Payment has been receivedpending - Transaction is being processedcompleted - Transaction successfully completedfailed - Transaction failedcanceled - Transaction was cancelednew, paid, pending, completed, failed, canceled "completed"
Transaction payload containing detailed information about the Ramp transaction.
Show child attributes
Object containing internal status information for more granular transaction tracking.
Timestamp when this webhook request was created (ISO-8601 format). Use this for replay attack detection.
"2025-11-07T14:35:57.391209043Z"
Webhook received and processed successfully. Return any 2xx status code to acknowledge receipt.
curl --request POST \
--url https://your-webhook-endpoint.com/webhooks/payward/transaction-update \
--header 'Content-Type: <content-type>' \
--header 'X-Signature: <x-signature>' \
--data '
{
"status": "completed",
"payload": {
"transaction_id": "<string>",
"in_amount": "10.00",
"in_asset": "USD",
"out_asset": "BTC",
"out_amount": "0.002813",
"in_method": "creditCard",
"out_method": "Bitcoin",
"timestamp": "2025-11-07T14:35:57.391208753Z",
"wallet": "<string>",
"transaction_hash": "a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456",
"external_transaction_id": "<string>",
"external_user_id": "<string>",
"external_partner_id": "<string>",
"external_metadata": "<string>",
"affiliate_fee": "0.50"
},
"raw_status": {},
"timestamp": "2025-11-07T14:35:57.391209043Z"
}
'