API Documentation & SDKs
Subscriptions
Discounts
Licenses
Customers
Products
Payouts
Miscellaneous
List Products
Get a list of all products associated with your account.
import DodoPayments from 'dodopayments';
const client = new DodoPayments({
bearerToken: process.env['DODO_PAYMENTS_API_KEY'], // This is the default and can be omitted
});
async function main() {
// Automatically fetches more pages as needed.
for await (const productListResponse of client.products.list()) {
console.log(productListResponse.business_id);
}
}
main();
{
"items": [
{
"business_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"currency": "AED",
"description": "<string>",
"image": "<string>",
"is_recurring": true,
"name": "<string>",
"price": 123,
"price_detail": {
"currency": "AED",
"discount": 123,
"pay_what_you_want": true,
"price": 123,
"purchasing_power_parity": true,
"suggested_price": 123,
"tax_inclusive": true,
"type": "one_time_price"
},
"product_id": "<string>",
"tax_category": "digital_products",
"tax_inclusive": true,
"updated_at": "2023-11-07T05:31:56Z"
}
]
}
Authorizations
Bearer authentication header of the form Bearer <token>
, where <token>
is your auth token.
Query Parameters
Page size default is 10 max is 100
x >= 0
Page number default is 0
x >= 0
List archived products
Filter products by pricing type:
true
: Show only recurring pricing products (e.g. subscriptions)false
: Show only one-time price productsnull
or absent: Show both types of products
Response
Unique identifier for the business to which the product belongs.
Timestamp when the product was created.
Indicates if the product is recurring (e.g., subscriptions).
Unique identifier for the product.
Represents the different categories of taxation applicable to various products and services.
digital_products
, saas
, e_book
, edtech
Timestamp when the product was last updated.
AED
, ALL
, AMD
, ANG
, AOA
, ARS
, AUD
, AWG
, AZN
, BAM
, BBD
, BDT
, BGN
, BHD
, BIF
, BMD
, BND
, BOB
, BRL
, BSD
, BWP
, BYN
, BZD
, CAD
, CHF
, CLP
, CNY
, COP
, CRC
, CUP
, CVE
, CZK
, DJF
, DKK
, DOP
, DZD
, EGP
, ETB
, EUR
, FJD
, FKP
, GBP
, GEL
, GHS
, GIP
, GMD
, GNF
, GTQ
, GYD
, HKD
, HNL
, HRK
, HTG
, HUF
, IDR
, ILS
, INR
, IQD
, JMD
, JOD
, JPY
, KES
, KGS
, KHR
, KMF
, KRW
, KWD
, KYD
, KZT
, LAK
, LBP
, LKR
, LRD
, LSL
, LYD
, MAD
, MDL
, MGA
, MKD
, MMK
, MNT
, MOP
, MRU
, MUR
, MVR
, MWK
, MXN
, MYR
, MZN
, NAD
, NGN
, NIO
, NOK
, NPR
, NZD
, OMR
, PAB
, PEN
, PGK
, PHP
, PKR
, PLN
, PYG
, QAR
, RON
, RSD
, RUB
, RWF
, SAR
, SBD
, SCR
, SEK
, SGD
, SHP
, SLE
, SLL
, SOS
, SRD
, SSP
, STN
, SVC
, SZL
, THB
, TND
, TOP
, TRY
, TTD
, TWD
, TZS
, UAH
, UGX
, USD
, UYU
, UZS
, VES
, VND
, VUV
, WST
, XAF
, XCD
, XOF
, XPF
, YER
, ZAR
, ZMW
Description of the product, optional.
URL of the product image, optional.
Name of the product, optional.
Price of the product, optional.
The price is represented in the lowest denomination of the currency. For example:
- In USD, a price of
$12.34
would be represented as1234
(cents). - In JPY, a price of
¥1500
would be represented as1500
(yen). - In INR, a price of
₹1234.56
would be represented as123456
(paise).
This ensures precision and avoids floating-point rounding errors.
AED
, ALL
, AMD
, ANG
, AOA
, ARS
, AUD
, AWG
, AZN
, BAM
, BBD
, BDT
, BGN
, BHD
, BIF
, BMD
, BND
, BOB
, BRL
, BSD
, BWP
, BYN
, BZD
, CAD
, CHF
, CLP
, CNY
, COP
, CRC
, CUP
, CVE
, CZK
, DJF
, DKK
, DOP
, DZD
, EGP
, ETB
, EUR
, FJD
, FKP
, GBP
, GEL
, GHS
, GIP
, GMD
, GNF
, GTQ
, GYD
, HKD
, HNL
, HRK
, HTG
, HUF
, IDR
, ILS
, INR
, IQD
, JMD
, JOD
, JPY
, KES
, KGS
, KHR
, KMF
, KRW
, KWD
, KYD
, KZT
, LAK
, LBP
, LKR
, LRD
, LSL
, LYD
, MAD
, MDL
, MGA
, MKD
, MMK
, MNT
, MOP
, MRU
, MUR
, MVR
, MWK
, MXN
, MYR
, MZN
, NAD
, NGN
, NIO
, NOK
, NPR
, NZD
, OMR
, PAB
, PEN
, PGK
, PHP
, PKR
, PLN
, PYG
, QAR
, RON
, RSD
, RUB
, RWF
, SAR
, SBD
, SCR
, SEK
, SGD
, SHP
, SLE
, SLL
, SOS
, SRD
, SSP
, STN
, SVC
, SZL
, THB
, TND
, TOP
, TRY
, TTD
, TWD
, TZS
, UAH
, UGX
, USD
, UYU
, UZS
, VES
, VND
, VUV
, WST
, XAF
, XCD
, XOF
, XPF
, YER
, ZAR
, ZMW
Discount applied to the price, represented as a percentage (0 to 100).
The payment amount, in the smallest denomination of the currency (e.g., cents for USD).
For example, to charge $1.00, pass 100
.
If pay_what_you_want
is set to true
, this field represents
the minimum amount the customer must pay.
Indicates if purchasing power parity adjustments are applied to the price. Purchasing power parity feature is not available as of now.
one_time_price
Indicates whether the customer can pay any amount they choose.
If set to true
, the price
field is the minimum amount.
A suggested price for the user to pay. This value is only considered if
pay_what_you_want
is true
. Otherwise, it is ignored.
Indicates if the price is tax inclusive.
Indicates if the price is tax inclusive
import DodoPayments from 'dodopayments';
const client = new DodoPayments({
bearerToken: process.env['DODO_PAYMENTS_API_KEY'], // This is the default and can be omitted
});
async function main() {
// Automatically fetches more pages as needed.
for await (const productListResponse of client.products.list()) {
console.log(productListResponse.business_id);
}
}
main();
{
"items": [
{
"business_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"currency": "AED",
"description": "<string>",
"image": "<string>",
"is_recurring": true,
"name": "<string>",
"price": 123,
"price_detail": {
"currency": "AED",
"discount": 123,
"pay_what_you_want": true,
"price": 123,
"purchasing_power_parity": true,
"suggested_price": 123,
"tax_inclusive": true,
"type": "one_time_price"
},
"product_id": "<string>",
"tax_category": "digital_products",
"tax_inclusive": true,
"updated_at": "2023-11-07T05:31:56Z"
}
]
}