LifterLMS PayPal Setup: One-Time and Recurring Payments

How to set up PayPal for LifterLMS with the PayPal Payments add-on, how recurring payments work with and without Reference Transactions, how to test in the sandbox, and when Stripe is the better choice.

  • Add as a preferred source on Google
Illustration for “LifterLMS PayPal Setup: One-Time and Recurring Payments”

Many buyers trust PayPal more than a card form on a site they have never visited, and in some markets offering it lifts conversion noticeably. Setting up PayPal for LifterLMS is straightforward for one-time payments. Recurring payments are where it gets complicated, because of a PayPal account feature that new accounts can no longer get.

This guide covers the LifterLMS PayPal add-on from start to finish: what it supports, how to connect it, how to test in the PayPal sandbox, how subscriptions behave with and without Reference Transactions, and how it compares with Stripe. By the end you will know whether PayPal alone is enough for your pricing, or whether you should run it alongside another gateway.

What the LifterLMS PayPal add-on supports

PayPal is not part of the free LifterLMS plugin. It comes from the paid LifterLMS PayPal Payments add-on, which the LifterLMS team describes as accepting PayPal transactions for one-time and recurring payments. Its documentation lists LifterLMS 6.0 or later, WordPress 5.4 or later and PHP 7.4 or later as requirements.

Once set up, buyers choose PayPal as a payment method on your normal LifterLMS checkout and approve the payment with their PayPal account. Successful payments enroll the student automatically, exactly as with any other gateway.

The short version of its capabilities:

ScenarioWorks with PayPal?Notes
One-time course or membership purchaseYesThe straightforward case
Subscriptions and payment plans, automatic renewalOnly with Reference TransactionsA PayPal account feature PayPal no longer enables for new accounts
Subscriptions and payment plans, manual renewalYesThe student pays each instalment themselves when it is due
Automatic retry of failed renewalsOnly with Reference TransactionsPer the LifterLMS retry documentation

Install and connect PayPal

The add-on connects to PayPal with API credentials from your PayPal business account.

  1. Install and activate the add-on from your LifterLMS account downloads, and activate your license so you receive updates.
  2. In your PayPal business account, open the API Access page. Choose the option for NVP/SOAP API credentials to reveal your API username, password and signature.
  3. In WordPress, go to LifterLMS > Settings > Checkout and open the PayPal section.
  4. Paste the live API username, password and signature.
  5. Tick the option to enable PayPal and click Save Changes.

The LifterLMS documentation notes that the credentials can be defined in wp-config.php instead of being stored in the database, which is the safer choice on sites where several people have admin access. The getting started with LifterLMS PayPal guide shows the current settings screen.

Check your store Currency on the Checkout tab too. It must be a currency your PayPal account can receive.

Test in the PayPal sandbox

PayPal provides free sandbox accounts for testing. Sandbox credentials are separate from your live ones:

  1. Sign in to the PayPal Developer Dashboard and create a sandbox Business account, using an email address different from your live account.
  2. Open the sandbox account's profile and copy its API credentials.
  3. Enter them in the PayPal settings and enable sandbox mode. Sandbox credentials do not work without it.
  4. Create a sandbox Personal account to act as the buyer.

LifterLMS has a step-by-step guide to creating PayPal sandbox API credentials. Run a one-time purchase and a recurring purchase with the sandbox buyer and confirm the order status, the enrollment and the receipt email. Sandbox accounts always have Reference Transactions enabled, so the sandbox can make recurring payments look easier than they will be in live mode. Test renewal behaviour with your real account's status in mind.

Recurring payments and Reference Transactions

Reference Transactions are a PayPal feature that lets a merchant charge a buyer's PayPal account again later without the buyer approving each payment. LifterLMS PayPal relies on it for automatic subscription renewals.

The problem: PayPal has stopped enabling Reference Transactions for new accounts. The LifterLMS documentation is direct about it: if your account does not already have the feature, contacting PayPal support will not turn it on. Accounts that already have it can keep using it.

To find out where you stand, open the PayPal section under Settings > Checkout and click Check Now in the Reference Transactions area. The check runs against your live account. The Reference Transactions documentation explains the result.

With Reference Transactions

Subscriptions behave like they do with Stripe. LifterLMS schedules each renewal, charges the buyer's PayPal account, and retries failed payments according to the retry rules when Retry Failed Payments is on.

Without Reference Transactions: manual renewals

Recurring plans still work, but each renewal is paid by the student:

  1. When an instalment is due, the order is put On Hold and the student temporarily loses access to the course or membership.
  2. The student is notified, on screen, by email, or both, through the Gateway: Manual - Payment Due notification, which you can edit under Settings > Notifications.
  3. The student logs in, opens the order on their dashboard and pays the instalment with PayPal.
  4. The payment reactivates the order and restores access.

