# Quickstart API Reference
Zuora's Quickstart API represents a simplified programmatic experience with coverage for common eCommerce use cases only.
Quickstart is NOT a replacement of the [v1 API](https://developer.zuora.com/v1-api-reference/api/overview/).
**If you are starting new development, we recommend you use the v1 API for all your use cases.**
New features are only available in the v1 API. We no longer recommend Quickstart for new eCommerce development.
We are not deprecating the Quickstart API and will continue to fix bugs, but we will not accept enhancement requests for the Quickstart API.
To use the Quickstart API, you must have the following features enabled on
your tenant:
* [Orders](https://knowledgecenter.zuora.com/Zuora_Billing/Manage_accounts%2C_subscriptions%2C_and_non-subscription_transactions/Manage_subscription_transactions/Orders)
or [Orders
Harmonization](https://knowledgecenter.zuora.com/Zuora_Billing/Manage_accounts%2C_subscriptions%2C_and_non-subscription_transactions/Manage_subscription_transactions/Orders_Harmonization)
* [Invoice
Settlement](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Invoice_Settlement)
To find the latest changes made to the Zuora Quickstart API, check the
[Quickstart API
Changelog](https://developer.zuora.com/docs/get-started/changelogs/quickstart-api-changelog/).
Version: 2025-11-12
## Servers
US Developer & Central Sandbox (incl. Test Drive)
```
https://rest.test.zuora.com/v2
```
US API Sandbox Cloud 1
```
https://rest.sandbox.na.zuora.com/v2
```
US API Sandbox Cloud 2
```
https://rest.apisandbox.zuora.com/v2
```
US Production Cloud 1
```
https://rest.na.zuora.com/v2
```
US Production Cloud 2
```
https://rest.zuora.com/v2
```
EU Developer & Central Sandbox
```
https://rest.test.eu.zuora.com/v2
```
EU API Sandbox
```
https://rest.sandbox.eu.zuora.com/v2
```
EU Production
```
https://rest.eu.zuora.com/v2
```
APAC Developer & Central Sandbox
```
https://rest.test.ap.zuora.com/v2
```
APAC Production
```
https://rest.ap.zuora.com/v2
```
## Security
### bearerAuth
Type: http
Scheme: bearer
## Download OpenAPI description
[Quickstart API Reference](https://developer.zuora.com/_bundle/other-api/quickstart-api/index.yaml)
## Products
Products describe the specific goods or services you offer to your customers and help you track inventory or provisioning. They should be used in conjunction with Plans and Prices to configure pricing.
### Retrieve a product
- [GET /products/{product_id}](https://developer.zuora.com/other-api/quickstart-api/products/getproduct.md): Retrieves the product with the given ID.
### Update a product
- [PATCH /products/{product_id}](https://developer.zuora.com/other-api/quickstart-api/products/updateproduct.md): Updates the specific product by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete a product
- [DELETE /products/{product_id}](https://developer.zuora.com/other-api/quickstart-api/products/deleteproduct.md): Permanently deletes a product. It cannot be undone.
### List products
- [GET /products](https://developer.zuora.com/other-api/quickstart-api/products/getproducts.md): Returns a dictionary with a data property that contains an array of products, starting after the cursor, if used. Each entry in the array is a separate product object. If no more products are available, the resulting array will be empty. This request should never return an error.
### Create a product
- [POST /products](https://developer.zuora.com/other-api/quickstart-api/products/createproduct.md): Creates a new product object.
## Plans
Plans are collections of Prices which define the unit cost, currency, and (optional) billing cycle for both recurring and one-time purchases of Products. While Products help you track inventory or provisioning, plans and prices help you track payment terms. Different physical goods or levels of service should be represented by products, and pricing and billing cycle options should be represented by prices grouped together in a plan. This approach lets you change prices without having to change your provisioning scheme. For example, you might have a single ''Gold'' product that has prices for $100/month, $1000/year, and $50 once with the alternative billing cycle and pricing options each represented by a different plan and the recurring and one-time prices represented by different prices.
### Retrieve a plan
- [GET /plans/{plan_id}](https://developer.zuora.com/other-api/quickstart-api/plans/getplan.md): Retrieves the plan with the given ID.
### Update a plan
- [PATCH /plans/{plan_id}](https://developer.zuora.com/other-api/quickstart-api/plans/updateplan.md): Updates the specified plan by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete a plan
- [DELETE /plans/{plan_id}](https://developer.zuora.com/other-api/quickstart-api/plans/deleteplan.md): Permanently deletes a plan. It cannot be undone.
### List plans
- [GET /plans](https://developer.zuora.com/other-api/quickstart-api/plans/getplans.md): Returns a dictionary with a data property that contains an array of plans, starting after the cursor, if used. Each entry in the array is a separate plan object. If no more plans are available, the resulting array will be empty. This request should never return an error.
### Create a plan
- [POST /plans](https://developer.zuora.com/other-api/quickstart-api/plans/createplan.md): Creates a new plan for an existing product.
## Prices
Prices define the unit cost, currency, and (optional) billing cycle for both recurring and one-time purchases of products. Products help you track inventory or provisioning, and plans and prices help you track payment terms. Different physical goods or levels of service should be represented by products, and pricing options should be represented by prices. This approach lets you change prices without having to change your provisioning scheme. For example, you might have a single ''Gold'' product that has prices for $100/month, $1000/year, and $50 once.
### Retrieve a price
- [GET /prices/{price_id}](https://developer.zuora.com/other-api/quickstart-api/prices/getprice.md): Retrieves the price with the given ID.
### Update a price
- [PATCH /prices/{price_id}](https://developer.zuora.com/other-api/quickstart-api/prices/patchprice.md): Updates the specified price by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete a price
- [DELETE /prices/{price_id}](https://developer.zuora.com/other-api/quickstart-api/prices/deleteprice.md): Permanently deletes a price. It cannot be undone.
### List prices
- [GET /prices](https://developer.zuora.com/other-api/quickstart-api/prices/getprices.md): Returns a dictionary with a data property that contains an array of prices, starting after the cursor, if used. Each entry in the array is a separate price object. If no more prices are available, the resulting array will be empty. This request should never return an error.
### Create a price
- [POST /prices](https://developer.zuora.com/other-api/quickstart-api/prices/createprice.md): Creates a new price for an existing plan.
## Accounts
This object represents your customer. It lets you create recurring charges and track payments that belong to the same customer.
### List accounts
- [GET /accounts](https://developer.zuora.com/other-api/quickstart-api/accounts/getaccounts.md): Returns a dictionary with a data property that contains an array of accounts, starting after the cursor, if used. Each entry in the array is a separate account object. If no more accounts are available, the resulting array will be empty. This request should never return an error.
### Create an account
- [POST /accounts](https://developer.zuora.com/other-api/quickstart-api/accounts/createaccount.md): Creates a new account object.
### Retrieve an account
- [GET /accounts/{account_id}](https://developer.zuora.com/other-api/quickstart-api/accounts/getaccount.md): Retrieves the account with the given ID.
### Update an account
- [PATCH /accounts/{account_id}](https://developer.zuora.com/other-api/quickstart-api/accounts/updateaccount.md): Updates the specified account by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete an account
- [DELETE /accounts/{account_id}](https://developer.zuora.com/other-api/quickstart-api/accounts/deleteaccount.md): Permanently deletes an account. It cannot be undone.
### Generate billing documents for an account
- [POST /accounts/{account_id}/bill](https://developer.zuora.com/other-api/quickstart-api/accounts/generatebillingdocuments.md): Creates billing documents for an account.
### Preview an account
- [POST /accounts/{account_id}/preview](https://developer.zuora.com/other-api/quickstart-api/accounts/previewaccount.md): Generates a preview of future invoice and credit memo items for a customer account. Previewing a customer account shows you how much a single customer will be invoiced from the most recent invoice to a specific end of term date in the future. Previewing a customer account only calculates taxes for charges if you use Zuora Tax and the price associated with the invoice item is tax inclusive; otherwise, it does not calculate taxes.
## Contacts
Contacts represent your customer's contact details.
### Retrieve a contact
- [GET /contacts/{contact_id}](https://developer.zuora.com/other-api/quickstart-api/contacts/getcontact.md): Retrieves the contact with the given ID.
### Update a contact
- [PATCH /contacts/{contact_id}](https://developer.zuora.com/other-api/quickstart-api/contacts/updatecontact.md): Updates the specified contact by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete a contact
- [DELETE /contacts/{contact_id}](https://developer.zuora.com/other-api/quickstart-api/contacts/deletecontact.md): Permanently deletes a contact. It cannot be undone.
### List contacts
- [GET /contacts](https://developer.zuora.com/other-api/quickstart-api/contacts/getcontacts.md): Returns a dictionary with a data property that contains an array of contacts, starting after the cursor, if used. Each entry in the array is a separate contact object. If no more contacts are available, the resulting array will be empty. This request should never return an error.
### Create a contact
- [POST /contacts](https://developer.zuora.com/other-api/quickstart-api/contacts/createcontact.md): Creates a new contact object.
### Scrub a contact
- [POST /contacts/{contact_id}/scrub](https://developer.zuora.com/other-api/quickstart-api/contacts/scrubcontact.md): Scrubs the sensitive data for the contact with the given ID.
## Orders
The Orders operations enable you to create or make modifications to subscriptions in a batch.
### List orders
- [GET /orders](https://developer.zuora.com/other-api/quickstart-api/orders/getorders.md): Lists all or a subset of orders in your tenant.
### Create an order
- [POST /orders](https://developer.zuora.com/other-api/quickstart-api/orders/createorder.md): You can use this operation to create subscriptions and make changes to existing subscriptions. You can also use this operation to create order line items. Note that the following limitations apply to this operation: Up to 50 subscriptions are allowed in a single call. Up to 100 order line items are allowed in an order. Up to 1000 orders are allowed on a subscription.
### Retrieve an order
- [GET /orders/{order_id}](https://developer.zuora.com/other-api/quickstart-api/orders/getorder.md): Use this operation to retrieve the detailed information about a specific order.
### Delete an order
- [DELETE /orders/{order_id}](https://developer.zuora.com/other-api/quickstart-api/orders/deleteorder.md): Deletes an order.
### Preview an order
- [POST /orders/preview](https://developer.zuora.com/other-api/quickstart-api/orders/createorderpreview.md): Retrieves the preview of the order delta metrics and invoice items of a specified order. Preview for subscriptions and order line items are both supported. This operation is only an order preview and no order is created. Note that the following limitations apply to this operation: Up to 50 subscriptions are allowed in a single call. Up to 100 order line items are allowed in an order preview.
### Activate an order
- [POST /orders/{order_id}/activate](https://developer.zuora.com/other-api/quickstart-api/orders/activateorder.md): Activates a draft order.
### Cancel an order
- [POST /orders/{order_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/orders/cancelorder.md): Cancels a draft order.
## Order Line Items
Order line items are non subscription based items created by an order, representing transactional charges such as one-time fees, physical goods, or professional service charges that are not sold as subscription services.
With the Order Line Items feature enabled, you have the ability to launch non-subscription and unified monetization business models in Zuora, in addition to subscription business models.
### Retrieve an order line item
- [GET /order_line_items/{order_line_item_id}](https://developer.zuora.com/other-api/quickstart-api/order-line-items/getorderlineitem.md): Use this operation to retrieve the detailed information about a specific order line item.
### Update an order line item
- [PATCH /order_line_items/{order_line_item_id}](https://developer.zuora.com/other-api/quickstart-api/order-line-items/patchorderlineitem.md): Use this operation to update the information of a specific order line item.
## Subscriptions
Subscriptions allow you to charge a customer on a recurring basis, such as a monthly charge or a charge based on usage and must be associated with an Account object. Subscriptions can also include one-time charges, such as service activation fees.
### Retrieve a subscription
- [GET /subscriptions/{subscription_id}](https://developer.zuora.com/other-api/quickstart-api/subscriptions/getsubscriptionbykey.md): Retrieves the subscription with the given subscription key (number or ID).
### Update a subscription
- [PATCH /subscriptions/{subscription_id}](https://developer.zuora.com/other-api/quickstart-api/subscriptions/patchsubscription.md): Updates the specified subscription by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### List subscriptions
- [GET /subscriptions](https://developer.zuora.com/other-api/quickstart-api/subscriptions/getsubscriptions.md): Returns a dictionary with a data property that contains an array of subscriptions, starting after the cursor, if used. Each entry in the array is a separate subscription object. If no more subscriptions are available, the resulting array will be empty. This request should never return an error.
### Create a subscription
- [POST /subscriptions](https://developer.zuora.com/other-api/quickstart-api/subscriptions/createsubscription.md): Creates a new subscription.
### Pause a subscription
- [POST /subscriptions/{subscription_id}/pause](https://developer.zuora.com/other-api/quickstart-api/subscriptions/pausesubscription.md): Pauses a subscription.
### Resume a subscription
- [POST /subscriptions/{subscription_id}/resume](https://developer.zuora.com/other-api/quickstart-api/subscriptions/resumesubscription.md): Resumes a subscription.
### Cancel a subscription
- [POST /subscriptions/{subscription_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/subscriptions/cancelsubscription.md): Cancels a subscription.
### Activate a subscription
- [POST /subscriptions/{subscription_id}/activate](https://developer.zuora.com/other-api/quickstart-api/subscriptions/activatesubscription.md): A subscription must be active before you can bill your subscribers. Activating a subscription requires entering at least one of the following dates: contract_effective, service_activation, and customer_acceptance. See Billing Trigger Dates for more information.
### Preview a subscription
- [POST /subscriptions/preview](https://developer.zuora.com/other-api/quickstart-api/subscriptions/previewsubscription.md): You can preview the billing document metrics or the order delta metrics across a specified time frame.
### Preview an existing subscription
- [POST /subscriptions/{subscription_id}/preview](https://developer.zuora.com/other-api/quickstart-api/subscriptions/previewexistingsubscription.md): You can preview the billing document metrics or the order delta metrics across a specified time frame.
### List all versions of a subscription
- [GET /subscriptions/{subscription_id}/versions](https://developer.zuora.com/other-api/quickstart-api/subscriptions/getsubscriptionbyversion.md): Lists all versions of the specified subscription.
### Uncancel a subscription (deprecated)
- [POST /subscriptions/{subscription_id}/keep](https://developer.zuora.com/other-api/quickstart-api/subscriptions/uncancelsubscription.md): Uncancel a cancelled subscription.
## Subscription Plans
A subscription plan is part of a subscription or an amendment to a subscription, and it comes from a price. Like a product and its plans, a subscription can have one or more subscription plans. Subscription plans represent a price or a collection of prices for a service you sell. An individual subscription plan contains all prices specific to a particular subscription.
### Retrieve a subscription plan
- [GET /subscription_plans/{subscription_plan_id}](https://developer.zuora.com/other-api/quickstart-api/subscription-plans/getsubscriptionplan.md): Retrieves the subscription plan with the given ID.
### List subscription plans
- [GET /subscription_plans](https://developer.zuora.com/other-api/quickstart-api/subscription-plans/getsubscriptionplans.md): Returns a dictionary with a data property that contains an array of subscription plans, starting after cursor. Each entry in the array is a separate object. If no more are available, the resulting array will be empty. This request should never return an error.
## Subscription Items
A subscription item is a part of a subscription plan, and it comes from a price.
### List subscription items
- [GET /subscription_items](https://developer.zuora.com/other-api/quickstart-api/subscription-items/getsubscriptionitems.md): List items contained in subscriptions.
## Fulfillments
Fulfillments are subordinate objects attached to their related order line item. You can manage the entire order line item lifecycle through fulfillments in the following ways:
- Create and attach fulfillments to an order line item to track the shipment or return status.
- Trigger billing based on the fulfillment state and generate billing documents based on the fulfillments accordingly.
- Create and attach fulfillment items to a fulfillment to keep track of all the assets in your system.
### List fulfilllments
- [GET /fulfillments](https://developer.zuora.com/other-api/quickstart-api/fulfillments/getfulfillments.md): Returns a dictionary with a data property that contains an array of fulfillments, starting after the cursor, if used. Each entry in the array is a separate fulfillment object. If no more fulfillment are available, the resulting array will be empty. This request should never return an error.
### Create a fulfillment
- [POST /fulfillments](https://developer.zuora.com/other-api/quickstart-api/fulfillments/createfulfillment.md): Creates a new fulfillment object.
### Retrieve a fulfillment
- [GET /fulfillments/{fulfillment_id}](https://developer.zuora.com/other-api/quickstart-api/fulfillments/getfulfillment.md): Retrieves the fulfillment with the given ID.
### Update a fulfillment
- [PATCH /fulfillments/{fulfillment_id}](https://developer.zuora.com/other-api/quickstart-api/fulfillments/updatefulfillment.md): Updates the specified fulfillment by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete a fulfillment
- [DELETE /fulfillments/{fulfillment_id}](https://developer.zuora.com/other-api/quickstart-api/fulfillments/deletefulfillment.md): Permanently deletes a fulfillment. It cannot be undone.
### Create fulfillments
- [POST /fulfillments/bulk_create](https://developer.zuora.com/other-api/quickstart-api/fulfillments/createfulfillments.md): Creates multiple fulfillments.
## Fulfillment Items
Fulfillment items are subordinate objects attached to their related fulfillment.
### Retrieve a fulfillment item
- [GET /fulfillments_items/{fulfillment_item_id}](https://developer.zuora.com/other-api/quickstart-api/fulfillment-items/getfulfillmentitem.md): Retrieves the fulfillment item with the given ID.
### Update a fulfillment item
- [PATCH /fulfillments_items/{fulfillment_item_id}](https://developer.zuora.com/other-api/quickstart-api/fulfillment-items/updatefulfillmentitem.md): Updates the specified fulfillment item by setting the values of the fields passed. Any fields not provided remain unchanged.
### Delete a fulfillment item
- [DELETE /fulfillments_items/{fulfillment_item_id}](https://developer.zuora.com/other-api/quickstart-api/fulfillment-items/deletefulfillmentitem.md): Permanently deletes a fulfillment item. This operation cannot be undone.
### List fulfillment items
- [GET /fulfillments_items](https://developer.zuora.com/other-api/quickstart-api/fulfillment-items/getfulfillmentitems.md): Returns a dictionary with a data property that contains an array of fulfillment items, starting after the cursor, if used. Each entry in the array is a separate fulfillment item object. If no more fulfillment item are available, the resulting array will be empty. This request should never return an error.
### Create a fulfillment item
- [POST /fulfillments_items](https://developer.zuora.com/other-api/quickstart-api/fulfillment-items/createfulfillmentitem.md): Creates a new fulfillment item object.
### Create fulfillment items
- [POST /fulfillments_items/bulk_create](https://developer.zuora.com/other-api/quickstart-api/fulfillment-items/createfulfillmentitems.md): Bulk create fulfillment items.
## Invoices
Invoices are statements of amounts owed by a customer and are usually generated by a [bill run](https://knowledgecenter.zuora.com/Zuora_Billing/Billing_and_Payments/J_Billing_Operations/G_Bill_Runs/Create_bill_runs). For more information about invoices, see [Invoices](https://knowledgecenter.zuora.com/Zuora_Billing/Billing_and_Payments/IA_Invoices/A1_Invoice_Introduction).
### Retrieve an invoice
- [GET /invoices/{invoice_id}](https://developer.zuora.com/other-api/quickstart-api/invoices/getinvoice.md): Retrieves the invoice with the given invoice ID.
### Update an invoice
- [PATCH /invoices/{invoice_id}](https://developer.zuora.com/other-api/quickstart-api/invoices/patchinvoice.md): Updates an invoice by setting the values of the specified fields. Any fields not provided in the request remain unchanged.
### Delete an invoice
- [DELETE /invoices/{invoice_id}](https://developer.zuora.com/other-api/quickstart-api/invoices/deleteinvoice.md): Deletes an invoice that has not been canceled.
### List invoices
- [GET /invoices](https://developer.zuora.com/other-api/quickstart-api/invoices/getinvoices.md): Returns a dictionary with a data property that contains an array of invoices, starting after cursor. Each entry in the array is a separate invoice object. If no more invoices are available, the resulting array will be empty.
### Create an invoice
- [POST /invoices](https://developer.zuora.com/other-api/quickstart-api/invoices/createinvoice.md): Creates an invoice for an account.
### List invoice items
- [GET /invoice_items](https://developer.zuora.com/other-api/quickstart-api/invoices/getinvoiceitems.md): Retrieves information about all items of invoices.
### Reverse an invoice
- [POST /invoices/{invoice_id}/reverse](https://developer.zuora.com/other-api/quickstart-api/invoices/reverseinvoice.md): Reverses a posted invoice.
### Post an invoice
- [POST /invoices/{invoice_id}/post](https://developer.zuora.com/other-api/quickstart-api/invoices/postinvoice.md): Opens a draft invoice.
### Unpost an invoice
- [POST /invoices/{invoice_id}/unpost](https://developer.zuora.com/other-api/quickstart-api/invoices/unpostinvoice.md): Unposts an open invoice that has not been applied or refunded, and changes its state to draft.
### Email an invoice
- [POST /invoices/{invoice_id}/email](https://developer.zuora.com/other-api/quickstart-api/invoices/emailinvoice.md): Emails an email to your customer.
### Pay an invoice
- [POST /invoices/{invoice_id}/pay](https://developer.zuora.com/other-api/quickstart-api/invoices/payinvoice.md): Pays an invoice using an existing payment method.
### Cancel an invoice
- [POST /invoices/{invoice_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/invoices/cancelinvoice.md): Cancels an invoice. Only the invoice with the draft status can be canceled.
### Write off an invoice
- [POST /invoices/{invoice_id}/write-off](https://developer.zuora.com/other-api/quickstart-api/invoices/writeoffinvoice.md): Writes off an invoice
## Credit Memos
Credit memos reduce invoice and account balances. By applying one or more credit memos to invoices with positive balances, you can reduce the invoice balances in the same way as applying a payment to an invoice. For more information about credit memos, see [Credit and debit memos](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Invoice_Settlement/B_Credit_and_Debit_Memos).
### Retrieve a credit memo
- [GET /credit_memos/{credit_memo_id}](https://developer.zuora.com/other-api/quickstart-api/credit-memos/getcreditmemo.md): Retrieves the credit memo with the given ID.
### Update a credit memo
- [PATCH /credit_memos/{credit_memo_id}](https://developer.zuora.com/other-api/quickstart-api/credit-memos/patchcreditmemo.md): Updates a credit memo by setting the values of the specified fields. Any fields not provided in the request remain unchanged.
### Delete a credit memo
- [DELETE /credit_memos/{credit_memo_id}](https://developer.zuora.com/other-api/quickstart-api/credit-memos/deletecreditmemo.md): Permanently deletes a credit memo. This operation cannot be undone once it is performed.
### List credit memos
- [GET /credit_memos](https://developer.zuora.com/other-api/quickstart-api/credit-memos/getcreditmemos.md): Returns a dictionary with a data property that contains an array of credit memos, starting after cursor. Each entry in the array is a separate credit memo object. If no more credit memos are available, the resulting array will be empty. This request should never return an error.
### Create a credit memo
- [POST /credit_memos](https://developer.zuora.com/other-api/quickstart-api/credit-memos/createcreditmemo.md): Creates a new credit memo.
### List credit memo items
- [GET /credit_memo_items](https://developer.zuora.com/other-api/quickstart-api/credit-memos/getcreditmemoitems.md): Retrieves information about all items of credit memos. A credit memo item is a single line item in a credit memo.
### Apply a credit memo
- [POST /credit_memos/{credit_memo_id}/apply](https://developer.zuora.com/other-api/quickstart-api/credit-memos/applycreditmemo.md): Apply a credit memo to one or more other billing documents.
### Unapply a credit memo
- [POST /credit_memos/{credit_memo_id}/unapply](https://developer.zuora.com/other-api/quickstart-api/credit-memos/unapplycreditmemo.md): Unapply an applied credit memo.
### Unpost a credit memo
- [POST /credit_memos/{credit_memo_id}/unpost](https://developer.zuora.com/other-api/quickstart-api/credit-memos/unpostcreditmemo.md): Unposts an open credit memo that has not been applied, and changes its state to draft.
### Post a credit memo
- [POST /credit_memos/{credit_memo_id}/post](https://developer.zuora.com/other-api/quickstart-api/credit-memos/postcreditmemo.md): Opens a draft credit memo.
### Cancel a credit memo
- [POST /credit_memos/{credit_memo_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/credit-memos/cancelcreditmemo.md): Cancels a credit memo. Only credit memos with the Draft status can be cancelled.
## Debit Memos
Debit memos increase the amount a customer owes. Debit memos can be used to correct undercharging on an invoice or to levy ad hoc charges outside the context of a subscription. Just like an invoice, debit memo balances can be settled by applying either a payment or a credit memo. For more information about debit memos, see [Credit and debit memos](https://knowledgecenter.zuora.com/Billing/Billing_and_Payments/Invoice_Settlement/B_Credit_and_Debit_Memos).
### Retrieve a debit memo
- [GET /debit_memos/{debit_memo_id}](https://developer.zuora.com/other-api/quickstart-api/debit-memos/getdebitmemo.md): Retrieves the debit memo with the given ID.
### Update a debit memo
- [PATCH /debit_memos/{debit_memo_id}](https://developer.zuora.com/other-api/quickstart-api/debit-memos/patchdebitmemo.md): Updates a debit memo by setting the values of the specified fields. Any fields not provided in the request remain unchanged.
### Delete a debit memo
- [DELETE /debit_memos/{debit_memo_id}](https://developer.zuora.com/other-api/quickstart-api/debit-memos/deletedebitmemo.md): Permanently deletes a debit memo. This operation cannot be undone once it is performed.
### List debit memos
- [GET /debit_memos](https://developer.zuora.com/other-api/quickstart-api/debit-memos/getdebitmemoes.md): Returns a dictionary with a data property that contains an array of debit memoes, starting after cursor. Each entry in the array is a separate invoice object. If no more invoices are available, the resulting array will be empty. This request should never return an error.
### Create a debit memo
- [POST /debit_memos](https://developer.zuora.com/other-api/quickstart-api/debit-memos/createdebitmemo.md): Creates debit memo
### Cancel a debit memo
- [POST /debit_memos/{debit_memo_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/debit-memos/canceldebitmemo.md): Cancels a debit memo. Only the debit memos with the draft status can be canceled.
### List debit memo items
- [GET /debit_memo_items](https://developer.zuora.com/other-api/quickstart-api/debit-memos/getdebitmemoitems.md): Lists item information on all or a subset of debit memos.
### Post a debit memo
- [POST /debit_memos/{debit_memo_id}/post](https://developer.zuora.com/other-api/quickstart-api/debit-memos/postsdebitmemo.md): Opens a draft debit memo.
### Unpost a debit memo
- [POST /debit_memos/{debit_memo_id}/unpost](https://developer.zuora.com/other-api/quickstart-api/debit-memos/unpostsdebitmemo.md): Unposts an open debit memo that has not been applied or refunded, and changes its state to draft.
### Pay a debit memo
- [POST /debit_memos/{debit_memo_id}/pay](https://developer.zuora.com/other-api/quickstart-api/debit-memos/paydebitmemo.md): Pays a debit memo using an existing payment method.
## Bill Runs
Bill runs automatically create invoices for your customers on a set schedule, as well as create invoices for your customers, as needed. A bill run gathers information from one or more customer accounts and generates invoices for those accounts. The operations in this section allows you to create, update, get, or delete bill runs.
### Retrieve a bill run
- [GET /bill_runs/{bill_run_id}](https://developer.zuora.com/other-api/quickstart-api/bill-runs/getbillrun.md): Retrieves the bill run information with the given ID.
### Delete a bill run
- [DELETE /bill_runs/{bill_run_id}](https://developer.zuora.com/other-api/quickstart-api/bill-runs/deletebillrun.md): Deletes a bill run. Only the bill runs with the canceled status can be deleted.
### List bill runs
- [GET /bill_runs](https://developer.zuora.com/other-api/quickstart-api/bill-runs/getbillruns.md): Returns an array of bill runs. Each entry in the array is a separate bill run object. If no more bill runs are available, the resulting array will be empty. This request should never return an error.
### Create a bill run
- [POST /bill_runs](https://developer.zuora.com/other-api/quickstart-api/bill-runs/createbillrun.md): Creates a bill run on a single account, or a batch of customer accounts.
### Post a bill run
- [POST /bill_runs/{bill_run_id}/post](https://developer.zuora.com/other-api/quickstart-api/bill-runs/postbillrun.md): Posts a bill run. Only the bill runs with the completed status can be posted.
### Cancel a bill run
- [POST /bill_runs/{bill_run_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/bill-runs/cancelbillrun.md): Cancels a bill run. Only the bill run that has no posted invoices can be canceled.
## Bill Run Previews
The Bill Run Previews operations allow you to generates a preview of future billing document items for a batch of accounts through a bill run. A bill run preivew job also generates a downloadable CSV file containing a preview of invoice item data for the customer account batch.
### Retrieve a bill run preview
- [GET /bill_run_previews/{bill_run_preview_id}](https://developer.zuora.com/other-api/quickstart-api/bill-run-previews/getbillrunpreview.md): Retrieves the bill run preview information with the given ID.
### Create a bill run preview
- [POST /bill_run_previews](https://developer.zuora.com/other-api/quickstart-api/bill-run-previews/createbillrunpreview.md): Creates a bill run preview for a batch of customer accounts.
## Taxation Items
The TaxationItem object is used to add a tax amount to an invoice item. Z-Tax and third-party tax engines such as Avalara or Connect tax engine can create TaxationItem objects. Before you use the Taxation Item object, you have to configure Z-Tax, Avalara, or Connect tax engine, as the object's fields rely on the values you create during the configuration process.
### List taxation items
- [GET /taxation_items](https://developer.zuora.com/other-api/quickstart-api/taxation-items/gettaxationitems.md): Returns an array of taxation items. Each entry in the array is a separate Taxation Item object. If no more taxation items are available, the resulting array will be empty. This request should never return an error.
### Create a taxation item
- [POST /taxation_items](https://developer.zuora.com/other-api/quickstart-api/taxation-items/createtaxationitem.md): Creates a taxation item.
### Retrieve a taxation item
- [GET /taxation_items/{taxation_item_id}](https://developer.zuora.com/other-api/quickstart-api/taxation-items/gettaxationitem.md): Retrieves the taxation item with the given ID.
### Update a taxation item
- [PATCH /taxation_items/{taxation_item_id}](https://developer.zuora.com/other-api/quickstart-api/taxation-items/updatetaxationitem.md): Updates a taxation item by setting the values of the specified fields. Any fields not provided in the request remain unchanged.
### Delete a taxation item
- [DELETE /taxation_items/{taxation_item_id}](https://developer.zuora.com/other-api/quickstart-api/taxation-items/deletetaxationitem.md): Permanently deletes a taxation item. This operation cannot be undone once it is performed.
## Usage Records
The operations in this section allows you to create, update, get, or delete usage records. Zuora expects no more than 25 million usage records per month. If you want to go over this limit, contact your Zuora account manager for further consultation.
### List usage records
- [GET /usage_records](https://developer.zuora.com/other-api/quickstart-api/usage-records/getusagerecords.md): Returns an array of usage records. Each entry in the array is a separate Usage object. If no more usages are available, the resulting array will be empty. This request should never return an error.
### Create a usage record
- [POST /usage_records](https://developer.zuora.com/other-api/quickstart-api/usage-records/createusage.md): Creates a new Usage object.
### Retrieve a usage record
- [GET /usage_records/{id}](https://developer.zuora.com/other-api/quickstart-api/usage-records/getusage.md): Retrieves the usage with the given ID.
### Update a usage record
- [PATCH /usage_records/{id}](https://developer.zuora.com/other-api/quickstart-api/usage-records/updateusage.md): Updates the usage record. Any fields on the object not provided in the request are not changed.
### Delete a usage record
- [DELETE /usage_records/{id}](https://developer.zuora.com/other-api/quickstart-api/usage-records/deleteusage.md): Permanently deletes a usage object. It cannot be undone.
## Payment Methods
Payment methods represent your customer's payment instruments. They can be used to collect payments or saved to Account objects to store instrument details for future payments.
**Important**: The `type` field in the request body schema of the [Create a payment method](https://developer.zuora.com/other-api/quickstart-api/operation/createPaymentMethod/) operation enumerates the supported payment methods. Not all payment gateways support all these payment method types. Check Supported payment methods to check the supported payment methods for each gateway.
If you need to create payment methods outside the scope of this operaton, you have to use the [Create a payment method](https://developer.zuora.com/v1-api-reference/api/operation/POST_PaymentMethods/) operation of the v1 API instead of the Quickstart API.
We do not plan to add additional payment methods to the Quickstart API. Any new payment methods will only be available through the v1 API and Zuora client libraries.
### List payment methods
- [GET /payment_methods](https://developer.zuora.com/other-api/quickstart-api/payment-methods/getpaymentmethods.md): Returns a dictionary with a data property that contains an array of payment methods, starting after the cursor, if used. Each entry in the array is a separate payment method object. If no more payment methods are available, the resulting array will be empty. This request should never return an error.
### Create a payment method
- [POST /payment_methods](https://developer.zuora.com/other-api/quickstart-api/payment-methods/createpaymentmethod.md): Creates a new payment method object. See Payment Pages 2.0 implementation overview to learn how to create payment methods through Hosted Payment Pages.
The type field in the request body schema of this operation enumerates the supported payment methods. Not all payment gateways support all these payment method types. Check Supported payment methods to check the supported payment methods for each gateway.
If you need to create payment methods outside the scope of this operaton, you have to use the Create a payment method operation of the v1 API instead of the Quickstart API.
We do not plan to add additional payment methods to the Quickstart API. Any new payment methods will only be available through the v1 API and the Zuora client libraries.
### Retrieve a payment method
- [GET /payment_methods/{payment_method_id}](https://developer.zuora.com/other-api/quickstart-api/payment-methods/getpaymentmethodbyid.md): Retrieves the payment method with the given ID.
### Update a payment method
- [PATCH /payment_methods/{payment_method_id}](https://developer.zuora.com/other-api/quickstart-api/payment-methods/updatepaymentmethod.md): Updates the specified payment method by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete a payment method
- [DELETE /payment_methods/{payment_method_id}](https://developer.zuora.com/other-api/quickstart-api/payment-methods/deletepaymentmethod.md): Permanently deletes a payment method. It cannot be undone.
### Verify a payment method
- [POST /payment_methods/{payment_method_id}/verify](https://developer.zuora.com/other-api/quickstart-api/payment-methods/verifypaymentmethod.md): Sends an authorization request to the corresponding payment gateway to verify the payment method. Supported payment methods are credit cards and Paypal.
### Create a payment authorization
- [POST /payment_methods/{payment_method_id}/authorize](https://developer.zuora.com/other-api/quickstart-api/payment-methods/authorizepaymentmethod.md): Verifies a payment method and block the amount of fund that will be used for payment.
### Cancel a payment authorization
- [POST /payment_methods/{payment_method_id}/void_authorization](https://developer.zuora.com/other-api/quickstart-api/payment-methods/voidauthorizationpaymentmethod.md): Cancel or void the blocked fund from the specified payment method.
### Scrub a payment method
- [POST /payment_methods/{payment_method_id}/scrub](https://developer.zuora.com/other-api/quickstart-api/payment-methods/scrubpaymentmethod.md): Scrubs sensitive data such as card number on the specified payment method.
## Payments
Payments represents a customer payment. The Payment object holds all of the information about a payment, including the payment amount and which billing documents the payment is applied to.
### Retrieve a payment
- [GET /payments/{payment_id}](https://developer.zuora.com/other-api/quickstart-api/payments/getpayment.md): Retrieves the payment with the given ID.
### Update a payment
- [PATCH /payments/{payment_id}](https://developer.zuora.com/other-api/quickstart-api/payments/updatepayment.md): Updates the specified payment by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### List payments
- [GET /payments](https://developer.zuora.com/other-api/quickstart-api/payments/getpayments.md): Returns a dictionary with a data property that contains an array of payments, starting after the cursor, if used. Each entry in the array is a separate payment object. If no more payments are available, the resulting array will be empty. This request should never return an error.
### Create a payment
- [POST /payments](https://developer.zuora.com/other-api/quickstart-api/payments/createpayment.md): Creates a new payment object.
### Cancel a payment
- [POST /payments/{payment_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/payments/cancelpayment.md): Cancels an unapplied payment.
### Apply a payment
- [PUT /payments/{payment_id}/apply](https://developer.zuora.com/other-api/quickstart-api/payments/applypayment.md): Applies a payment to one or more invoices or debit memos.
### Unapply a payment
- [PUT /payments/{payment_id}/unapply](https://developer.zuora.com/other-api/quickstart-api/payments/unapplypayment.md): Unapplies an applied payment.
## Payment Runs
Payment runs are used to collect payments using electronic payment methods. Even if a payment was made to an invoice but had an error, if an invoice has a positive balance and meets all the filter criteria for the payment run, Zuora will pick up the invoice for processing in the payment run.
Zuora supports two type of payment runs: ad hoc and recurring. These are similar to ad hoc and scheduled bill runs
### List payment runs
- [GET /payment_runs](https://developer.zuora.com/other-api/quickstart-api/payment-runs/getpaymentruns.md): Returns an array of payment runs. Each entry in the array is a separate payment run object. If no more payment runs are available, the resulting array will be empty. This request should never return an error.
### Create a payment run
- [POST /payment_runs](https://developer.zuora.com/other-api/quickstart-api/payment-runs/createpaymentruns.md): Creates a payment run.
### Retrieve a payment run
- [GET /payment_runs/{payment_run_id}](https://developer.zuora.com/other-api/quickstart-api/payment-runs/getpaymentrun.md): Retrieves the payment run information with the given ID.
### Update a payment run
- [PATCH /payment_runs/{payment_run_id}](https://developer.zuora.com/other-api/quickstart-api/payment-runs/updatepaymentruns.md): Updates a payment run by setting the values of the specified fields. Any fields not provided in the request remain unchanged.
### Delete a payment run
- [DELETE /payment_runs/{payment_run_id}](https://developer.zuora.com/other-api/quickstart-api/payment-runs/deletepaymentruns.md): Deletes a payment run. Only the payment runs with the canceled or pending status can be deleted.
## Payment Schedules
The Payment Schedules feature enables you to collect a series of payments following customized timelines and rules. You have the flexibility to leverage a payment schedule to process either a single payment or multiple payments.
You can leverage this feature to split invoice or account balances into several installments, and then automatically process payments for the installments. Payment schedules can also be used to collect external payments made for the installments. Meanwhile, we’ve provided you the capability to easily manage and modify existing schedules, as well as to manually retry failed payments with updated configurations.
### Retrieve a payment schedule
- [GET /payment_schedules/{payment_schedule_id}](https://developer.zuora.com/other-api/quickstart-api/payment-schedules/getpaymentschedule.md): Retrieves the payment schedule with the given ID.
### Update a payment schedule
- [PATCH /payment_schedules/{payment_schedule_id}](https://developer.zuora.com/other-api/quickstart-api/payment-schedules/updatepaymentschedule.md): Updates the specified payment schedule by setting the values of the parameters passed. Any parameters not provided will remain unchanged.
### Create a payment schedule
- [POST /payment_schedules](https://developer.zuora.com/other-api/quickstart-api/payment-schedules/createpaymentschedule.md): Creates a new Payment Schedule object.
### Cancel a payment schedule
- [POST /payment_schedules/{payment_schedule_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/payment-schedules/cancelpaymentschedule.md): Cancels the payment schedule with the given ID.
## Payment Schedule Items
A payment schedule consists of one or more payment schedule items that can be picked up by payment runs, which are hourly scheduled by Zuora. Each payment schedule item will trigger a payment process.
### Retrieve a payment schedule item
- [GET /payment_schedule_items/{payment_schedule_item_id}](https://developer.zuora.com/other-api/quickstart-api/payment-schedule-items/getpaymentscheduleitem.md): Retrieves the payment schedule item with the given ID.
### Update a payment schedule item
- [PATCH /payment_schedule_items/{payment_schedule_item_id}](https://developer.zuora.com/other-api/quickstart-api/payment-schedule-items/updatepaymentscheduleitem.md): Updates the specified payment schedule item by setting the values of the parameters passed. Any parameters not provided will remain unchanged.
### Create a payment schedule item
- [POST /payment_schedule_items](https://developer.zuora.com/other-api/quickstart-api/payment-schedule-items/createpaymentscheduleitem.md): Creates a new Payment Schedule Item object.
### Cancel a payment schedule item
- [POST /payment_schedule_items/{payment_schedule_item_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/payment-schedule-items/cancelpaymentscheduleitem.md): Cancels the payment schedule item with the given ID.
### Retry a payment shedule item
- [POST /payment_schedule_items/{payment_schedule_item_id}/retry](https://developer.zuora.com/other-api/quickstart-api/payment-schedule-items/retrypaymentscheduleitem.md): Retries the payment schedule item with the given ID.
### Skip a payment schedule item
- [POST /payment_schedule_items/{payment_schedule_item_id}/skip](https://developer.zuora.com/other-api/quickstart-api/payment-schedule-items/skippaymentscheduleitem.md): Skips the payment schedule item with the given ID.
## Refunds
A refund returns money to a customer. For instance, refunds are used when a customer cancels service and is no longer your customer. The Quickstart API allows you to refund payments, update refunds, and get refunds.
### List refunds
- [GET /refunds](https://developer.zuora.com/other-api/quickstart-api/refunds/getrefunds.md): Returns a dictionary with a data property that contains an array of refunds, starting after cursor. Each entry in the array is a separate object. If no more are available, the resulting array will be empty. This request should never return an error.
### Create a refund
- [POST /refunds](https://developer.zuora.com/other-api/quickstart-api/refunds/createrefund.md): Creates a new refund object.
### Retrieve a refund
- [GET /refunds/{refund_id}](https://developer.zuora.com/other-api/quickstart-api/refunds/getrefund.md): Retrieves the refund with the given ID.
### Update a refund
- [PATCH /refunds/{refund_id}](https://developer.zuora.com/other-api/quickstart-api/refunds/updaterefund.md): Updates the specified refund by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete a refund
- [DELETE /refunds/{refund_id}](https://developer.zuora.com/other-api/quickstart-api/refunds/deleterefund.md): Permanently deletes a refund. Note that once you have deleted a refund, it cannot be undone.
### Cancel a refund
- [POST /refunds/{refund_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/refunds/cancelrefund.md): Cancels an unapplied refund.
## Custom Objects
Zuora Custom Objects provides a uniform custom data service for you to manage custom objects in Zuora. Those custom data is stored on Zuora's platform and can be used to extend the data model to accommodate your specific use cases.
### List custom objects
- [GET /custom_objects/{custom_object_type}](https://developer.zuora.com/other-api/quickstart-api/custom-objects/getcustomobjects.md): Returns a list of your custom objects.
### Create a custom object
- [POST /custom_objects/{custom_object_type}](https://developer.zuora.com/other-api/quickstart-api/custom-objects/createcustomobject.md): Creates a new custom object.
### Retrieve a custom object
- [GET /custom_objects/{custom_object_type}/{custom_object_id}](https://developer.zuora.com/other-api/quickstart-api/custom-objects/getcustomobject.md): Retrieves the custom object with the given ID.
### Update a custom object
- [PATCH /custom_objects/{custom_object_type}/{custom_object_id}](https://developer.zuora.com/other-api/quickstart-api/custom-objects/updatecustomobject.md): Updates the specified custom object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
### Delete a custom object
- [DELETE /custom_objects/{custom_object_type}/{custom_object_id}](https://developer.zuora.com/other-api/quickstart-api/custom-objects/deletecustomobject.md): Permanently deletes a custom object. It cannot be undone.
## Query Runs
The Query Runs operations allow you to create, retrieve, or cancel a Data Query job run.
### Retrieve a query run
- [GET /query_runs/{query_run_id}](https://developer.zuora.com/other-api/quickstart-api/query-runs/getqueryrun.md): Retrieves the query run with the given ID.
### Create a query run
- [POST /query_runs](https://developer.zuora.com/other-api/quickstart-api/query-runs/createqueryrun.md): Creates a new query run job.
### Cancel a query run
- [POST /query_runs/{query_run_id}/cancel](https://developer.zuora.com/other-api/quickstart-api/query-runs/cancelqueryrun.md): Cancels a query run. This operation is only applicable if the state of the query run is accepted or in_progress.
## Workflows
Run a specified workflow. In the request body, you can include parameters that you want to pass to the workflow. For the parameters to be recognized and picked up by tasks in the workflow, you need to define the parameters first.
### Run a workflow
- [POST /workflows/{workflow_id}/run](https://developer.zuora.com/other-api/quickstart-api/workflows/runworkflow.md): Run a specified workflow. In the request body, you can include parameters that you want to pass to the workflow. For the parameters to be recognized and picked up by tasks in the workflow, you need to define the parameters first.
## Billing Documents
**Note: The API operations in this section have been deprecated.** Billing Documents represent your customer's invoices, credit memos and debit memos. Invoices are statements of amounts owed by a customer, and are either generated one-off, or generated periodically from a subscription. They contain invoice items, and proration adjustments that may be caused by changes to a subscription. If your invoice is configured to be charged automatically, Zuora automatically finalizes your invoice and attempts payment otherwise Zuora will email the invoice to your customer and await payment. Any customer credit memos may be applied before determining the amount due for the invoice (i.e., the amount that will be charged).
### Retrieve a billing document
- [GET /billing_documents/{billing_document_id}](https://developer.zuora.com/other-api/quickstart-api/billing-documents/getbillingdocument.md): Retrieves the billing document with the given ID.
### List billing documents
- [GET /billing_documents](https://developer.zuora.com/other-api/quickstart-api/billing-documents/getbillingdocuments.md): Returns a dictionary with a data property that contains an array of billing documents, starting after cursor. Each entry in the array is a separate billing document object. If no more billing documents are available, the resulting array will be empty. This request should never return an error.
### Create a billing document
- [POST /billing_documents](https://developer.zuora.com/other-api/quickstart-api/billing-documents/postbillingdocument.md): Creates different types of billing document objects, including invoices, credit memos, and debit memos.
## Billing Document Items
**The API operations in this section have been deprecated.** Billing document items represent each item in your customer's invoices, credit memos, or debit memos.
### List billing document items
- [GET /billing_document_items](https://developer.zuora.com/other-api/quickstart-api/billing-document-items/getbillingdocumentitems.md): List billing document items