Payment intents represent a customer's intent to pay and track the payment lifecycle from creation through confirmation to completion. Create them in one of two modes: order-linked, where Flint derives the amount and commerce context from an order_id, or standalone, where you provide amount_money directly. For most checkout flows, order-linked payment intents are the right default: Flint keeps the amount in sync with the order's balance, including tip and tax changes after the intent is created.
A payment intent moves through statuses like requires_payment_method, requires_confirmation, requires_action, processing, and requires_capture before reaching a terminal state of succeeded, canceled, or expired. Standalone intents are confirmed through the API; order-linked intents are completed through the order payment flow or confirmed on the frontend in embedded checkout. An order can carry multiple payment intents (split payments); the order's pay flow confirms the attached intents against the outstanding balance.
If you are building browser checkout, start with the Embedded payments guide. For how payments relate to orders, see the Orders-first guide.
