Search documentation...

K
ChangelogBook a demoSign up

Zuora

Sync business-critical data from your data warehouse to Zuora with Hightouch

Setup

After selecting Zuora from our Destinations catalog, you will be prompted to enter your Zuora Base URL, Client ID, and Client Secret.

Use this table from Zuora to select the correct Zuora URL, and follow these steps to create an OAuth Client in Zuora that will provide you with the required Client ID and Secret.

Syncing

Hightouch supports syncing to the following Zuora objects:

  • Accounts
  • Subscriptions
  • Usage

Sync modes

Here are the possible modes for how to alter Outreach objects:

  • Upsert: pushes new objects to Zuora and updates fields that change in your warehouse.
    • Supported for Accounts and Subscriptions.
  • Update: updates particular fields on existing objects in Zuora. It doesn't add new objects.
    • Supported for Accounts, Subscriptions, and Usage.
  • Insert: adds new objects in Zuora.
    • Supported for Usage.

Record matching

Records can be matched from your source to your Zuora workspace by the given fields in the dropdown.

The following are supported record ID's for each object:

  • Accounts: Account Number, Account ID
  • Subscription: Subscription Number, Subscription ID
  • Usage: Usage Record ID

A record ID is required when performing Upsert or Update actions, but not Insert.

Field mapping

You can sync columns from your source to Zuora's object properties, including custom fields.

Required fields

Each object / action pair will have their own required properties to be mapped. These required properties will be in their own mapping section during sync configuration. Be sure to scroll down to our Zuora Object Notes to see which fields are required, and their respective data types.

Optional and custom fields

Any optional built-in fields or custom fields sent to Zuora will be mapped in the custom mappings section of sync configuration. Scroll down to our Zuora Object Notes to see Zuora's optional built-in fields, and their respective data types.

Helpful tip:

Use our advanced mapper to fill in static values for numbers or string values that may be consistent across your sync, that may not have a column in your data warehouse. See the example below.

Zuora object notes

Accounts

The following fields can be used for Accounts for each respective action.

Upsert (click to view table)
Field NameNotesRequired
accountNumberstring
applyCreditboolean
applyCreditBalanceboolean
autoPayboolean
batchstring
billCycleDayintegeryes
billToContact.firstNamestringyes
billToContact.lastNamestringyes
collectboolean
communicationProfileIdstring
creditMemoReasonCodestring
creditMemoTemplateIdstring
crmIdstring
currencystringyes
debitMemoTemplateIdstring
documentDatestring
invoiceboolean
invoiceCollectboolean
invoiceTargetDatestring
invoiceTemplateIdstring
namestringyes
notesstring
parentIdstring
paymentGatewaystring
paymentTermstring
runBillingboolean
salesRepstring
sequenceSetIdstring
soldToSameAsBillToboolean
taggingstring
targetDatestring
Class__NSstring
CustomerType__NSstring
Department__NSstring
IntegrationId__NSstring
IntegrationStatus__NSstring
Location__Nstring
Subsidiary__NSstring
SyncDate__NSstring
SynctoNetSuite__NSstring

Update (click to view table)
Field NameNotes
autoPayboolean
batchstring
billCycleDayinteger
billToContactContact
communicationProfileIdstring
creditMemoTemplateIdstring
crmIdstring
debitMemoTemplateIdstring
defaultPaymentMethodIdstring
invoiceDeliveryPrefsEmailboolean
invoiceDeliveryPrefsPrintboolean
invoiceTemplateIdstring
namestring
notesstring
parentIdstring
paymentGatewaystring
paymentTermstring
salesRepstring
sequenceSetIdstring
soldToContactContact
taggingobject
Class__NSstring
CustomerType__NSstring
Department__NSstring
IntegrationId__NSstring
IntegrationStatus__NSstring
Location__NSstring
Subsidiary__NSstring
SyncDate__NSstring
SynctoNetSuite__NSstring

