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

# Checkout Overview

> Accept card payments on your site with Slash's embeddable hosted checkout.

<Info>
  Slash Payment Processing is in beta and not enabled for all accounts. Contact
  [support@joinslash.com](mailto:support@joinslash.com) to get access.
</Info>

Slash Checkout lets you accept card payments — including Apple Pay and
Google Pay — on your own site by embedding a Slash-hosted checkout in an
iframe. You create a checkout session server-side with your API key, then
mount its `url` with the [`@slashfi/checkout-js`](/docs/checkout/embedded-checkout)
SDK. Slash renders the payment form, processes the charge, and notifies
your backend when it settles.

Slash Checkout is available to accounts enabled for hosted card
payments. If payment processing is not enabled for your account (or your
account is on a processing setup that doesn't support hosted checkout),
`POST /checkout-session` returns a `400`.

## How it works

1. Your backend calls `POST /checkout-session` and gets back a hosted `url`.
2. Your page mounts that `url` with the SDK; the buyer pays in the embed.
3. Slash settles the charge, marks the session `complete`, and sends a
   `checkout_session.completed` webhook.
4. Your backend fulfills the order from that webhook.

## Fulfillment

Fulfill orders from the `checkout_session.completed` webhook, or by
reading `GET /checkout-session/{id}` and checking for `status: "complete"`.
The SDK's `onComplete` callback is a browser signal for updating the UI —
a buyer can forge it, so never grant goods or services on that alone.

See the [Quickstart](/docs/checkout/quickstart) to accept your first
payment.
