Skip to navigation

Webhook Notification - Transaction Success

View as Markdown

Example webhook notification sent by SQRIL when a transaction is finalized as success.

When it is sent:

  • After inbound webhook processing marks the transaction successful.
  • Sent to all active webhook configs whose event filter matches transaction.success.

Payload notes:

  • Required fields: tx_id, status (SUCCESS).
  • Optional fields: amount, fee, percentage_fee, fixed_fee, sender, recipient.
  • Fee fields are taken from transaction data and formatted for API/webhook output.
  • Sender/recipient objects are included only when those details are available on transaction qr_data.

Headers:

  • Content-Type: application/json
  • User-Agent: SQRIL-Webhook/<APP_VERSION>
  • X-SQRIL-Signature only when a webhook secret is configured.

Verifying X-SQRIL-Signature:

X-SQRIL-Signature = base64(HMAC-SHA256(webhook_secret, exact_raw_request_body))

Use the exact raw HTTP body (do not re-serialize JSON). Encoding is base64, not hex. See the Account Webhook Notifications folder description for a Node.js verification example.

Authentication

AuthorizationBasic

Basic Auth: base64(client_id:client_secret)

Headers

X-SQRIL-SignaturestringOptional

base64(HMAC-SHA256(webhook_secret, exact_raw_request_body)). Included only when webhook secret is configured. Verify against the raw body; do not re-serialize JSON.

Request

This endpoint expects an object.
tx_idstringRequired
statusenumRequired
Allowed values:
amountdoubleOptional
feedoubleOptional
percentage_feedoubleOptional
fixed_feedoubleOptional
sendermap from strings to anyOptional
recipientmap from strings to anyOptional

Response

OK
receivedbooleanOptional
messagestringOptional