> ## Documentation Index
> Fetch the complete documentation index at: https://docs.atum.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Destination finality

> How many confirmations Veri-Fill waits for on each destination chain before it signs a release, and how to read the live values.

This page is for [settlement operators](https://docs.atum.xyz/get-started/reference/glossary.md#settlement-operator).

After you pay a recipient, [Veri-Fill](https://docs.atum.xyz/api-reference/veri-fill/introduction.md) waits until your payout is final on the destination chain. What finality means on each chain, and how long it typically takes, is on [Finality](https://docs.atum.xyz/get-started/concepts/finality.md). Then it signs the release that lets you take the payer's funds from the [settlement vault](https://docs.atum.xyz/get-started/concepts/settlement-vault.md). Use the values on this page to decide how long to wait for that release.

Payers do not wait for the release. They see `finalizing` as soon as your payout is on chain, and `completed` once it is [final](https://docs.atum.xyz/get-started/concepts/finality.md).

## Read the live values

```bash theme={"theme":"github-dark"}
curl -sS https://veri-fill.production-testnet.atum.xyz/v1/finality-config
curl -sS https://veri-fill.production-mainnet.atum.xyz/v1/finality-config
```

The values differ between testnet and mainnet and can change, so read them from the endpoint instead of hard-coding them. Example entries:

```json theme={"theme":"github-dark"}
{
  "chains": [
    { "chain_id": "eip155:1", "finality": "finalized", "min_confirmations": 12, "block_time_ms": 12000, "time_to_final_ms": 1200000 },
    { "chain_id": "tron:mainnet", "finality": "depth", "min_confirmations": 19, "soft_blocks_at_tip": 2, "block_time_ms": 3000, "time_to_final_ms": 57000 },
    { "chain_id": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp", "commitment": "finalized", "block_time_ms": 400 }
  ]
}
```

### Confirmations

| Field | Meaning |
| - | - |
| `finality` | EVM and Tron: the rule your payout must meet. `depth`: `min_confirmations` blocks deep. `finalized`: also at or below the chain's finalized block. |
| `min_confirmations` | EVM and Tron: how many blocks deep your payout must be, counting the block that includes it. `1` means that block is enough. |
| `time_to_final_ms` | EVM and Tron: a conservative estimate of the time from your payout being mined to it meeting `finality`. |
| `commitment` | Solana: the commitment level the payout must reach (`confirmed` or `finalized`). |
| `block_time_ms` | Typical time between blocks. Use it to pace your polling. |
| `soft_blocks_at_tip` | Tron only: extra blocks to allow for when polling. Veri-Fill does not require them. |

Expected wait for the release on EVM and Tron: about `time_to_final_ms`.

## What has to fit before the deadline

Only the payout has to be on the destination chain before the payment's `fulfillment_deadline`. The confirmations above do not need to finish before it.

Everything before the payout does count: depositing the payer's funds in the settlement vault and waiting for that deposit to be confirmed on the source chain. Include it when you decide whether a deadline is long enough, and decline with `DEADLINE_TOO_SHORT` when it is not. See [Quote expiry and declines](https://docs.atum.xyz/settle-payments/price-holds-and-declines.md).

## Next steps

| Topic | Guide |
| - | - |
| How long your quotes stay valid, and when to decline | [Quote expiry and declines](https://docs.atum.xyz/settle-payments/price-holds-and-declines.md) |
| Veri-Fill endpoints | [Veri-Fill API](https://docs.atum.xyz/api-reference/veri-fill/introduction.md) |
| Run the reference agent | [Operating a settler agent](https://docs.atum.xyz/settle-payments/operating-a-settler-agent.md) |


## Related topics

- [Finality](https://docs.atum.xyz/get-started/concepts/finality.md)
- [Changelog](https://docs.atum.xyz/changelog.md)
- [Veri-Fill API](https://docs.atum.xyz/api-reference/veri-fill/introduction.md)
- [Quote expiry and declines](https://docs.atum.xyz/settle-payments/price-holds-and-declines.md)
- [Operating a settler agent](https://docs.atum.xyz/settle-payments/operating-a-settler-agent.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.