Connect Zuora to Rig
Zuora Billing holds subscriptions, invoices, payments and revenue schedules. Rig reads 43 billing, order and revenue objects through Zuora's Data Query, with every field included, and lands one table per object in your warehouse. Zuora connects with an OAuth client ID and secret.
Before you start
- You need a Zuora administrator who can manage users and create OAuth clients.
- Pick an Active Zuora user for the client. Its role needs the Data Query permission, because Rig reads through Data Query.
- Know which Zuora environment your tenant runs in, for example EU Production or US Production (Cloud 1).
Step 1: Create a Zuora OAuth client
- Click your username at the top right and go to Settings > Administration > Manage Users.
- Find the user and check that the status is Active. Activate the user or choose another if it is not.
- Click the user's name to open it.
- In the New OAuth Clients section, enter a name for the client, such as Rig. If Multi-entity is on, choose the entities the client can access.
- Click Create. Zuora shows the Client ID and Client Secret.
- Copy both before you click OK. Zuora shows the secret only once.
Step 2: Connect it in Rig
Adding a source needs a workspace owner, or a role with the Manage connections permission, on a workspace where you manage your own connections. If the Connectors tab says “Data ingestion for this workspace is managed by Rig”, ask an owner or Rig support to add the source.
- In Rig, open
Connections, choose theConnectorstab and go toSources & actions. - Search for Zuora, open the card and click
Connect. - Client ID: The Client ID Zuora showed.
- Client secret: The Client Secret Zuora showed.
- Zuora environment: Choose the environment of the tenant the OAuth client belongs to.
- Rows per query: Leave
100000as it is. Lower it only if Zuora fails jobs for exceeding its output limit. - Click
Continue. Rig checks the credentials and lists the streams it can reach, so choose the ones you want and clickConnect. - The source then syncs on its schedule, which is nightly unless you change it. To load data straight away, click
Syncon its row;Testpulls a small sample first if you want to check the connection.
What Rig pulls in
Zuora lands in its own zuora schema in your warehouse:
- Accounts and contacts: account, contact, payment method and user.
- Subscriptions: subscription, rate plan, rate plan charge and rate plan charge tier.
- Orders: order, order action, order item and order TCB.
- Invoices: invoice and invoice item.
- Credit and debit memos: credit memo, debit memo, their items and parts, and credit memo applications.
- Payments and refunds: payment, payment application, payment part, refund, refund application and refund transaction log.
- Product catalogue: product, product rate plan, product rate plan charge and charge tier.
- Revenue: revenue schedule items, revenue events and the revenue charge summary item, with their invoice, credit memo and debit memo item links.
Each table includes every column the object exposes, custom __c fields among them. Rig reads Zuora's deleted-records feed on each sync to mark deleted records, which costs extra API calls.
Good to know
- Column names are Data Query's own: lowercase and run together, such as
updateddateandaccountid. Table names follow the usual snake case, such ascredit_memo_item. - Data Query Live fails a query that scans more than 10 million input rows of a table or returns more than 500,000 rows. Rig splits large tables into date windows and reads at most Rows per query rows in each job.
- Zuora runs 5 Data Query jobs at a time for the whole tenant, with 10 queued. Rig's jobs share that allowance with every other tool querying Zuora.
- A first sync of a large tenant takes many jobs. Later syncs read only what changed.
- Zuora returns Live timestamps in your tenant's preferred timezone, so convert to UTC when comparing across sources.
- To disconnect Zuora, click the bin icon on the source's row under
Sources & actions. Only whoever connected the source or a workspace owner can do this, and data already synced stays in the warehouse.
What people use this for
- Report recurring revenue from subscriptions and charges
- Follow invoices through to payment
- Reconcile billing with recognised revenue
- Understand orders and the product catalogue