Checkout

Create checkouts, follow their status, and charge a buyer's saved instrument or a payment terminal.

A checkout is a request for one payment from a buyer. Create it with the amount and the buyer's email, then let the buyer pay through the hosted page (links.checkout), the embeddable page (links.embeddable), or the Payin SDK. You can also charge a saved instrument of the buyer, or send the checkout to a connected terminal so the buyer pays in person. Checkout IDs start with S-.

Each charge attempt is a transaction. A charge is a sale: there is no separate authorization and capture. Confirm the result on your server with the checkout-status-changed webhook event or by reading the checkout.

StatusMeaning
PENDINGCreated and waiting for payment.
PROCESSINGA charge attempt is in progress.
PAIDThe buyer paid. Final.
FAILEDThe last charge attempt failed. The hosted page and the SDK do not offer the buyer another attempt; create a new checkout for that. You can charge it again yourself with Charge Checkout until it expires.
EXPIREDThe checkout passed expiresAt without being paid. Final.
UNKNOWNThe charge was never confirmed as succeeded or failed. It cannot be charged again. Do not charge the buyer again; contact Payment Labs. Final.
Transaction statusMeaning
PENDINGThe charge attempt is being processed.
PENDING_3DSWaiting for the buyer to complete 3D Secure authentication.
SUCCEEDEDThe charge succeeded.
FAILEDThe charge failed, or was never confirmed. The checkout's errorTransaction says why.

See Payins Overview, Hosted Checkout Page and Iframe, and Checkout Statuses and Failure Reasons.