Skip to content

Transfer state change
Webhook

Request

Triggered every time a transfer's status is updated.

  • Event type: transfers#state-change
  • Profile level subscriptions: Supported
  • Application level subscriptions: Supported

For topup-to-balance transfers, transfers#state-change events are not triggered. To listen to these, subscribe to the balances#update event instead.

Events may not be delivered in the order they occurred. Use data.occurred_at to reconcile the order. See the Event ordering guide for details.

See the Webhooks guide for setup instructions, signature verification, and best practices.

Headers
X-Signature-SHA256string

RSA-SHA256 signature of the request body, Base64 encoded. Verify this against the Wise public key to ensure the request is authentic and has not been tampered with.

Example:t7FMhk3OARMgwqz0LJXO...
X-Delivery-Idstring, (uuid)

Unique identifier for this webhook delivery attempt.

Example:a1b2c3d4-e5f6-7890-abcd-ef1234567890
X-Test-Notificationboolean

Present with the value true if this is a test notification sent to verify your callback URL during subscription setup.

Example:true
Bodyapplication/json
schema_versionstring

Version of the event schema. Determined by the schema_version on your webhook subscription.

Value:"4.0.0"
Example:"4.0.0"
Discriminator
subscription_idstring, (uuid)

ID of the webhook subscription that triggered this event.

Example:"01234567-89ab-cdef-0123-456789abcdef"
event_typestring

Event type identifier

Example:"transfers#state-change"
sent_atstring, (date-time)

Timestamp when the event was sent.

Example:"2020-01-01T12:34:56.123Z"
dataobject
Payload
{ "schema_version": "4.0.0", "subscription_id": "01234567-89ab-cdef-0123-456789abcdef", "event_type": "transfers#state-change", "sent_at": "2020-01-01T12:34:56.123Z", "data": { "resource": { "type": "transfer", "id": 111, "profile_id": 222, "account_id": 333 }, "current_state": "processing", "previous_state": "incoming_payment_waiting", "occurred_at": "2020-01-01T12:34:56.789Z" } }

Responses

Return any 2xx status to acknowledge receipt of the event.

Bodyapplication/json
statusstring
Example:"ok"
Response
{ "status": "ok" }