---
title: "How to Set Up In-App Purchases"
source: "https://docs.nexcess.com/software/learndash/set-up-in-app-purchases/"
description: "Introduction In-app purchases let you monetize your content by offering paid courses, memberships, or access tiers directly inside the Learndash App. This guide…"
vertical: "Software"
area: "LearnDash"
date: "2025-09-22"
last_modified: "2025-09-22"
---

# How to Set Up In-App Purchases

## **Introduction**

In-app purchases let you monetize your content by offering paid courses, memberships, or access tiers directly inside the Learndash App.

This guide walks you through enabling in-app purchases, configuring product settings, syncing with app stores, organizing subscriptions, and testing transactions.

## **Enable In-App Purchases in Your Learndash App**

1. In your WordPress Dashboard, go to **Learndash App > Components**.
2. Toggle on **In-App Purchases**.
3. Click **Save Changes**.

## **Configure In-App Purchase Settings**

1. Navigate to **Learndash App > Settings > In-App Purchases**.
2. **Require Purchase** – Check this to block all content until the user purchases a product.
3. Under **Terms of Service** and **Privacy Policy**, select the appropriate WordPress pages.
4. Scroll to **Products Screen** and enter a custom **Sales Message** (e.g., “Choose your plan to unlock access”).
5. Click **Save Changes**.

## **Add the Products Screen to Your App Menu**

1. Go to **Learndash App > Menus**.
2. Under the Learndash **App**, find **Products**.
3. Click **Add to Menu** under either **Tab Bar Menu** or **More Screen Menu**.
4. Click **Save Menu**.

## **Create and Sync In-App Products**

1. Navigate to **Learndash App > In-App Purchases > Products**.
2. Click **Add New** and fill in:  
    
    - **Product Name** (match the name used in App Store Connect and Google Play Console)
    - **Tagline** (optional)
    - **Description** (optional)
    - **Benefits** – Short bullet points (e.g., ✓ Access to all lessons)
3. **Display on Products Screen** – Check if it should appear in the Products Screen.
4. Under **Product Type**, select **Paid** or **Free**.

### **Syncing with Apple**

1. Check **Enable** under **iOS Store**, then click **Sync with Apple**.
2. Select your product (must be at least “Ready to Submit”).

### **Syncing with Google Play**

1. Check **Enable** under **Android Store**, then click **Sync with Google**.
2. Select your product (must be **Active** in Google Play Console).

### **Integration Type**

Choose one:

- **LearnDash Course** – Only courses marked Closed, Recurring, or Buy Now are eligible.
- **Membership** – Select a supported membership plugin.

5. Click **Publish** to save the product.

## **Organize Subscription Groups**

1. In **App Store Connect**, create a Subscription Group under **Features > Subscriptions**.
2. Copy the group name.
3. In WordPress, go to **Learndash App > In-App Purchases > Subscription Groups**.
4. Click **Add New**, paste the group name, and click **Save**.
5. Edit each related product and assign it to this subscription group.

## **Reorder Products**

1. Navigate to **Learndash App > In-App Purchases > Products**.
2. Drag and drop the products to reorder them (e.g., Free > Basic > Premium).
3. This order reflects in the Products Screen and purchase modals.

## **Test Purchases in the Test App**

1. Install your Test App on a device.
2. Log in with any user (if **Require Purchase** is enabled, they’ll be redirected).
3. Tap **View** on a product – Test Apps treat paid items as free.
4. Confirm access to the linked course or membership.
5. Go to **Transactions** and check for entries marked **(Test App)**.
6. Use **Revoke** to reset access and retest.

## **Test Purchases in the Release App**

### **iOS (TestFlight)**

1. Download your **IPA** file from Build History.
2. Upload to TestFlight and invite testers.
3. Test in-app purchases without being charged.

### **Android (Internal Testing)**

1. Upload the **APK** to a Google Play Console testing track.
2. Invite testers and install using the testing URL.
3. Complete purchase flows using Google’s billing system (no real charges for test users).

## **Manage Transactions**

Go to **Learndash App > In-App Purchases > Transactions** to:

- View all purchases (Test and Release Apps)
- **Revoke** test purchases (safe to reset access)
- **Revoke** release purchases only if necessary (removes access but doesn’t issue a refund)

Note: Refunds must be issued directly through Apple or Google Play.

## **Troubleshooting and FAQs**

**Q: Why aren’t my products showing in the app?  
 A: Ensure each product is synced and has **Approved** (Apple) or **Active** (Google) status.

**Q: I updated the pricing in the app stores, but it’s not reflected.  
 A: Click **Sync** again and force-close the app to refresh product data.

**Q: Revoke isn’t resetting Test App purchases.  
 A: Make sure you used the **Revoke** button under **Transactions**, then relaunch the Test App.

**Q: Members are subscribing to multiple plans.  
 A: Check that all subscription products are correctly assigned to a **Subscription Group**.

**Q: Can I offer a free product as part of the Products Screen?  
 A: Yes. Mark it as **Free** and integrate it with a LearnDash course or membership.
