Organized by task. Written clearly. Kept current by the engineers who ship the platform. Start with the basics or dive into specific areas.
Sign up, connect a storefront, create a plan, and charge your first customer - in under 30 minutes.
Start →Endpoints, request and response schemas, error codes, and idempotency guidance.
Explore →Every lifecycle event Azotte emits, with payload shapes, delivery semantics, and replay tools.
Browse →Subscriptions, entitlements, bundles, storefronts - the data model explained.
Learn →Azotte is built to be usable in an afternoon and ready for production within a week. This section walks you through the critical path.
Sign up at the Azotte dashboard. Each workspace is a tenant with its own configuration, storefronts, and API keys.
A storefront represents one commercial boundary - country, brand, or channel. Set its currency, supported PSPs, and tax scheme.
Model what customers receive at the feature level. Group entitlements into bundles that match your pricing intent.
Install the SDK for your stack, store the API key securely, and call azotte.subscriptions.create() on checkout completion.
Register a webhook endpoint. Azotte will deliver every lifecycle event - signed, idempotent, and replayable.
The Azotte REST API lives at https://api.azotte.com/v1. All endpoints use standard HTTP verbs, accept and return JSON, and expect Bearer token authentication.
Webhooks are delivered in order, at-least-once, and signed with HMAC-SHA256. Retries follow exponential backoff up to 24 hours. Failed events land in a replayable dead-letter queue.
Core event families:
subscription.* - created, renewed, upgraded, downgraded, paused, canceledpayment.* - captured, failed, refunded, recoveredentitlement.* - granted, revoked, updatedcampaign.* - trigger fired, offer applied, code redeemedaudit.* - state change recorded with actor and correlation IDAzotte separates product logic from revenue logic. A subscription is the ongoing relationship. A bundle is what the customer bought. An entitlement is what they can access. A storefront is where the sale happened.
Changes to bundles, pricing, or rules never invalidate existing subscriptions. That's the guarantee that makes migrations and experiments safe.