| Free | Dev | Business | |
| Price | $0 | 20 USDC every 30 days | Custom |
| Plans | 1 | 3 | No limit |
| Subscribers | 30 | 150 | No limit |
| Automatic retries | None | Yes, per plan | Yes, per plan |
| Access while a payment is late | Off | On, until the last retry | On, until the last retry |
| Retries by hand | 3 per missed period | Yes | Yes |
active, unpaid, or
cancelled and not yet past its end. A stopped subscription does not count:
it takes a seat again only if it comes back, and only if there is room. A
wallet subscribed to two of your plans counts once.seat_cap_reached,
when it is created and again when it is submitted: of several checkouts open on
the last seat, one goes through. Existing subscribers are not affected.| Calls | Limit |
Reads: /v1/access, /v1/plans, /v1/subscriptions, /v1/project, /v1/events | 1,000 a minute |
| Writes: create, transaction, submit, retry, cancel, resume, close, their confirms | 60 a minute |
X-RateLimit-Limit, X-RateLimit-Remaining and
X-RateLimit-Reset, the seconds until the window starts over. Past a limit,
Mesub answers 429 rate_limited with a Retry-After header. The SDK caches
access answers, so one customer checked on every request costs far
fewer calls than requests.| What | Limit |
| Webhook endpoints per project | 16 |
| Subscriptions waiting for a signature, per project | 1,000 |
| Subscriptions waiting for a signature, per customer | 5 |
| Plans checked by one guard | 3 |
| Retries on a plan's own policy | 10 |
| Shortest wait between two retries | 15 minutes |