Integrate Paddle

What is Paddle

Paddle is a complete billing solution for SaaS businesses to manage payments, taxes, subscriptions, and more. Connect your Partnero and Paddle accounts to simplify customer purchase tracking and sync data with your account effortlessly.


How to integrate Paddle

  1. Log in to Partnero and open the program you want to work with.
  2. Go to Integration under Program.
  3. Scroll down to Third-party integrations and click Authorize next to Paddle:
  4. To find your Paddle API key, sign in to your Paddle dashboard, navigate to Developer Tools, and select Authentication. Click to Generate an API key:
  5. Then copy the API key and paste to Partnero. Click Authorize.
  6. Return to the Partnero Integration window and click Integration guide next to Paddle:

Now you can either follow the remaining integration steps in the in-app modal, or continue reading below.


Integrating via API

When you log transactions for a customer through Paddle, it's crucial to notify Partnero about the exact customer in question. At Partnero, we utilize a unique customer key to distinguish each client. You can assign any identifier to this key that you already use on your platform to recognize the customer.

Creating a customer

 POST https://api.paddle.com/customers  
 {     "name": "Sam Miller",     "email": "sam@example.com"     "custom_data": {         "customer_key": "CUSTOMER_KEY_VALUE_HERE"     } }      

Creating a transaction

 POST https://api.paddle.com/transactions  {   "items": [     {       "quantity": 20,       "price_id": "pri_01gsz91wy9k1yn7kx82aafwvea"     },     {       "quantity": 1,       "price_id": "pri_01gsz96z29d88jrmsf2ztbfgjg"     }   ],   "customer_id": "ctm_01h8441jn5pcwrfhwh78jqt8hk",   "address_id": "add_01h848pep46enq8y372x7maj0p",   "currency_code": "USD",   "collection_mode": "manual",   "billing_details": {     "enable_checkout": false,     "purchase_order_number": "PO-123",     "payment_terms": {       "interval": "day",       "frequency": 14     }   },   "billing_period": {     "starts_at": "2023-08-01T00:00:00Z",     "ends_at": "2024-07-31T23:59:00Z"   },   "custom_data": {        "customer_key": "CUSTOMER_KEY_VALUE_HERE"   } }      
For more information on how to add custom data to Paddle, please refer to the Paddle custom data documentation.

Front-end integration

If you can access a customer key on the front end, you can configure settings for each checkout session initiated through a link or when the Paddle.Checkout.open() function is executed.

Passing data via HTML attributes

 <a     href="#"         data-theme="light"     data-items='[       {         "priceId": "pri_01hdzrq6nsbgbgwndhp3tpjjyz",         "quantity": 1       },       {         "priceId": "pri_01he2bv3m8asfd7caz1mf8vgzb",         "quantity": 1       }     ]'     data-custom-data='{         "customer_key": "CUSTOMER_KEY_VALUE_HERE"     }' >     Buy now </a>      

Passing data via JavaScript properties

 Paddle.Checkout.open({   settings: {     theme: "light",   },   items: [     {       priceId: 'pri_01gs59hve0hrz6nyybj56z04eq',       quantity: 1     },     {       priceId: 'pri_01gs59p7rcxmzab2dm3gfqq00a',       quantity: 1     }   ],   customData: {     "customer_key": "CUSTOMER_KEY_VALUE_HERE"   },   customer: {     email: "weloveyourproduct@paddle.com",     address: {       countryCode: "US",     }   } });      

For more information on adding settings to Paddle checkout, please refer to the Paddle settings for each checkout.