On the transactions page, you see a list of transactions, ordered by date, with the latest first. The last column shows the status of the transaction.
Successful transactions, signed by Utila wallets, end up in a “Completed” status. If you click the transaction, you'll see the timeline. This shows all the statuses the transaction passed through. Usually a transaction is completed so fast that you don't actually see these statuses on the list.
This is particularly evident in scenarios involving Anti-Money Laundering (AML) policy enforcement, webhook events for non-AML systems, and vault-to-vault transfers, where the transaction completion flow might show variations in statuses or require additional context.
Transaction statuses
The statuses vary depending on the scenario, such as AML policy use, system webhook conditions, and intra-vault transfers.
Following are the transaction statuses, organized by their general applicability and specific operational scenarios.
Status | Description | Applicability |
Pending approval | The transaction requires approval by the admin quorum | General |
Awaiting AML policy check | The transaction is waiting for the AML policy screening. Relevant for outgoing transactions and only if if AML is configured. | AML-specific |
Declined by AML policy | Outgoing transaction blocked by AML policy. | AML-specific |
Approved | The transaction passed transaction policy screening and is ready to be signed. | General |
Awaiting signature | The transaction is approved and ready to be signed. | General |
Signed | The transaction is signed but not yet published. | General |
Pending publish | The transaction has been sent to the publishing queue. | General |
Published | The transaction has been published to the blockchain. | General |
Dropped | Another transaction using the same nonce has already been confirmed on-chain, so this transaction will never be confirmed. This applies to nonce-based blockchains such as EVM networks. | General |
Mined | The transaction has been included in a block. | General |
Failed | The transaction has been published but not included in a block. | General |
Confirmed | The transaction has been confirmed by multiple blocks in the blockchain. | General |
Expired | The transaction was not signed within 72 hours and has by default expired. Users that create transactions via API can override this and set an expiration time of their choice. | General |
Further context-specific statuses, such as for webhook events in non-AML systems or intra-vault transfers, might differ depending on specific use cases.
Following is a representation of the flow of a transaction. It shows the various decision points and results.

