Paddle Billing
RevenueCat currently supports web payments through Paddle. This allows you to let subscribers subscribe on your own website using Paddle, and automatically unlock access based on the Paddle subscription through the Purchases SDK.
Remember that it is against Apple's App Store terms to provide a different system than in-app purchases for digital goods. Make sure you don't promote your web subscriptions from inside your app. Your app may get rejected, or banned.
1. Create a new Paddle appโ
Paddle has a different environment for sandbox and production. As environments are independent, you will need to create a new Paddle app for each environment and mark it as sandbox if it's connected to sandbox, otherwise it will be marked as production.
2. Create products and prices on Paddleโ
You can create products and prices following the Paddle Product Setup guide.
3. Create subscriptions on Paddleโ
The typical setup consists of a website that uses Paddle checkout to tokenize the customer payment information, and send this information to your server. After that, your server will be able to subscribe your customer to a product.
On the server-side, you can use Paddle's REST API or their library for your favorite programming language.
Alternatively, you can also use the Paddle dashboard for manually creating the subscriptions for testing.
4. Add your Paddle products to your project's entitlementsโ
Add your Paddle products to your project's entitlements to easily group the products for your app. RevenueCat will send Paddle subscriptions to your app the same way we do for the other app stores.
5. Send Paddle tokens to RevenueCatโ
Failure to complete this step will result in untracked Paddle subscriptions in RevenueCat.
The following sections provide step-by-step instructions for two methods of sending Paddle tokens to RevenueCat. Whether you prefer a manual integration through the API or automated processing using the "Track new purchases from server-to-sever notifications" feature, this section will guide you in setting up your configuration to ensure all purchases are tracked.
Manually through our APIโ
You can send your Paddle subscriptions to RevenueCat through the POST receipt endpoint.
The only required fields when sending your Paddle purchase to the RevenueCat API are the following:
fetch_token
: Your Paddle subscription ID (sub_...
) OR your Paddle transaction ID (txn_...
)app_user_id
: The App User ID that the subscription should be applied to
Headers
X-Platform
: Should be set topaddle
.Authorization
: It should beBearer YOUR_REVENUECAT_PADDLE_APP_PUBLIC_API_KEY
- Code
curl -X POST \
https://api.revenuecat.com/v1/receipts \
-H 'Content-Type: application/json' \
-H 'X-Platform: paddle' \
-H 'Authorization: Bearer YOUR_REVENUECAT_PADDLE_APP_PUBLIC_API_KEY' \
-d '{ "app_user_id": "my_app_user_id",
"fetch_token": "txn_xxxxxxxxxx"
}'
Track new purchases from server-to-server-notificationsโ
RevenueCat can automatically process PAddle tokens sent through server-to-server notifications. To enable automatic processing of Paddle purchases, ensure the following features are enabled:
Limitations of the Paddle integrationโ
- We support purchases that contain only one product. Multiple products on a single purchase are not supported.