# Checkout Pages ![Checkout Pages](/assets/checkout-page.b7cbd6b27e3a5eec96fc21e705150b0e4599adb9b81157df454a3845262ef1e2.fec90461.svg) Using Checkout Pages you can quickly accept payments from buyers with minimal development work. Checkout pages are a low-code solution that enables you to create a customizable payment page where buyers can easily enter their payment details and submit a payment on both desktop and mobile devices. Checkout pages are only available via the Finix API. If you want to create a similar experience on the Dashboard, look into our [Payment Links](/guides/online-payments/low-code-no-code/payment-links). ## Buyer Experience 1. When your buyers are ready to complete their payment, create a `checkout_form`. 2. The `checkout_form` provides a URL you can send to buyers to redirect them to a Finix checkout form. 3. Buyers enter their payment details into the checkout form and complete their payment. ![Checkout Form](/assets/checkout-form.4796031cb3a92fb2abd5624a2d33e3d329de7c0db009663ce038598fad762b75.08ff7529.png) ## Supported Payment Methods Checkout pages support: - Card payments - Bank account payments (ACH in USA) For more details about ACH payments, see [ACH Direct Debits](/guides/online-payments/bank-payments/ach-direct-debits). ## Checkout Form Expiration By default, `checkout_forms` expire after 10 minutes. You can extend the expiration date to a maximum of 3 weeks. Please note the expiration time of the `checkout_form` must be less than your cart expiration time; otherwise, timeout issues can come up for your buyers when submitting a payment. `checkout_forms` can only be used once. After a buyer makes a successful payment, the `checkout_form` cannot be used again. If a buyer returns to a successful `checkout_form` link, they'll see a *You have already paid* message and/or get redirected to a new page. ## Finix API To create a checkout form, include: - The `ID` of the `Merchant` that the payment will be created under. - The amount of the transaction. - Any additional URLs (terms of service required). - Allowed payment methods. At this time, only `APPROVED` `Merchants` with one of the following `processors` can create checkout pages: - `DUMMY_V1` - `LITLE_V1` - `FINIX_V1` ```shell Checkout Form Request curl https://finix.sandbox-payments-api.com/checkout_forms \ -H "Content-Type: application/json" \ -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e \ -X POST \ -d '{ "merchant_id": "MUucec6fHeaWo3VHYoSkUySM", "payment_frequency": "ONE_TIME", "is_multiple_use": false, "allowed_payment_methods": ["PAYMENT_CARD"], "nickname": "string", "items": [ { "image_details": { "primary_image_url": "https://images.unsplash.com/photo-1511499767150-a48a237f0083?q=80&w=2980&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D", "alternative_image_urls": [ "https://google.com/image1", "https://google.com/image2" ] }, "description": "These are cool sunglasses", "price_details": { "sale_amount": 4000, "currency": "USD", "price_type": "PROMOTIONAL", "regular_amount": 5000 }, "quantity": "1" } ], "buyer_details": { "first_name": "Oscar", "last_name": "Barillas", "email": null, "shipping_address": null, "billing_address": null, "phone_number": null }, "amount_details": { "amount_type": "FIXED", "total_amount": 5418, "currency": "USD", "min_amount": null, "max_amount": null, "amount_breakdown": { "subtotal_amount": 3994, "shipping_amount": 995, "estimated_tax_amount": 429, "discount_amount": "1000", "tip_amount": "1000" } }, "branding": { "brand_color": "#fbe5d0", "accent_color": "#ff4838", "logo": "https://s3.amazonaws.com/customer-uploaded-assets-prod/04-12-2023-05_13_37_ACME_logo-01%20%281%29.png", "icon": "https://s3.amazonaws.com/customer-uploaded-assets-prod/04-12-2023-05_13_37_ACME_logo-01%20%281%29.png" }, "additional_details": { "collect_name": true, "collect_email": true, "collect_phone_number": true, "collect_billing_address": true, "collect_shipping_address": true, "success_return_url": "https://www.example.com/success/123rw21w.html ", "cart_return_url": "https://www.example.com/my_cart.html", "expired_session_url": "https://example.com/error.html ", "terms_of_service_url": "https://example.com/terms_of_service.html ", "expiration_in_minutes": 57680 } }' ``` ```json Checkout Form { "id": "checkout_form_cgiWUmK32ssj1nsuqQsVK", "created_at": "2024-10-18T03:52:54.321458Z", "updated_at": "2024-10-18T03:52:54.321458Z", "merchant_id": "MUucec6fHeaWo3VHYoSkUySM", "application_id": "APgPDQrLD52TYvqazjHJJchM", "payment_frequency": "ONE_TIME", "allowed_payment_methods": ["PAYMENT_CARD"], "nickname": "string", "state": "ACTIVE", "items": [ { "image_details": { "primary_image_url": "https://images.unsplash.com/photo-1511499767150-a48a237f0083?q=80&w=2980&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D", "alternative_image_urls": [ "https://google.com/image1", "https://google.com/image2" ] }, "description": "These are cool sunglasses", "price_details": { "sale_amount": 4000, "currency": "USD", "price_type": "PROMOTIONAL", "regular_amount": 5000 }, "name": null, "quantity": 1 } ], "buyer_details": { "identity_id": null, "first_name": "Oscar", "last_name": "Barillas", "email": null, "phone": null, "billing_address": null, "shipping_address": null }, "amount_details": { "amount_type": "FIXED", "total_amount": 5418, "currency": "USD", "min_amount": null, "max_amount": null, "amount_breakdown": { "subtotal_amount": 3994, "shipping_amount": 995, "estimated_tax_amount": 429, "discount_amount": 1000, "tip_amount": 1000 } }, "branding": { "brand_color": "#fbe5d0", "accent_color": "#ff4838", "logo": "https://s3.amazonaws.com/customer-uploaded-assets-prod/04-12-2023-05_13_37_ACME_logo-01%20%281%29.png", "icon": "https://s3.amazonaws.com/customer-uploaded-assets-prod/04-12-2023-05_13_37_ACME_logo-01%20%281%29.png", "logo_alternative_text": null, "button_font_color": null }, "additional_details": { "collect_name": true, "collect_email": true, "collect_phone": false, "collect_billing_address": true, "collect_shipping_address": true, "success_return_url": "https://www.example.com/success/123rw21w.html ", "cart_return_url": "https://www.example.com/my_cart.html", "expired_session_url": "https://example.com/error.html ", "terms_of_service_url": "https://example.com/terms_of_service.html ", "expiration_in_minutes": 57680, "send_receipt": false, "receipt_requested_delivery_methods": [] }, "link_url": "https://link.sandbox-payments-checkout.com/fLnady", "link_expires_at": "2024-11-27T05:12:54.177946Z", "tags": {}, "_links": { "self": { "href": "https://finix.sandbox-payments-api.com/checkout_forms/checkout_form_cgiWUmK32ssj1nsuqQsVK" } } } ``` ### Checkout Form States When a `checkout_form` is *successful*, the `state` of the checkout form will update to `COMPLETED`. If a `checkout_form` is *unsuccessful*, the buyer is taken back to the checkout form to try submitting payment details again. The `checkout_form#state` will remain `ACTIVE` until the form expires or gets deactivated. ## Successful Payments When a buyer successfully submits a `checkout_form`, the `state` of the `checkout_form` updates to `COMPLETED`. ## Terms of Service You must include a URL to your terms of service when creating a `checkout_form`. You must include your terms and services with every `checkout_form` you create. Your terms and conditions should contain the following information: ### General Terms - A description of the product or service that you are selling or offering. - Any third parties involved in the product you are selling or offering. - Reference to which governing law applies to you and your buyers. ### Privacy Policy - Any data you are storing. - Any data you are sharing with third parties. - Your cookie policy. ### Shipping and Delivery Information - Expected delivery and shipping timelines - Any restrictions to where you can ship or deliver your goods or services ### Refunds and Cancellations - Your general refund policies (e.g., 10 days, 30 days, no refunds allowed). - Directions on submitting a refund request or canceling a subscription. ### Contact Information You should include general contact information such as: - Business name - Doing Business as - Support Email address - Support Phone number