Giving your customers the option to purchase your courses through different payment gateways will give them flexibility and ease their access to your valuable content. The LearnWorlds platform supports only 1 payment gateway at a time. However, some payment gateways, such as PayPal, allow you to create HTML payment buttons for accepting payments.

In this case, you would see the incoming payment and then do a manual enrollment of the user to the course he/she has bought or automate the process via Zapier!

What you will get by following the below procedure is two different payment methods for the same course: LearnWorlds’ built-in button that can be connected with Stripe, 2ChekOut or Shopify and an additional button for PayPal.

Let’s see how to create your own payment button through PayPal.

For a Buy Now/Pay Now button:

-Log in to your PayPal account and locate the Paypal button creation page.

-Enter Payment details. Here you can add the course/service you are selling, set a tracking number or change your currency.

Note that you should enter the "Course ID" as the "Item ID" in every button you create since you'll have to create a new button for every item you offer in your LearnWorlds school. This article describes How to find the id of your product (course/bundle id)

- Then you may Customize button text and appearance. You can change the appearance and text of the default PayPal button or you can enter a URL to use your own button image.

-Find and copy the code for the new button you have just created so you can then add it in your LearnWorld.

LearnWorlds platform offers two different ways to display the PayPal payment button: with 2 payment buttons in one template or with 2 different templates.

Option A - With two payment buttons in a template
Access the page you want to add the button of a second payment option (usually a course page).

Select the element or button (already added from our templates) and duplicate it

To link the new button with PayPal, select it

and from the formatting bar click on the "Insert HTML code” button.

Paste the code in the box and hit "update” to be able to see and further edit your new button.

Depending on the customization and appearance settings you chose earlier, two payment buttons could look like this!

Option B - With two different templates

You may want to offer the two different payment methods, in different templates. 

We recommend adding the PayPal button in a new embed template as shown below.

Paste your code in the embed template and hit save.

Modify background color and template’s position to accomplish a continuity with your first payment template.

This is how your two payment templates could look like :)

  • To find Paypal logos HTML codes, kindly visit this link.

  • If you wish to take your customers back to your school after PayPal Checkout page, add to the PayPal buttons as a return URL, your school's landing page URL (which will be accessible to logged out users too).  Please find the respective instructions to achieve that, here (par. no 6)


Now all you have to do is, once you see that you have received a PayPal payment from a learner, go ahead and manually enroll them in the relevant course.


Hmmm...And what if manual enrollment is not a feasible solution for your school’s size? 

No worries at all. With LearnWorlds you can automate this procedure through Zapier. (Note that the Zapier automation at this stage can be applied only for individual courses and not subscriptions.)

Zapier is a tool that allows you to connect apps you use every day to automate tasks and save time. 

To automate LearnWorlds enrollment each time you receive a PayPal payment, we suggest creating an account and “Make a Zap”!

Let’s define “trigger” and “action”.

By typing in Paypal you’ll be able to select the app as a trigger.

Then you may select “Successful Sale” and “Save + continue”

Zapier will then prompt to visit your PayPal IPN settings to add a URL as the IPN URL. You can do so, by (1)  clicking on the “Copy to clipboard” and (2) click on the PayPal IPN settings link.

Once you’re redirected and login to your PayPal account, kindly select the “Choose IPN Settings” button.

paste the copied IPN URL, select the “Receive IPN messages” and hit Save!

PayPal is now configured to trigger, let’s get back to our “Zap” and define LearnWorlds’ action! By selecting “Continue"

Zapier will pull out a “sample sale” 

so that you may continue with adding the “action”

By typing in LearnWorlds, you’ll be able to select our app as the “action”.

You may now select the Create and Enroll User

Kindly note here, that we suggest using the “Create and Enroll User” instead of “Enroll to Product” so that Zapier will automatically create a new user in your school and enroll him in the course in a single step.
If the user is already registered with the same email, Zapier will bypass the user creation step!

Next, you’ll be prompt to enter your LearnWorlds credentials. You can then select your account and click “Save+Continue”.

The next step in Zapier will be to set enrollment details. 

To use variables for each required fields, select the grey icon

Click on the First Name and Last Name variables for the “Full Name” field

Click on the Payer Email for the “Email” field

From the drop-down menu, you can select the course that the learner chose to enroll

Remember to set up Item "Number1" for the "Product ID"

In the next two optional fields, you may enter a different price or a "Transaction ID" for your records (e.g. "Added via Zapier"). 

The "Transaction ID" record will reflect in this field, under your Sales records: 

If the user is manually enrolled in the course by the admin, the field is assigned the value "Added by admin". The same value is assigned if the user was enrolled via Zapier if the "Transaction ID" in the Zap is blank.

All it is left is to test your “Zap”

Tip! The "Number 1" variable entered in a previous step, returns an error on testing but there is no need to worry:) 

Feel free to skip the test and the Zap will work properly!

If you complete the test, you should receive the following confirmation screen 

and a test user will be created and enrolled in your course!

What about automating the enrollment procedure with our API? Here the procedure on how to enroll user to a product (available in Learning Center plan and above).