# Using Limio Price with Stripe

{% hint style="info" %}
This article covers pricing for subscription products using Stripe Billing.

* For setting up the Stripe Product Code, see [stripe-product-code](https://docs.limio.com/integrations/stripe-billing-integration/manage-pricing/stripe-product-code "mention")
* For one-time products, see [How to Configure a One-Time Offer](https://docs.limio.com/product/pricing/what-are-offers-and-how-to-configure-them/how-to-configure-a-one-time-offer)
  {% endhint %}

## How Limio Price works with Stripe

When a customer purchases an Offer, Limio dynamically creates a Stripe Price based on the Offer's pricing configuration and attaches it to the linked Stripe Product. There is no need to pre-create prices in Stripe — Limio handles this at order time.

Limio automatically converts prices to Stripe's smallest currency unit (e.g. £50.00 becomes 5000 pence for GBP).

## Configure a Limio Offer for Stripe

To make pricing work with Stripe, you need to configure the following on a Limio Offer:

* **Stripe Product Code** — links the Offer to a Stripe Product
* **Limio Price** — defines the charges
* **Auto Renew** — whether the subscription automatically renews

### Limio Price

Within the **Limio Price** field on the Offer, you define the charges that apply to the subscription. Each charge maps to a Stripe Price and Subscription Item.

#### Charge fields

| Field                    | Description                                                     | Example              |
| ------------------------ | --------------------------------------------------------------- | -------------------- |
| **Value**                | The charge amount in the currency's standard unit               | `50.00`              |
| **Currency Code**        | ISO currency code                                               | `GBP`                |
| **Type**                 | `recurring` for ongoing charges, `one_time` for a single charge | `recurring`          |
| **Trigger**              | When the charge starts: `subscription_start` or `delayed`       | `subscription_start` |
| **Repeat Interval**      | Number of intervals between charges                             | `1`                  |
| **Repeat Interval Type** | Billing frequency: `days`, `weeks`, `months`, or `years`        | `years`              |
| **Repeat Count**         | Number of billing cycles (for fixed-term charges)               | `1`                  |

#### Charge types

| Type                                | Description                                             | Example                    |
| ----------------------------------- | ------------------------------------------------------- | -------------------------- |
| **One continuous recurring charge** | A single recurring amount charged at a regular interval | £50 per year               |
| **One one-time charge**             | A single upfront charge with no recurrence              | £25 joining fee            |
| **Two overlapping charges**         | A one-time charge combined with a recurring charge      | £25 joining fee + £9/month |

### Stripe Product Code

Each Offer must reference a Stripe Product. On the Offer, set the **Stripe Product Code** attribute to the Stripe Product ID (e.g. `prod_TpFpO4EkIM28wn`).

See [Stripe Product Code](https://docs.limio.com/integrations/stripe-billing-integration/manage-pricing/stripe-product-code) for setup instructions.

### Auto Renew

If **Auto Renew** is turned on, the Stripe Subscription will automatically renew at the end of each billing period. If off, the subscription will not renew at the end of the current billing period.

### Billing Anchor Date

You can set a **Billing Anchor Date** on the Offer to align all subscription renewals to a specific date regardless of when the customer purchased.

For example, setting the anchor to June 1 means a customer purchasing on 19 December would be charged the full price immediately, with their subscription renewing on 1 June.

{% hint style="info" %}
Billing anchor dates can be customised further using the `beforeStripeSubscription` plugin hook — see [How Limio Events Update Stripe](https://docs.limio.com/integrations/keeping-stripe-and-limio-in-sync/how-limio-events-update-stripe).
{% endhint %}

## Worked example

Here is a complete example of a Limio Offer configured to create a Stripe subscription:

**Offer:** Adult Membership — £50/year

| Offer field         | Value                               |
| ------------------- | ----------------------------------- |
| Stripe Product Code | `prod_TpFpO4EkIM28wn`               |
| Limio Price         | £50.00 GBP, recurring, every 1 year |
| Auto Renew          | On                                  |

When a customer purchases this Offer, Limio will:

1. Create or match a Stripe Customer
2. Create a Stripe Price for £50.00 GBP/year linked to the Stripe Product
3. Create a Stripe Subscription
4. Process the first payment via the first invoice