Notes:

  • By default, autoPay is set to false for inserted Accounts, unless it's defined in the mappings for your sync.
    • If you would like to set autoPay to true, you must include either a paymentMethod, creditCard, or hmpCreditCardPaymentMethodId in your mappings.
  • If either the workEmail or personalEmail fields are included in mappings, the account's email delivery preference is automatically set to true.
  • To see more information on any respective field, view the Zuora API docs for Creating an account or Updating an account via the API.

Subscriptions

The following fields can be used for Subscriptions for each respective action.

Upsert (click to view table)
Field NameNotesRequired
accountKeystringyes
applyCreditboolean
applyCreditBalanceboolean
autoRenewboolean
collectboolean
contractEffectiveDatestringyes
creditMemoReasonCodestring
customerAcceptanceDatestring
documentDatestring
externallyManagedBystring
gatewayIdstring
initialTerminteger
initialTermPeriodTypestring
invoiceboolean
invoiceCollectboolean
invoiceOwnerAccountKeystring
invoiceSeparatelyboolean
invoiceTargetDatestring
notesstring
paymentMethodIdstring
renewalSettingstring
renewalTermintegeryes
renewalTermPeriodTypestring
runBillingboolean
serviceActivationDatestring
subscriptionNumberstring
subscribetoRatePlans.productRatePlanIdstringyes
targetDatestring
termStartDatestring
termTypestringyes
CpqBundleJsonId**QTstring
OpportunityCloseDate**QTstring
OpportunityName**QTstring
QuoteBusinessType**QTstring
QuoteNumber**QTstring
QuoteType**QTstring
IntegrationId**NSstring
IntegrationStatus**NSstring
Project**NSstring
SalesOrder**NSstring
SyncDate__NSstring

Update (click to view table)
Field NameNotes
addArray of objects
applicationOrderArray of strings
applyCreditboolean
applyCreditBalanceboolean
autoRenewboolean
clearingExistingBillToContactIdboolean
clearingExistingPaymentTermboolean
collectboolean
creditMemoReasonCodestring
currentTerminteger
currentTermPeriodTypestring
documentDatestring
externallyManagedBystring
includeExistingDraftDocItemsboolean
includeExistingDraftInvoiceItemsboolean
invoiceboolean
invoiceCollectboolean
invoiceSeparatelyboolean
invoiceTargetDatestring
notesstring
previewboolean
previewTypestring
renewalSettingstring
renewalTerminteger
renewalTermPeriodTypestring
runBillingboolean
targetDatestring
termStartDatestring
termTypestring
CpqBundleJsonId__QTstring
OpportunityCloseDate__QTstring
OpportunityName__QTstring
QuoteBusinessType__QTstring
QuoteNumber__QTstring
QuoteType__QTstring
IntegrationId__NSstring
IntegrationStatus__NSstring
Project__NSstring
SalesOrder__NSstring
SyncDate__NSstring

Notes:

  • Only the fields to be changed should be specified. If an empty field is submitted with this operation, the corresponding field in the account is emptied.
  • To see more information on any respective field, view the Zuora API docs for Creating a subscription or Updating a subscription via the API.

Usage

The following fields can be used for Usage for each respective action.

Insert (click to view table)
Field NameTypeRequired
AccountIdstring
AccountNumberstring
ChargeIdstring
ChargeNumberstring
Descriptionstring
EndDateTimestring <date-time>
Quantitydoubleyes
StartDateTimestring <date-time>yes
SubmissionDateTimestring <date-time>
SubscriptionIdstring
SubscriptionNumberstring
UOMstringyes

Update (click to view table)
Field NameNotes
EndDateTimestring <date-time>
Quantitydouble
RbeStatusstring
StartDateTimestring <date-time>
SubmissionDateTimestring <date-time>
UOMstring

Notes

  • Any field with a type of string <date-time> must be in the format "YYYY-MM-DDTHH:mm:ss".
  • To see more information on any respective field, view the Zuora API docs for Creating a usage record or Updating a usage record via the API.

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

Last updated: Nov 28, 2022

On this page

SetupSyncingSync modesRecord matchingField mappingZuora object notes

Was this page helpful?