Configuring Zuora for the E-Commerce App

Learn how to configure Zuora as a payment gateway in your platform.

Last Updated

April 21st, 2020

Docebo Module


Reading Time

5 min

User Level


The Zuora payment gateway is an authorized payment gateway in your platform. Please note that configuring this integration in Docebo requires that the E-Commerce app is activated in your platform. Refer to this article to learn more about configuring the settings for the E-Commerce app.

Some currencies supported by Docebo may not be accepted by Zuora, so remember to check if your currency is supported by both systems before proceeding. Find here the complete list of the currencies supported by Docebo.

Please Note: This integration is more complex than other Docebo payment gateway integrations. You should have extensive knowledge about Zuora in order to properly configure this integration for your Docebo platform.

Configuring the Integration in Docebo

To set up the integration in your platform, access the Admin Menu from the gear icon in the top right corner of your platform, then press the Manage item in the E-Commerce section. Then, reach the Zuora tab.

Begin by flagging the option at the top of the page to enable this payment gateway. Then, insert your Zuora login credentials into the Username and Password fields and press the Continue button. You can reset this configuration at any time by pressing the Reset button.

zuora config lms

If you want to test the configuration before using the real environment, you can flag the option to enable sandbox mode. Once your account is authorized in your platform, you can continue with the configuration. Fill in the new fields that will appear in the tab:

Payment Page 2.0. This is the Payment Page 2.0 that you configured directly in Zuora. Learn more here.

Hosted Page 2.0 URL. This parameter is found in the Implementation Details section when configuring the Payment Page 2.0 in Zuora.

Payment Gateway. This is the payment gateway that you selected in Zuora, not a payment gateway from your platform.

Product Rate Plan ID. This is a unique field that comes directly from Zuora, but you must first create a Zuora product. Refer to the next section for more information.

Product Rate Plan Charge ID. This field represents a charge model or a set of fees associated with a product rate plan. It comes directly from Zuora. Refer to the section below for more information.

Batch Number. This field comes directly from Zuora, which creates batches to easily group your customers in order to all separate processing. Learn more here.

Communication Profile ID. This field comes directly from Zuora. A communication profile is a set of policies that determine how to communicate with the contacts associated with a particular account. You must use the web-based UI to specify these policies.

In order to retrieve IDs from Zuora, log into your Admin Account, access the Reporting area, then reach the Data Source section. You then need to execute the related report to retrieve the proper IDs.

In the User Fields section, map your Docebo users’ fields to your account fields in Zuora. In the Select User Field dropdown menu, select a Docebo user field. It will appear then appear below. Using the Zuora Property dropdown menu, select which Zuora field you want to map to the user field.

You then need to add your Zuora parameter in the corresponding text box in each field’s row. This parameter comes directly from Zuora. Find the Zuora parameters here. Then repeat the same process in the Course Fields section by mapping your Docebo course fields to a Zuora property.

zuora fields

In the Static Fields section, press the Add a Static Value button to add a static field. Insert the name of the platform field that you want to map into the platform Property text box, then choose the corresponding field from the dropdown menu and enter the Zuora parameter.

For any fields in the User Fields, Course Fields, or Static Fields sections, you can unmap them at any time by pressing the X icon in the field’s row. When you’ve completed all of the fields, press Save Changes.

Configuring the Integration in Zuora

To configure the integration in Zuora, login to your Zuora developer account. Once you log in, press the arrow icon next to your username in the top right corner of the page, then press the Payments item from the dropdown menu.

zuora set up page

On the next page, press the Setup Hosted Pages item in the Payments Settings section.  On the next page, scroll to the bottom of the list. In the Type dropdown menu, select which type of hosted page you want to create, then press the Create New Hosted Page button. Refer to this Zuora documentation to learn more about creating hosted pages.

zuora page type

For the integration with Docebo, please make sure to completely and correctly fill out all of the fields in the Basic Information section:

Page Name. This is the name that you want to give to your page. It does not need to have specific parameters for the Docebo integration.

Hosted Domain. This is the URL of your Docebo platform.

Callback Path. The callback path for this integration is /ecommerce/v1/zuora/callback

Then, fill in the rest of the parameters on the page as instructed in Zuora documentation. Please note that you must flag the option to Display the Expiration Date in the Credit/Debit Card section. You can edit the CSS as desired without interfering with the configuration. When finished, press Generate and Save Page. You then need to insert the corresponding fields in the Zuora integration page in your platform.

zuora page details

zuora expiration

After setting up a hosted page, you then need to create a related product and product rate plan in order to allow Zuora to receive payments from Docebo. To do so, refer to this documentation from Zuora. Please note that when creating the Zuora product, the Effective Start Date and Effective End Date in Zuora are mandatory fields for this integration. Once you’ve created the Zuora product, press the Add Rate Plan button. When you configure a rate plan, the Effective Start Date and Effective End Date much match those that you configured when creating the product.

In Zuora, you should set the rate plan fields as following: Charge Model set as Flat Free Pricing, List Price set as 0, Trigger Condition set as Upon Service Activation, Revenue Recognition Rule set as Recognize Upon Invoicing, Recognized Revenue set as Accounts Receivable, Tax Mode set as Tax Exclusive, and Tax Code set as Z-Tax Code. Please note that the price in the LMS always overrides the price that you set for the product in Zuora.

Using Zuora to Purchase Courses in Docebo

When purchasing courses or learning plans in your platform, flag the Zuora option during the transaction process to pay with Zuora. Refer to this article to learn more about purchasing courses in your platform.

Checking Payments in Zuora

When using this integration, every payment transaction completed by a user in the platform will be a new subscription within Zuora. Note that payments are handled directly in Zuora. Reach the Subscriptions tab from the left panel. Each subscription on this page will include the payment details of the user. Additional payment details can be found in the Payment section of your admin account. Note that each record in Zuora displays one item purchased in the platform.