Managing E-Commerce to Sell Your Courses Online

Discover how to sell your courses online via your Docebo LMS.

Last Updated

July 25th, 2019

Reading Time

7 min

User Level


With Docebo’s E-Commerce App, you can sell courses online with your Docebo Learning Management System. This manual will help you get started. Log into your platform as the Superadmin, reach the Admin Menu, then access the Apps & Features area using the Add New Apps button. In order to activate the E-Commerce app, select the Docebo Additional Features tab. Then, find the E-Commerce App and select the Try It For Free button.

Try it for free

Read the information in the pop-up box as necessary, then press Start Free Trial. With the Course Catalog feature, you can take advantage of the ability to divide your courses into catalogs. You can do this at no cost. Please refer to the linked manual for more information.

This app is available for both Growth and Enterprise clients.

Accessing the E-Commerce App

Access the E-Commerce settings by selecting the gear icon to reach the Admin Menu. Find the E-Commerce section and select the Manage subitem. This area is divided into different tabs for different payment gateways. Each payment gateway in the platform has a corresponding article in Docebo’s Knowledge Base. Refer to the list in the next section to learn how to configure each payment gateway.

Configuring Payment Gateways in the LMS

Each payment gateway in the platform has a corresponding article in Docebo’s Knowledge Base. Refer to the list below to learn how to configure each payment gateway:

In case you are configuring your payment gateway to be used with your custom domain, we suggest checking the integrity of your HTTPS encryption using one of the following tools:

E-Commerce Settings

In this tab, begin by setting the currency symbol as well as the currency that will be used in this module. The currency symbol is the value shown to users while they are purchasing a course or learning plan. You can use any symbol or word you prefer (eg. € or euro), but remember that this text field only displays a few characters; long words and phrases may not fit properly on the page. The currency is the standard value passed to your payment gateway, regardless of the currency symbol you inserted in the corresponding field.


Find here the complete list of the currencies supported by Docebo. Please note that some currencies supported by your platform may not be accepted by the payment gateway you selected, so remember to check before making your selection. When you’re finished, press Save Changes.


This feature allows you to create and manage coupons that final users can use to get discounts when purchasing one or more courses. To create a new coupon, move to the Coupons tab in the Settings menu, then select the New coupon button and configure the coupon details:

  • Code: define your own code, or click Generate to automatically generate e random one
  • Description: type the coupon description that will be displayed to users
  • Coupon validity: set whether the coupon is valid for predefined period, or has no expiry date
  • Coupon usage: set whether the coupon can be used to get discounts upon purchasing any course by flagging the corresponding option. When the option is not flagged, you will have to configure the courses where the coupon is usable after the coupon creation, as described later on in this section of the article. Select the single-use coupon option to limit the coupon usage to one time per user, or the Limit the usage of this coupon to n users option to make the coupon usable by a set number of users. The coupon code will be deactivated after being used by the set number of users.
  • Coupon discount: set the discount value, either a percentage or an amount discount
  • Minimum order: define if the coupon will be accepted only when the cart amount is higher than the predefined value

Click Confirm to create the coupon. Once the coupon has been created, it will be listed at the bottom of the page. If you did not enable the option This coupon can be used on all courses, click on the list icon in the Assigned To column to select the courses where the coupon will be usable. If you enabled the option, the coupon will be usable in all courses and learning plans.

Click on the details icon to get a list for a summary on the coupon usage.

Please note that you cannot re-use coupon codes, even after they have expired or have been deleted. Docebo stores the old coupon codes for transaction history, so coupon codes must be unique.

Setting up Wire Transfer Payments

Use the parameters of this tab to activate and configure wire transfer payments in your platform. Enable wire transfer payments using the dedicated checkbox and configure the parameters in this area. In the Bank Account Details section, type the payment details that will be shared with users so that they can carry out payments.

You can differentiate payment instructions depending on the country of your users using the available languages from the dropdown. As an example, if you are selling your courses in Italy and Canada, and your company has headquarters in Italy and in Canada, you can provide learners with different bank details depending on the region they are buying from. Users will see the payment instructions you configured according to their selected language.

