# Getting Started

Source: https://docs.ezoic.com/docs/subscriptions/getting-started/


Ezoic Subscriptions helps you launch paid access without building checkout, subscriber sessions, payment handling, or account management from scratch. The implementation is centered on the onsite script: your site checks a product handle, then delivers the paid benefit when access is allowed — most commonly removing ads, and also unlocking premium content — and opens Ezoic checkout when access is needed.

The most common setup is selling an ad-free experience, so this guide uses a `remove-ads` product as its running example. Gating premium article content works the same way — swap in a `premium` product where it fits your site.

## Before You Start

You need:

1. The ability to edit your site HTML, templates, theme, or application code.
2. Access to Ezoic Subscriptions setup in your Ezoic account.
3. Completed payment onboarding so checkout can sell access.
4. A product with a product handle (such as `remove-ads`) and at least one price.
5. A clear decision about the benefit subscribers receive — an ad-free experience, unlocked content, or another feature.

If someone else maintains your site, share the integration guides with them before launch.

## Key Concepts

**Product:** The paid benefit you sell — such as removing ads or unlocking premium content — bought as a subscription or a one-time purchase. A product like `Remove Ads` is what your site code checks and sells. You can create more than one product per site.

**Product handle:** The developer-facing key your site checks with `hasAccess(...)` and passes to `showPaywall({ product })`. For example, a product named `Remove Ads` might use the product handle `remove-ads`.

**Price:** A way to buy a product, such as `Monthly` or `Annual`. Each price has a price handle you can pass to `openCheckout({ price })` for custom checkout buttons.

**Donation:** Optional reader support that does not unlock pages or grant a product. Donations are currently pay-what-you-want in USD above a minimum amount you set.

**Subscriber portal:** The account area at `https://subscriber.ezoic.com` where subscribers can manage subscriptions, receipts, invoices, and payment methods.

## Setup Checklist

1. Complete payment onboarding in your Ezoic account.
2. Create a product. It gets a **product handle** (such as `remove-ads`) that your site code uses. Add at least one **price**, which gets its own **price handle**.
3. Add the onsite script to every page where subscriptions or donations should work:

   ```html
   <script src="https://sm.ezoic.com/min.js" async defer></script>
   ```

4. Check access with `ezsubscriptions.hasAccess("remove-ads")` to decide whether to deliver the paid benefit — for example, removing ads or revealing content.
5. When access is not allowed and you're ready to sell it, open the paywall with `ezsubscriptions.showPaywall({ product: "remove-ads" })`.
6. If you gate article or page content for readers, add paywalled-content structured data before launch (not needed for ad removal, tools, or other non-article products).
7. Optionally collect donations with a `data-ezoic-donate` button or `ezsubscriptions.openDonation()`.
8. Verify checkout, login, and the subscriber portal before announcing paid access.

## Next Steps

- Start with [Onsite Script Integration](/docs/subscriptions/site-integration/).
- Use [Publisher-Managed Access API](/docs/subscriptions/publisher-managed-access/) for access checks and feature gates.
- Choose how visitors sign in with [Visitor Authentication](/docs/subscriptions/visitor-authentication/).
- Use [Payment Setup](/docs/subscriptions/payment-setup/) and [Products, Prices, and Paid Access](/docs/subscriptions/products/) as prerequisites before checkout can sell access.

