Docs

Paddle IDs

Paddle IDs are unique identifiers for entities in Paddle. They're easily identifiable by type and lexicographically sortable.

Every entity in Paddle has a unique identifier called a Paddle ID. Paddle IDs are made up of a prefix for the kind of entity, followed by a unique string of 26 alphanumeric characters.

Prefixes are typically three characters, but can be longer. They're distinctive, so it's easy to tell what kind of entity you're working with from a Paddle ID alone.

ID prefixes

EntityPrefixRegex
Addressadd_ ^add_[a-z\d]{26}$
Adjustmentadj_ ^adj_[a-z\d]{26}$
API keyapikey_ ^apikey_[a-z\d]{26}$
API key exposureapkexp_ ^apkexp_[a-z\d]{26}$
Businessbiz_ ^biz_[a-z\d]{26}$
Client-side tokenctkn_ ^ctkn_[a-z\d]{26}$
Customerctm_ ^ctm_[a-z\d]{26}$
Customer portal sessioncpls_ ^cpls_[a-z\d]{26}$
Discountdsc_ ^dsc_[a-z\d]{26}$
Discount groupdsg_ ^dsg_[a-z\d]{26}$
Eventevt_ ^evt_[a-z\d]{26}$
Notificationntf_ ^ntf_[a-z\d]{26}$
Notification logntflog_ ^ntflog_[a-z\d]{26}$
Notification settingntfset_ ^ntfset_[a-z\d]{26}$
Notification simulationntfsim_ ^ntfsim_[a-z\d]{26}$
Simulation runntfsimrun_ ^ntfsimrun_[a-z\d]{26}$
Simulation run eventntfsimevt_ ^ntfsimevt_[a-z\d]{26}$
Payment methodpaymtd_ ^paymtd_[a-z\d]{26}$
Pricepri_ ^pri_[a-z\d]{26}$
Productpro_ ^pro_[a-z\d]{26}$
Reportrep_ ^rep_[a-z\d]{26}$
Subscriptionsub_ ^sub_[a-z\d]{26}$
Transactiontxn_ ^txn_[a-z\d]{26}$

Some entities don't have Paddle IDs. Event types, simulation types, metrics, and pricing previews are reference data or calculated responses, so they don't have a persistent ID.

Work with IDs

Paddle automatically generates IDs for you when you create entities using the API or dashboard. Use Paddle IDs to refer to entities throughout the Paddle platform.

Create entities

When creating entities using the API, Paddle returns the new Paddle ID for the entity in the response.

Get entities

When reading, updating, or deleting entities, use the ID to refer to the correct entity. For example:

GET /products/{product_id}
product_id string required

Paddle ID of the product to get.

List entities

When working with list endpoints, Paddle uses the Paddle ID of the entity you're working with as the cursor for pagination.

GET /products?after={product_id}
after string

Return entities after the specified cursor.

product_id string

Paddle ID of the product to use as the cursor.

Relate entities

Where entities are related, use Paddle IDs to link them. For example:

  • When creating a price, pass a product_id to set the product that a price relates to.
  • When creating a transaction, pass a customer_id and address_id to set who to bill.
  • When the subscription.created event occurs, it includes the transaction_id of the transaction that resulted in this subscription being created.

Sort by ID

Paddle IDs are lexicographically sortable. Sorting by Paddle ID results in the same order as sorting by the creation date of an entity.

Was this page helpful?