Skip to main content
Every SWIFT payment status change - outbound and inbound - is delivered to you as a webhook. You never poll anything yourself. For payments you send, the platform follows them across the SWIFT network via the SWIFT Frontend API; for payments you receive, the status is driven by the confirmation flow. This page explains what each status means and which webhook events it produces. How webhooks are delivered - subscriptions, signature verification, retries - is covered once for all schemes in Webhooks Management.

How outbound statuses are determined

1

Payment is sent

Once the payment message is accepted by the SWIFT network, the payment moves to Sent to clear and you receive a webhook.
2

The platform tracks the payment

The platform continuously tracks the payment on the SWIFT network using the SWIFT Frontend API, identified by the payment’s UETR (Unique End-to-End Transaction Reference).
3

Statuses are pushed to you

Every status change - including the final outcome (Completed or Rejected) - is delivered as a Payment Status Change webhook.
The intermediate Accepted status is set when the debit is confirmed on the correspondent account statement. The final outcome comes from the SWIFT Frontend API tracking. Accepted is not guaranteed: if delivery is confirmed before the statement confirms the debit, the payment moves from Sent to clear straight to Completed.

Outbound statuses

Inbound statuses

Payments you receive move through a shorter lifecycle - which path they take depends on your confirmation mode and on how the payment settles (direct or via a cover).
Completed (directly on receipt)

Hold reasons

While an inbound payment sits in Accepted, the why is carried by its statusReason:
The webhook does not carry the hold reason - it only says Accepted. To distinguish a payment held for review from one awaiting a cover, fetch it via GET /v3/payments/{id} and read its statusReason.

Inbound status overview

Full flows with the confirmation messages sent back to the SWIFT network: Automatic confirmation / Manual confirmation.

Status-to-webhook map

Every status change of a SWIFT payment emits a Payment Status Change webhook. All SWIFT webhooks carry method=SWIFT.

What arrives when

Key payload fields

Webhooks are delivered with retries - treat them idempotently and upsert by trx_id + status. Cancellation progress arrives on a separate Payment Cancellation Status Change webhook.

Outbound payment flows

1

Create

You create the payment via the API. Status Created, webhook method=SWIFT, type=Payment.
2

Sent to clear

The message is forwarded to the SWIFT network and accepted for routing to the correspondent bank. Status Sent to clear.
3

Completed

Tracking via the SWIFT Frontend API confirms delivery to the beneficiary bank. Status Completed.
Created → Sent to clear → Completed

Status overview

API Reference

Get payment

GET /v3/payments/{id} - full payment details including statusReason

Next Steps

Cancel SWIFT payments

Stop a payment that should not go through

Statements

Reconcile with camt.052/053/054 statements
Last modified on August 5, 2026