Status Lifecycle
Every Travel Rule transaction carries an upstream transaction status, and every Travel Rule request carries a Shufti verification result. This page explains how a transaction moves between statuses in each direction, who moves it, and when the Shufti verification finalises.
Transaction Statuses
| Status | Meaning | Terminal? |
|---|---|---|
PENDING | Created and waiting for further processing. The initial status of an INCOMING transaction. | No |
DELIVERED | Travel Rule message delivered to the counterparty VASP. The initial status of an OUTGOING transaction. | No |
CONFIRMED | The beneficiary VASP reviewed and approved the transaction. | Yes |
DECLINED | The beneficiary VASP reviewed and rejected the transaction. status_reasoning explains why. | Yes |
FAILED | The transaction could not be processed because of a system or API error. | Yes |
CANCELLED | The transaction was cancelled. | Yes |
Creating a transaction is synchronous; counterparty updates arrive asynchronously. Once the Shufti verification result is final, later status changes do not change it.
OUTGOING Transactions
You are the originator VASP. Travel Rule uses the post-transaction model for outgoing transfers: the Travel Rule message is sent alongside the blockchain transfer, and the beneficiary VASP's response is not required before funds are released.
Create OUTGOING
│
▼
DELIVERED ──────► counterparty review (asynchronous)
│
┌─────────────┼─────────────┐
▼ ▼ ▼
CONFIRMED DECLINED CANCELLED
OUTGOINGtransactions are created with statusDELIVERED. This means the message was submitted, not that the beneficiary VASP confirmed it.- Any later response from the beneficiary VASP is applied asynchronously.
- Through Update Transaction you can only set
DELIVEREDorCANCELLEDon anOUTGOINGtransaction;CONFIRMEDandDECLINEDcome from the beneficiary VASP. You can also add data to it, such as thetransaction_hash.
INCOMING Transactions
You are the beneficiary VASP. INCOMING transactions are created with status PENDING; you review them and record your decision.
INCOMING transaction
│
▼
PENDING
│ your review
┌─────┼──────────┐
▼ ▼ ▼
DELIVERED CONFIRMED DECLINED
- Review the originator and beneficiary data, then call Update Transaction with
DELIVERED,CONFIRMEDorDECLINED. DECLINEDrequires a non-emptystatus_reasoning. See Declined Reasons.- Update Transaction applies to transactions created through your account with Create Transaction. A transaction that is not linked to your account returns
404.
Verification Result
The Shufti verification for a Travel Rule request stays pending until the transaction reaches a terminal status. The result is then sent to your callback_url.
| Transaction status | Verification result | Final callback |
|---|---|---|
PENDING | pending | — |
DELIVERED (OUTGOING) | accepted | verification.accepted |
DELIVERED (INCOMING) | pending | — |
CONFIRMED | accepted | verification.accepted |
DECLINED | declined | verification.declined |
CANCELLED | declined | verification.declined |
FAILED | declined | verification.declined |
An OUTGOING transaction is accepted as soon as it is DELIVERED. If the beneficiary VASP later declines or cancels it, the result stays accepted; the change is recorded on the transaction and, if status callbacks are enabled for your account, reported to you. Use the Read or Transaction Detail endpoints to check the current status at any time.
Wallet Verification Statuses
| Status | Meaning | Verification result |
|---|---|---|
pending | Wallet ownership check in progress. | pending |
verified | Wallet ownership confirmed. | accepted |
failed | Wallet ownership could not be confirmed. | declined |