This is workable for a six-instalment payment plan where buyers expect to pay each month. It is a poor fit for an ongoing membership, because every renewal depends on the student remembering to act, and every lapse briefly locks them out. LifterLMS describes the flow in using manual recurring payments with PayPal.

PayPal versus Stripe for LifterLMS

PayPal Payments add-onStripe add-on
One-time paymentsYesYes
Automatic subscription renewalsOnly with Reference TransactionsYes
Failed payment retriesOnly with Reference TransactionsYes
Card entry on your own checkoutNo, buyers use their PayPal accountYes, with the default payment flow
Buyer without a PayPal accountDepends on PayPal's options for the buyer's countryPays by card
Typical roleSecond option for buyers who prefer PayPalMain gateway

For most course businesses the answer is both: Stripe as the main gateway, PayPal as an extra option. If you sell subscriptions and your PayPal account lacks Reference Transactions, consider offering PayPal only on one-time plans. Our LifterLMS Stripe guide covers the other half of that setup. A third route, recommended in the LifterLMS documentation for accounts without Reference Transactions, is selling through WooCommerce with a PayPal extension that supports subscriptions; see LifterLMS with WooCommerce before you commit to it, because it changes how your whole store works.

Show PayPal only on one-time plans

LifterLMS has no per-plan gateway setting, but core exposes a filter that decides whether a gateway can process a given access plan. This snippet hides PayPal on recurring plans so subscribers are steered to Stripe. Add it to a small custom plugin:

<?php
/**
 * Plugin Name: LLMSX PayPal One-Time Only
 */

// The gateway ID is the "section" value in the URL of the gateway's settings screen.
const LLMSX_PAYPAL_GATEWAY_ID = 'paypal';

add_filter( 'llms_can_gateway_process_access_plan', 'llmsx_paypal_one_time_only', 10, 4 );
function llmsx_paypal_one_time_only( $can_process, $plan, $order, $gateway_id ) {

	if ( LLMSX_PAYPAL_GATEWAY_ID !== $gateway_id || ! $can_process ) {
		return $can_process;
	}

	// Recurring access plans and existing recurring orders.
	if ( ( $plan && $plan->is_recurring() ) || ( $order && $order->is_recurring() ) ) {
		return false;
	}

	return $can_process;
}

Confirm the gateway ID on your site before using it: open the PayPal settings and look at the section= parameter in the address bar. Test on staging, and make sure another gateway that supports recurring payments is enabled, or recurring plans will have no payment method at all.

Common PayPal problems

  • "Security header is not valid". The API credentials do not match the mode. Sandbox credentials with sandbox mode off, or live credentials with it on, are the usual cause. Re-copy all three values without extra spaces.
  • Subscribers keep losing access every month. Your account does not have Reference Transactions, so renewals are manual. Tell students clearly, or move subscriptions to Stripe.
  • Orders stuck on Pending Payment. The buyer left PayPal before returning to your site. Check the order notes; the buyer can try again from checkout.
  • Currency errors. The store currency is not one your PayPal account accepts.

Frequently asked questions

Is PayPal included in free LifterLMS?

No. It requires the LifterLMS PayPal Payments add-on. Core only includes the manual gateway.

Can I still get Reference Transactions from PayPal?

According to LifterLMS, PayPal is not accepting new users for the feature, and support cannot enable it. Accounts that already have it keep it.

Can I use PayPal for payment plans?

Yes. With Reference Transactions, instalments are charged automatically. Without them, each instalment is paid manually by the student from their dashboard.

Can I offer PayPal and Stripe together?

Yes. Enable both gateways on the Checkout tab and buyers choose at checkout. Drag the rows in the gateway table to set which appears first.

Next steps

Click Check Now before you design your pricing. If Reference Transactions are available, PayPal can carry subscriptions; if not, use it for one-time sales and let Stripe handle renewals.

If you are moving subscribers between gateways, untangling manual renewals, or need a payment setup the add-ons do not cover, our LifterLMS integrations service handles exactly that work. Contact us with your current setup and we will suggest a plan.

Add LifterLMS Expert to your preferred sources

Add lifterlmsexpert as a preferred source on Google, or open this article in your AI assistant to use it as a source.

  • Add as a preferred source on Google
Free consultation

Prefer expert help over DIY?

Skip the trial and error. Get specialist LifterLMS help and ship faster.

Talk to a LifterLMS Expert Explore our services

Replies within one business day