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

# Customers and plans

> Keep your billing system as the source of payment truth and reflect the plan in QuotaMint

QuotaMint does not listen directly to Stripe, Razorpay, or another payment provider. Your billing integration stays where it is; you tell QuotaMint which plan each customer has by assigning it in the dashboard.

## Customer identity

Use the same stable identifier your application already uses. QuotaMint accepts IDs such as `user_123`, `org_acme`, or `cus_provider_456`; the value is unique inside a project and each environment.

Do not use an email address as the only identity if it can change. Store the provider customer ID and your own customer ID in your system, then use your stable application ID in QuotaMint.

## Create a customer and assign a plan

Create the customer in the dashboard under **Customers**, then assign an active plan such as `pro`. The customer's balance starts empty until the plan's monthly allocation or a manual grant arrives.

The plan must be active in the project. Assigning an archived plan is refused.

## Upgrades and downgrades

Treat your billing provider's webhook as an event stream and mirror the outcome in the dashboard:

* **Upgrade:** assign the new plan, then add any separately purchased credits.
* **Downgrade:** assign the lower plan. Existing balances and history are not deleted.
* **Cancellation:** deactivate the customer or remove the plan according to your product policy.
* **Duplicate provider event:** repeating the same assignment is safe — an active plan assignment is idempotent.

QuotaMint does not infer plan changes from a payment provider and does not process payments itself.

## Plan assignment and monthly credits

A plan can define a monthly credit allocation. QuotaMint grants the current calendar month's allocation once per customer. A customer assigned mid-month receives the allocation for the current month; earlier periods are not backfilled.

Read [credits](/guides/credits) for top-ups, refunds, and ledger behavior.
