Slash Payment Processing is in beta and not enabled for all accounts. Contact
support@joinslash.com to get access.
pending
(nothing paid yet) through processing (a payment is in flight) to a
terminal succeeded, failed, or canceled.
Every product that collects a card payment creates one payment intent
under the hood:
- Checkout sessions —
POST /checkout-sessioncreates a payment intent alongside the session. The session is the buyer-facing wrapper (hostedurl, expiry, prefill config); the payment intent is the money movement inside it. These intents carry acheckoutSessionIdback reference. - Invoices — an invoice paid by card creates a payment intent when the
payer initiates the payment. These intents have no
checkoutSessionId.
Statuses
A checkout session’s
status is derived from its payment intent: the
session is complete exactly when the intent is succeeded, and an
open session with a processing intent is a payment awaiting
settlement.
Reading payment intents
UseGET /payment-intent to list
payment intents across products (newest first, filterable by status), and
GET /payment-intent/{id} to
poll a single one — status: "succeeded" is equivalent to the
checkout_session.completed webhook for fulfillment purposes.