Finally, define the number of days that users will have to complete payments. Set this field to zero to give the user unlimited time to carry out payments.

Selling a Course

Users will be able to buy a course and use a coupon only after you have managed the E-Commerce options inside the Courses area. Reach the Admin menu from the sidebar and choose Courses subitem from the E-Learning section. Find the course you want to sell, select the menu icon in the course’s row, then choose Advanced Settings from the dropdown menu.

Go to the Catalog Options tab to check that the Course Subscriptions are open and the Enrollment Policy is free.

Screen Shot 2016-07-18 at 11.24.41 AM

Then access the E-Commerce tab, flag the the sell course box and set the price. Press Save Changes when you’re finished. Remember: To be visible to users, the course has to be included into a catalog.

Checking E-Commerce Transactions

You can track transactions paid via electronic payments by accessing the Admin Menu and selecting Transactions from the E-Commerce section. This page lists all of the attempted e-commerce transactions in chronological order, more recent transactions first. Use the From-To date selector to filter data according to a timeframe, the Status dropdown to show transactions with a specific status and the free text search to search among transactions using one or more keywords.

Transaction details shown in this page include the transaction ID (assigned by the platform, chronologically), the user performing the transaction, transaction date and time, status and total amount paid. Transaction may have one of the following statuses:

  • Successful: The confirmation that the transaction was successful has been received
  • Failed: Transaction was unsuccessful or declined
  • Pending: Awaiting callback from payment gateway for success or failure
  • Canceled: The gateway returned a “canceled” callback, because the user clicked Cancel in the payment gateway portal or the Superadmin manually canceled the transaction in the e-commerce Transactions page

The credit card icon identifies transactions paid via electronic payments, while the bank icon is for transactions paid via wire transfer. When these icons are grey, it means that the payment has not been received yet; when they are green, the payment is recorded as correctly settled.

Click on the edit icon to check the transaction details, add notes and manually mark the payment as received, if needed. Credit card payments are usually automatically marked as received, and the transaction ID is displayed in the Transaction ID field. The Transaction ID field is set to none until the payment is accredited, but you can manually flag the payment as received to confirm the course purchase.

Wire transfer payments must be manually confirmed by the Superadmin, and failing to confirm the payment results in the user not being able to access the course. Optionally, you can configure the Wire transfer transaction marked as paid notification to notify the user when the payment is confirmed. Use the Wire transfer transaction cancelled notification to inform the user when the payment is refused, instead.

Please note that when the user buys a learning plan, the payment can be marked as received either for a single course or for the whole learning plan by selecting all of the courses within the learning plan or the Mark all items as paid checkbox. Users will be in the course waiting list until the payment is received and confirmed.

Buying Courses and Using Coupons (for End Users)

In order to learn more about purchasing courses and using coupons in the Docebo LMS, refer to this shopping cart article in the Knowledge Base.

Best Practices

– Currently, you can set the price of courses and learning plans in only one currency in the platform, so the price of a learning  object is unique. This means that if you set a value for 100, it can be $100, €100, £100, etc., depending on the currency that you set at domain level. If you want a single learning object to use multiple currencies, you need to use Docebo’s Multidomain feature, assigning each domain its own currency, then duplicating the learning object with different prices and different currencies. If you don’t have the Multidomain feature but you still want a learning object to be set for different prices, you can duplicate the learning object in your single domain then set different price values for each of the learning objects, but note that you will have the same currency for both learning objects.

– If you cannot find your currency when selling courses, you can use any other currency defined in the platform.

– For transaction refunds, please keep in mind that they are managed directly by the payment gateways. No refund actions can be performed by Docebo or within your learning platform.

– Please note that when your users purchase an ILT or a webinar session for which you set pending Admin approval as enrollment policy and a max subscription quota in the course’s advanced properties, if the max subscription quota is reached for the purchased session, users will be placed in the session’s waiting list. Remember that in this case you have to manually move and manage the users enrolled to the course. For more information, refer to this article.