Recipe: Create a Subscription
Walk through the end-to-end flow to set up a customer with a subscription using the Zuora Orders API
This guide walks through the complete workflow to create a customer account and attach a subscription using the Zuora Orders API. By the end, you’ll have a billable subscription ready for invoicing.
This recipe uses the Orders API, which is the recommended approach for creating and managing subscriptions. The legacy Subscription API is still available but should not be used for new integrations.
Prerequisites
- A valid OAuth Bearer token (Authentication guide)
- At least one Product and Rate Plan configured in your Zuora catalog
- API access to a Sandbox or Test Drive environment for testing
Workflow Overview
Step 1: Create a Customer Account
Create a billing account to hold the subscription. The account requires contact information and a billing/payment configuration.
cURL
Python
TypeScript
Response
What’s Next
Now that you have an active subscription, you can:
- Generate an invoice — Run a Bill Run to create invoices for the subscription period.
- Process a payment — Use the Payments API to collect payment against the invoice.
- Amend the subscription — Use Order Actions to upgrade, downgrade, or cancel the subscription.
- Query data — Use Object Queries to retrieve subscription and billing data programmatically.
Always test in a Sandbox environment before running orders in production. Use the Preview Order endpoint to simulate the billing impact of an order without committing it.