# Payment Lifecycle Most transactions in Finix follow a similar pattern and lifecyle. The diagram below models out the Payment Lifecycle for Finix: ![Payments Lifecycle](/assets/payment-lifecycle.8ef60ba63110208b23d3dc32cec8b2610910ffebbcd1ca62507773b5a2912b2e.28b10c14.png) 1. Buyer requests to [make a payment](/guides/online-payments/online-payments-quickstart#making-payments-via-api/) with seller. 2. The platform collects the buyers information and creates an `Identity` to represent the buyer in Finix. 3. The platform collects the buyer's payment information and creates a `Payment Instrument` to represent the payment method used by the buyer to complete the payment. Once created, Finix notifies the seller with: > - A webhook which only gets sent when a `Payment Instrument` gets created from a [bank account](/additional-resources/developers/webhooks/webhook-events#payment-instrument-created-bank-account), [debit or credit card](/additional-resources/developers/webhooks/webhook-events#payment-instrument-created-card). - A payment instrument entry on the `Payment Instruments` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard). 4. The platform creates an `Authorization` to reserve the funds on the `Payment Instrument` to be captured (i.e. debited) at a later date, usually within seven days. > - An authorization entry also gets added on the `Authorizations` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard). 5. If the `Authorization` is successful, `Authorization#state` gets updated to `SUCCEEDED` and `Authorization#expires_at` gets updated with a timestamp. The `Authorization` entry on the `Authorizations` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard) also gets updated. > - If the `Authorization` fails, `Authorization#state` gets updated to `FAILED.` The `Authorization` entry on the `Authorizations` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard) also gets updated. To proceed, the platform needs to submit the `Authorization` again. 6. The platform captures the `Authorization`. > - A webhooks gets sent when the [`Authorization` gets captured](/additional-resources/developers/webhooks/webhook-events#authorization-captured). - The authorization entry gets updated on the `Authorizations` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard). 7. Finix creates a `Transfer` to debit and move funds. > - The `id` of the `Transfer` is available in the `Authorization` captured webhook. - A `transaction` entry gets added on the `Transactions` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard). 8. When funds get debited, the `Transfer` gets updated with a timestamp in `Transfer#ready_to_settle_at`. > - A webhooks gets sent when the [`Transfer` is `ready_to_settle`](/additional-resources/developers/webhooks/webhook-events#transfer-ready-to-settle-5). - The transaction entry gets updated on the `Transactions` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard). 9. Once the timestamp in `Transfer#ready_to_settle_at` passes, the `Transfer` will appear in the next `Settlement` that closes and requires approval. > - A webhooks gets sent when a [`Settlement` is ready and waiting for your approval](/additional-resources/developers/webhooks/webhook-events#authorization-created). - An settlement entry also gets added on the `Settlements` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard). 10. Once the `Settlement` is approved, a funding `Transfer` gets created to credit funds to the seller. > - The settlement entry also gets updated on the `Settlements` tab of the [Finix Dashboard](/guides/managing-operations/finix-dashboard). 11. When the funding `Transfer` gets updated to `SUCCEEDED`, the seller can expect funds to hit their bank account in 5-7 business days (depending on their bank). > - See [Managing Failed Payouts](/guides/platform-payments/seller-payouts/managing-failed-payouts) for details on how to handle a funding `Transfer` that gets updated to `FAILED.` - A webhooks gets sent when the [`Transfer` gets updated](/additional-resources/developers/webhooks/webhook-events#transfer-updated-9).