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

# How to Integrate with Stripe

> Connect Stripe to read commerce data, take payments, and build dashboards and support tools in Zite.

<iframe src="https://www.youtube.com/embed/Gx6zx4Rr2uw" title="Stripe integration overview" frameborder="0" className="w-full aspect-video rounded-xl" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowFullScreen />

## How it works

With Stripe connected, you can:

* Read customers, payments, refunds, invoices, products, prices, and subscriptions
* Create checkout flows for products, services, tickets, memberships, and deposits
* Save Stripe data to your Zite Database for operations, support, and reporting
* Build support views and revenue dashboards
* Keep subscription status current with [webhooks](/help/integrations/stripe-webhooks)

<Note>
  Stripe connects through OAuth to the Stripe account you choose. This connects your main Stripe account, not a separate sandbox account.
</Note>

## Connect Stripe

<Steps>
  <Step title="Ask Zite to connect Stripe">
    In chat, describe what you want to build with Stripe or click the `plug icon` <Icon icon="plug" />.

    For example:

    ```text theme={null}
    Connect this app to Stripe so we can sell event tickets, track attendees,
    manage customer payment questions, and report revenue by event.
    ```

    <Frame>
      <img src="https://mintcdn.com/zite/P6ByF29dGP4M78NQ/help/images/stripe/connect-stripe.webp?fit=max&auto=format&n=P6ByF29dGP4M78NQ&q=85&s=7ca84046fe4644c54da81af624eef9bc" alt="Zite suggesting Stripe as an integration to connect" style={{ width: "100%" }} width="3000" height="2000" data-path="help/images/stripe/connect-stripe.webp" />
    </Frame>
  </Step>

  <Step title="Authorize in Stripe">
    Zite sends you to Stripe's OAuth flow. Sign in if prompted, choose the Stripe account to connect, review the access request, and approve it.

    <Frame>
      <img src="https://mintcdn.com/zite/P6ByF29dGP4M78NQ/help/images/stripe/stripe-connection.webp?fit=max&auto=format&n=P6ByF29dGP4M78NQ&q=85&s=c6592b355d2f77aeadc4b9246eba6fe8" alt="Stripe authorization screen for selecting the account to connect to Zite" style={{ width: "100%" }} width="2571" height="1596" data-path="help/images/stripe/stripe-connection.webp" />
    </Frame>
  </Step>

  <Step title="Describe the commerce flow">
    Tell Zite what customers buy, what should happen after payment, and what your team needs to manage afterward.

    For one-off payments:

    ```text theme={null}
    Add Stripe Checkout for event tickets. Save the customer, event, ticket
    quantity, amount paid, coupon code, payment status, and Stripe payment ID
    to the Orders table.
    ```

    For subscriptions:

    ```text theme={null}
    Add a monthly subscription flow for members. Save the Stripe customer ID,
    subscription ID, plan, status, current period end, and latest invoice ID.
    Show active members in the admin dashboard.
    ```
  </Step>

  <Step title="Choose checkout">
    Ask for `Stripe Checkout` when you want a Stripe-hosted page. Ask for `embedded checkout` when payment should happen inside your Zite app.
  </Step>

  <Step title="Test the flow">
    Because Stripe connects to your live account, create a 100% off coupon code in Stripe and use it at checkout. This lets you test the full flow without charging your card.

    Confirm the payment appears in Stripe and that Zite stores the fields your app needs.
  </Step>

  <Step title="Publish">
    Click `Publish` in the upper right corner and [**share**](/help/platform/access/share-to-web) your app.

    After publishing, test one complete customer path: checkout, confirmation, database record, dashboard update, and any customer or team notification.
  </Step>
</Steps>

## Embedded checkout vs Stripe-hosted checkout

Stripe can support one-time payments and subscriptions in either hosted or embedded flows. In these docs, `Stripe Checkout` means the hosted Stripe page. Ask for `embedded checkout` when payment should stay inside your app.

| Checkout type              | How it feels                                                         | Best for                                                                                                              |
| -------------------------- | -------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| **Embedded checkout**      | The customer pays inside your Zite app.                              | Apps where checkout should sit next to order details, event information, account setup, or an internal approval flow. |
| **Stripe-hosted checkout** | The customer pays on a Stripe-hosted page, then returns to your app. | Fast launches, simple checkout flows, and cases where a familiar Stripe page is preferred.                            |

Hosted checkout is usually the quickest way to launch. Embedded checkout keeps more of the experience inside your app, though some payment methods may still send the customer through an external authorization step.

<Tip>
  Webhooks are still important with either checkout type. Use them to confirm completed payments, update records, provision access, and keep subscription status current after the customer leaves checkout.
</Tip>

## What to build next

Choose the Stripe article that matches your app:

<CardGroup cols={3}>
  <Card title="One-off payments" icon="credit-card" href="/help/integrations/stripe-one-off-payments">
    Sell tickets, services, bookings, products, deposits, or invoices with a one-time payment flow.
  </Card>

  <Card title="Subscriptions" icon="arrows-rotate" href="/help/integrations/stripe-subscriptions">
    Launch memberships, plans, retainers, or recurring access with a subscription table in Zite.
  </Card>

  <Card title="Webhooks" icon="webhook" href="/help/integrations/stripe-webhooks">
    Keep Zite updated when Stripe payments, invoices, trials, and subscriptions change.
  </Card>
</CardGroup>

## Common use cases

With a Stripe connection, you can create apps like:

* **Event ticketing platforms:** Sell tickets, manage attendees, issue refunds, and track revenue by event
* **Subscription portals:** Let customers start, update, or cancel plans while your team sees current subscription status
* **Service booking apps:** Collect deposits or full payment before confirming an appointment, project, or consultation
* **Support dashboards:** Look up customers, payments, refunds, invoices, and booking details from one internal tool
* **Revenue dashboards:** Show sales, recurring revenue, refunds, failed payments, and performance by product, service, or event
* **Operations tools:** Let business teams manage pricing, discounts, availability, and fulfillment workflows without working directly in code

Learn more in Stripe's [Checkout overview](https://docs.stripe.com/payments/checkout).

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

<div className="zite-related-topics">
  <a href="/help/integrations/stripe-one-off-payments">One-off payments</a>
  <a href="/help/integrations/stripe-subscriptions">Subscriptions</a>
  <a href="/help/integrations/stripe-webhooks">Webhooks</a>
  <a href="/help/platform/access/share-to-web">Share to Web</a>
</div>
