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

# One-off payments with Stripe

> Build one-time Stripe payment flows for products, services, event tickets, deposits, and bookings in Zite.

## How it works

Use one-off payments when a customer pays once for a product, service, booking, ticket, deposit, or invoice. Zite can build checkout, save the result, and give your team the tools to manage orders and support customers.

Common examples include:

* Event ticketing and registration
* Paid consultations, appointments, and bookings
* Service deposits or final payments
* Digital product purchases
* Internal invoice or payment request tools
* Customer support views for payments and refunds

## Recommended tables

Ask Zite to track the business record, not just the Stripe payment. An event platform might use an `Orders` table and an `Attendees` table.

Minimum recommended `Orders` fields include:

| Field                        | What to store                                                      |
| ---------------------------- | ------------------------------------------------------------------ |
| `order_id`                   | The Zite order or booking ID.                                      |
| `stripe_checkout_session_id` | The Stripe Checkout Session ID.                                    |
| `stripe_customer_id`         | The Stripe customer ID.                                            |
| `customer_email`             | The customer's email address.                                      |
| `product_or_service`         | The item, service, ticket, appointment, or invoice being paid for. |
| `amount_total`               | Total amount charged.                                              |
| `payment_status`             | Current payment status, such as `paid`, `unpaid`, or `refunded`.   |

You can ask Zite:

```text theme={null}
Create a one-off Stripe payment flow for event tickets. Add an Orders table
that tracks order ID, Stripe Checkout Session ID, customer ID, customer email,
event, amount, and payment status.
```

## Build a one-off payment flow

<Steps>
  <Step title="Connect Stripe">
    If Stripe is not connected yet, follow [How to Integrate with Stripe](/help/integrations/stripe).
  </Step>

  <Step title="Describe the payment">
    Tell Zite what the customer pays for, which checkout experience to use, and what should happen after payment.

    Ask for `Stripe Checkout` when you want Stripe-hosted checkout. Ask for `embedded checkout` when payment should appear inside your Zite app.

    ```text theme={null}
    Add Stripe Checkout for event tickets. Customers should choose an event,
    select the number of tickets, apply a coupon code if they have one, and
    pay with Stripe. After payment, save the order and show a confirmation
    page.
    ```
  </Step>

  <Step title="Store the payment result">
    Ask Zite to save the fields your team needs for operations, support, and reporting, such as event name, attendee count, coupon code, amount paid, refund status, or booking details.
  </Step>

  <Step title="Test checkout">
    Because Stripe connects to your live account, create a 100% off coupon code in Stripe and use it at checkout. Then confirm:

    * the payment appears in Stripe
    * the order appears in Zite
    * the confirmation page shows the right details
    * dashboards, emails, and support views update correctly
  </Step>

  <Step title="Publish">
    Publish the app, then run one complete path with the 100% off coupon.
  </Step>
</Steps>

## After checkout

Most one-off payment apps need a follow-up workflow. Zite can help you:

* Create an order, booking, attendee, or fulfillment record
* Send a confirmation email
* Update inventory, ticket availability, or appointment capacity
* Notify the team in Slack, Teams, email, or another connected tool
* Show revenue, refunds, and conversion performance in a dashboard

If your app needs to react to delayed payment outcomes, refunds, disputes, or payment events that happen after checkout, add a [Stripe webhook](/help/integrations/stripe-webhooks).

<p className="zite-related-topics-heading">Related topics</p>

<div className="zite-related-topics">
  <a href="/help/integrations/stripe">How to Integrate with Stripe</a>
  <a href="/help/integrations/stripe-webhooks">Stripe webhooks</a>
  <a href="/help/database/overview">Zite Database</a>
  <a href="/help/platform/workflows/overview">Workflows</a>
</div>
