openapi: 3.1.0 info: title: "Paddle API" version: "1.0" contact: name: Paddle Seller Support team url: https://developer.paddle.com email: sellers@paddle.com license: name: Paddle Market Ltd. url: https://www.paddle.com/legal/terms termsOfService: https://www.paddle.com/legal/terms summary: The Paddle API lets you create, read, and update information in your Paddle Billing system. description: |- Paddle Billing is a complete subscription and recurring revenue management platform, designed for modern SaaS businesses. It helps you increase your revenue, retain customers, and scale your operations. The Paddle API lets you create, read, and update information in your Paddle Billing system. You can use it to integrate Paddle with your app or third-party solutions. See https://developer.paddle.com/ to learn more. externalDocs: url: https://developer.paddle.com/ description: Paddle Developer Center tags: - name: Checkout domains - name: Subscription history - name: Transactions description: Transaction entities calculate and capture revenue. They hold information about an amount that you're billing for. externalDocs: url: https://developer.paddle.com/api-reference/transactions/overview description: Transaction entity overview - name: Subscriptions description: Subscription entities describe a recurring billing relationship with a customer. They're closely related to transactions. externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/overview description: Subscription entity overview - name: Simulations description: Simulation entities describe a reusable configuration for testing webhooks. externalDocs: url: https://developer.paddle.com/api-reference/simulations/overview description: Simulations entity overview - name: Simulation types description: Simulation type entities are the kinds of simulation you can use when testing webhooks. externalDocs: url: https://developer.paddle.com/api-reference/simulation-types/overview description: Simulation types overview - name: Simulation runs description: Simulation run entities describe an attempt by Paddle to send simulated events for a notification simulation. externalDocs: url: https://developer.paddle.com/api-reference/simulation-runs/overview description: Simulation runs entity overview - name: Simulation run events description: Simulation run event entities describe a simulated event that happened as part of a notification simulation run. externalDocs: url: https://developer.paddle.com/api-reference/simulation-events/overview description: Simulation run events entity overview - name: Reports description: Report entities describe a report generated in your Paddle system. externalDocs: url: https://developer.paddle.com/api-reference/reports/overview description: Reports entity overview - name: Products description: Product entities describe the items that customers can purchase. They hold high-level product attributes. externalDocs: url: https://developer.paddle.com/api-reference/products/overview description: Product entity overview - name: Pricing preview description: Pricing previews are calculated totals for prices. externalDocs: url: https://developer.paddle.com/api-reference/pricing-preview/overview description: Pricing preview overview - name: Prices description: Price entities describe how much and how often you charge for your products. They hold charging information. externalDocs: url: https://developer.paddle.com/api-reference/prices/overview description: Price entity overview - name: Payouts description: Payouts are payments made by Paddle. - name: Payment methods description: Payment method entities hold information about a payment method a customer saved at checkout for use in the future. They're related to customer entities. externalDocs: url: https://developer.paddle.com/api-reference/payment-methods/overview description: Payment methods entity overview - name: Notifications description: Notification entities describe a notification for an event that happened in your Paddle system. externalDocs: url: https://developer.paddle.com/api-reference/notifications/overview description: Notification entity overview - name: Notification settings description: Notification settings entities describe subscriptions to events. They're also called notification destinations. externalDocs: url: https://developer.paddle.com/api-reference/notification-settings/overview description: Notification settings entity overview - name: Notification logs description: Notification logs are records of an attempt to deliver a notification. externalDocs: url: https://developer.paddle.com/api-reference/notification-logs/overview description: Notification logs entity overview - name: Metrics description: Metrics entities contain timeseries data about your Paddle account, including revenue, subscribers, and conversions. externalDocs: url: https://developer.paddle.com/api-reference/metrics/overview description: Metrics overview - name: IP addresses description: Get Paddle IP addresses. - name: Events description: Event entities describe something notable that happened in your Paddle system. externalDocs: url: https://developer.paddle.com/api-reference/events/overview description: Event entity overview - name: Event types description: Event types are actions that Paddle creates events for. externalDocs: url: https://developer.paddle.com/api-reference/event-types/overview description: Event types overview - name: Discounts description: Discount entities describe percentage or amount-based discounts for transactions. They're sometimes called coupons or promo codes. externalDocs: url: https://developer.paddle.com/api-reference/discounts/overview description: Discount entity overview - name: Discount groups description: Discount group entities let you organize your discounts by grouping them together. externalDocs: url: https://developer.paddle.com/api-reference/discount-groups/overview description: Discount Groups overview - name: Customer portals description: The customer portal lets customers manage their subscriptions, payment methods, and account information. Customer portal sessions hold authenticated links to the portal for a customer. externalDocs: url: https://developer.paddle.com/api-reference/customer-portals/overview description: Customer portals overview - name: Customers description: Customer entities hold information about the people and businesses that make purchases. They're related to addresses and businesses. externalDocs: url: https://developer.paddle.com/api-reference/customers/overview description: Customer entity overview - name: Client tokens description: Client token entities hold the details to authenticate Paddle.js in your frontend code. externalDocs: url: https://developer.paddle.com/api-reference/client-tokens/overview description: Client-side tokens entity overview - name: Businesses description: Business entities hold information about customer businesses. They're sub-entities of customers. externalDocs: url: https://developer.paddle.com/api-reference/businesses/overview description: Business entity overview - name: API keys description: API key entities hold details on the secure credentials that authenticate server-side requests to the Paddle API. externalDocs: url: https://developer.paddle.com/api-reference/about/api-keys description: API keys overview - name: Adjustments description: Adjustment entities describe post-billing adjustments to billed or completed transactions. externalDocs: url: https://developer.paddle.com/api-reference/adjustments/overview description: Adjustments entity overview - name: Addresses description: Address entities hold billing address information for a customer. They're sub-entities of customers. externalDocs: url: https://developer.paddle.com/api-reference/addresses/overview description: Address entity overview paths: /customers/{customer_id}/addresses: get: operationId: list-addresses summary: List addresses for a customer description: |- Returns a paginated list of addresses for a customer. Use the query parameters to page through results. By default, Paddle returns addresses that are `active`. Use the `status` query parameter to return addresses that are archived. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListAddressesQueryParams.order_by" - $ref: "#/components/parameters/DefaultStatusQuery" - $ref: "#/components/parameters/ListAddressesQueryParams.search" - $ref: "#/components/parameters/CustomerIdPathParam" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Address" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List addresses for a customer (200): summary: List addresses for a customer (200) value: data: - id: add_01hv8h6jj90jjz0d71m6hj4r9z status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Sales Office first_line: 8700 Edgemont Road second_line: null city: Phoenix postal_code: "85051" region: AZ country_code: US custom_data: null created_at: "2024-04-12T06:51:26.153Z" updated_at: "2024-04-12T06:51:26.153Z" import_meta: external_id: 59f25141-28c3-4447-b77c-dae5677537f0 imported_from: paddle_classic - id: add_01hv8gwdfkw5z6d1yy6pa3xyrz status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: California Office first_line: 5400 E Washington Drive, Floor 2 second_line: null city: San Jose postal_code: "95314" region: CA country_code: US custom_data: crm_id: 08bcfb7a-41d8-4747-9ade-3d885c287d0f created_at: "2024-04-12T06:45:53.267Z" updated_at: "2024-04-12T06:47:01.533006Z" import_meta: null - id: add_01hv8gq3318ktkfengj2r75gfx status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Head Office first_line: 4050 Jefferson Plaza, 41st Floor second_line: null city: New York postal_code: "10021" region: NY country_code: US custom_data: null created_at: "2024-04-12T06:42:58.785Z" updated_at: "2024-04-12T06:42:58.785Z" import_meta: null meta: request_id: d195779a-5cbe-41e1-8dbb-537057978d1b pagination: per_page: 50 next: https://api.paddle.com/customers/ctm_01hv6y1jedq4p1n0yqn5ba3ky4/addresses?after=add_01hv8gq3318ktkfengj2r75gfx has_more: false estimated_total: 3 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Addresses externalDocs: url: https://developer.paddle.com/api-reference/addresses/list-addresses description: List addresses for a customer x-permissions: - address.read post: operationId: create-address summary: Create an address for a customer description: |- Creates a new address for a customer. For tax calculation, fraud prevention, and compliance purposes, you must include a `postal_code` when creating addresses for some countries. For example, ZIP codes in the USA and postcodes in the UK. See: [Supported countries](https://developer.paddle.com/concepts/sell/supported-countries-locales) If successful, your response includes a copy of the new address entity. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Address" meta: $ref: "#/components/schemas/Meta" examples: Create an address for a customer (201): summary: Create an address for a customer (201) value: data: id: add_01hv8gq3318ktkfengj2r75gfx status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Head Office first_line: 4050 Jefferson Plaza, 41st Floor second_line: null city: New York postal_code: "10021" region: NY country_code: US custom_data: null created_at: "2024-04-12T06:42:58.785Z" updated_at: "2024-04-12T06:42:58.785Z" import_meta: null meta: request_id: dd6bbb71-6551-4e4a-843c-b10611cddb6e default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Addresses externalDocs: url: https://developer.paddle.com/api-reference/addresses/create-address description: Create an address for a customer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/AddressCreate" examples: Create an address for a customer (201): summary: Create an address for a customer (201) value: description: Head Office first_line: 4050 Jefferson Plaza, 41st Floor city: New York postal_code: "10021" region: NY country_code: US x-permissions: - address.write /customers/{customer_id}/addresses/{address_id}: get: operationId: get-address summary: Get an address for a customer description: Returns an address for a customer using its ID and related customer ID. parameters: - $ref: "#/components/parameters/AddressIdPathParam" - $ref: "#/components/parameters/CustomerIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Address" meta: $ref: "#/components/schemas/Meta" examples: Get an address for a customer (200): summary: Get an address for a customer (200) value: data: id: add_01hv8gq3318ktkfengj2r75gfx status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Head Office first_line: 4050 Jefferson Plaza, 41st Floor second_line: null city: New York postal_code: "10021" region: NY country_code: US custom_data: null created_at: "2024-04-12T06:42:58.785Z" updated_at: "2024-04-12T06:42:58.785Z" import_meta: null meta: request_id: 74671066-d786-4e0c-9eb4-418d168d3a19 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Addresses externalDocs: url: https://developer.paddle.com/api-reference/addresses/get-address description: Get an address for a customer x-permissions: - address.read patch: operationId: update-address summary: Update an address for a customer description: |- Updates an address for a customer using its ID and related customer ID. If successful, your response includes a copy of the updated address entity. parameters: - $ref: "#/components/parameters/AddressIdPathParam" - $ref: "#/components/parameters/CustomerIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Address" meta: $ref: "#/components/schemas/Meta" examples: Update an address for a customer (200): summary: Update an address for a customer (200) value: data: id: add_01hv8gwdfkw5z6d1yy6pa3xyrz status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: California Office first_line: 5400 E Washington Drive, Floor 2 second_line: null city: San Jose postal_code: "95314" region: CA country_code: US custom_data: crm_id: 08bcfb7a-41d8-4747-9ade-3d885c287d0f created_at: "2024-04-12T06:45:53.267Z" updated_at: "2024-04-12T06:47:01.533006Z" import_meta: null meta: request_id: c3308aa6-fdba-457d-af96-6a51e7292b90 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Addresses externalDocs: url: https://developer.paddle.com/api-reference/addresses/update-adddress description: Update an address for a customer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/AddressUpdate" examples: Update an address for a customer (200): summary: Update an address for a customer (200) value: description: California Office first_line: 5400 E Washington Drive, Floor 2 city: San Jose region: CA custom_data: crm_id: 08bcfb7a-41d8-4747-9ade-3d885c287d0f x-permissions: - address.write /adjustments: get: operationId: list-adjustments summary: List adjustments description: Returns a paginated list of adjustments. Use the query parameters to page through results. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/ListAdjustmentsQueryParams.action" - $ref: "#/components/parameters/ListAdjustmentsQueryParams.customer_id" - $ref: "#/components/parameters/ListAdjustmentsQueryParams.order_by" - $ref: "#/components/parameters/ListAdjustmentsQueryParams.per_page" - $ref: "#/components/parameters/ListAdjustmentsQueryParams.status" - $ref: "#/components/parameters/ListAdjustmentsQueryParams.subscription_id" - $ref: "#/components/parameters/ListAdjustmentsQueryParams.transaction_id" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Adjustment" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List adjustments (200): summary: List adjustments (200) value: data: - id: adj_01hvgf2s84dr6reszzg29zbvcm action: refund type: partial transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y subscription_id: sub_01hvccbx32q2gb40sqx7n42430 customer_id: ctm_01hrffh7gvp29kc7xahm8wddwa reason: error currency_code: USD status: pending_approval items: - id: adjitm_01hvgf2s84dr6reszzg2gx70gj item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw type: partial amount: "100" proration: null totals: subtotal: "92" tax: "8" total: "100" totals: subtotal: "92" tax: "8" total: "100" fee: "5" earnings: "87" currency_code: USD retained_fee: "5" payout_totals: subtotal: "92" tax: "8" total: "100" fee: "5" earnings: "87" currency_code: USD retained_fee: "5" chargeback_fee: amount: "10" original: null created_at: "2024-04-15T08:48:20.239695Z" updated_at: "2024-04-15T08:48:20.239695Z" credit_applied_to_balance: null tax_rates_used: [] - id: adj_01hp46vn5px3nntyy2hr8gnv73 action: credit type: partial credit_applied_to_balance: true transaction_id: txn_01hp46m5hyz2g3e9ar31pzy2kc subscription_id: sub_01hp463gxfvndqjjyqn2n7tkth customer_id: ctm_01hp462x4578nc20acj9g956yy reason: subscription_recurring currency_code: USD status: pending_approval items: - id: adjitm_01hp46vn5qkvqg09m1r8qkdwrx item_id: txnitm_01hp46m5xkw9zthfvxre4dgtp0 type: proration amount: "163261" proration: rate: "0.9999" billing_period: starts_at: "2024-02-08T11:15:15.582Z" ends_at: "2024-03-08T11:02:03.946454Z" totals: subtotal: "149953" tax: "13308" total: "163261" - id: adjitm_01hp46vn5qkvqg09m1ra13rqsj item_id: txnitm_01hp46m5xkw9zthfvxrpf9r0pd type: proration amount: "31020" proration: rate: "0.9999" billing_period: starts_at: "2024-02-08T11:15:15.596Z" ends_at: "2024-03-08T11:02:03.946454Z" totals: subtotal: "28491" tax: "2529" total: "31020" totals: subtotal: "178444" tax: "15837" total: "194281" fee: "9764" retained_fee: "9764" earnings: "168680" currency_code: USD payout_totals: subtotal: "178444" tax: "15837" total: "194281" fee: "9764" earnings: "168680" currency_code: USD retained_fee: "9764" chargeback_fee: amount: "0" original: null created_at: "2024-02-08T11:15:15.779373Z" updated_at: "2024-02-08T11:15:15.779374Z" tax_rates_used: [] - id: adj_01hkrape8pq0s8yxbpd76htz33 action: credit type: partial credit_applied_to_balance: true transaction_id: txn_01hj327s2cpxh4mprx55p5qwdz subscription_id: sub_01hj32a99syawqhdkkbpxacwgb customer_id: ctm_01hj3289s46amtzv8vr57xtnxp reason: subscription_recurring currency_code: USD status: approved items: - id: adjitm_01hkrape8pq0s8yxbpdcrkakf4 item_id: txnitm_01hj328ac2ak7h82bjg443x4px type: proration amount: "6783" proration: rate: "0.62305" billing_period: starts_at: "2024-01-01T00:00:00Z" ends_at: "2024-01-20T07:33:49.542313Z" totals: subtotal: "6230" tax: "553" total: "6783" - id: adjitm_01hkrape8pq0s8yxbpd9x3bp1f item_id: txnitm_01hj328ac2ak7h82bjfzdk992c type: proration amount: "20350" proration: rate: "0.62305" billing_period: starts_at: "2024-01-01T00:00:00Z" ends_at: "2024-01-20T07:33:49.542313Z" totals: subtotal: "18691" tax: "1659" total: "20350" totals: subtotal: "24921" tax: "2212" total: "27133" fee: "1378" retained_fee: "1378" earnings: "23543" currency_code: USD payout_totals: subtotal: "24921" tax: "2212" total: "27133" fee: "1378" earnings: "23543" currency_code: USD retained_fee: "1378" chargeback_fee: amount: "0" original: null created_at: "2024-01-10T00:00:02.343628Z" updated_at: "2024-01-10T00:00:05.88352Z" tax_rates_used: [] - id: adj_01hkmv8zzdphm0szm330xw4ryh action: credit_reverse type: partial credit_applied_to_balance: true transaction_id: txn_01hkmv58gk496gyak35j4gt1nh subscription_id: sub_01hkmv7trnae9vbksdqpmctnmg customer_id: ctm_01hkmv5x0djj0xae30nmqxmdc0 reason: subscription_update_failed currency_code: USD status: approved items: - id: adjitm_01hkmv8zzdphm0szm3314waab3 item_id: txnitm_01hkmv5xkdf83cvkevfy9z2s4m type: proration amount: "-32662" proration: rate: "1" billing_period: starts_at: "2024-01-08T15:32:46.434Z" ends_at: "2024-02-08T15:32:10.959052Z" totals: subtotal: "-30000" tax: "-2662" total: "-32662" totals: subtotal: "-30000" tax: "-2662" total: "-32662" fee: "-1658" retained_fee: "-1658" earnings: "-28342" currency_code: USD payout_totals: subtotal: "-30000" tax: "-2662" total: "-32662" fee: "-1658" earnings: "-28342" currency_code: USD retained_fee: "-1658" chargeback_fee: amount: "0" original: null created_at: "2024-01-08T15:32:49.774707Z" updated_at: "2024-01-08T15:32:49.774707Z" tax_rates_used: [] - id: adj_01hkmv8wv1e8yt0k1q0h5h2cq2 action: credit type: partial credit_applied_to_balance: true transaction_id: txn_01hkmv58gk496gyak35j4gt1nh subscription_id: sub_01hkmv7trnae9vbksdqpmctnmg customer_id: ctm_01hkmv5x0djj0xae30nmqxmdc0 reason: subscription_recurring currency_code: USD status: reversed items: - id: adjitm_01hkmv8wv1e8yt0k1q0kskhgks item_id: txnitm_01hkmv5xkdf83cvkevfy9z2s4m type: proration amount: "32662" proration: rate: "1" billing_period: starts_at: "2024-01-08T15:32:46.434Z" ends_at: "2024-02-08T15:32:10.959052Z" totals: subtotal: "30000" tax: "2662" total: "32662" totals: subtotal: "30000" tax: "2662" total: "32662" fee: "1658" retained_fee: "1658" earnings: "28342" currency_code: USD payout_totals: subtotal: "30000" tax: "2662" total: "32662" fee: "1658" earnings: "28342" currency_code: USD retained_fee: "1658" chargeback_fee: amount: "0" original: null created_at: "2024-01-08T15:32:46.571866Z" updated_at: "2024-01-08T15:32:49.774707Z" tax_rates_used: [] meta: request_id: 8295b301-8306-436d-813a-55f6ed03ccf8 pagination: per_page: 10 next: https://api.paddle.com/adjustments?after=adj_01hkmv8wv1e8yt0k1q0h5h2cq2 has_more: false estimated_total: 5 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Adjustments externalDocs: url: https://developer.paddle.com/api-reference/adjustments/list-adjustments description: List adjustments x-permissions: - adjustment.read post: operationId: create-adjustment summary: Create an adjustment description: |- Creates an adjustment for one or more transaction items. You can create adjustments to refund or credit all or part of a transaction and its items: * Refunds return an amount to a customer's original payment method. You can create refund adjustments for transactions that are `completed`. * Credits reduce the amount that a customer has to pay for a transaction. You can create credit adjustments for manually-collected transactions that are `billed` or `past_due`. You can create adjustments to refund transactions that are `completed`, or to reduce the amount to due on manually-collected transactions that are `billed` or `past_due`. Most refunds for live accounts are created with the status of `pending_approval` until reviewed by Paddle, but [some are automatically approved](https://developer.paddle.com/build/transactions/create-transaction-adjustments#background-refunds). For sandbox accounts, Paddle automatically approves refunds every ten minutes. Adjustments can apply to some or all items on a transaction. You'll need the Paddle ID of the transaction to create a refund or credit for, along with the Paddle ID of any transaction items (`details.line_items[].id`). If successful, your response includes a copy of the new adjustment entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Adjustment" meta: $ref: "#/components/schemas/Meta" examples: Create an adjustment (201): summary: Create an adjustment (201) value: data: id: adj_01hvgf2s84dr6reszzg29zbvcm action: refund type: partial transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y subscription_id: sub_01hvccbx32q2gb40sqx7n42430 customer_id: ctm_01hrffh7gvp29kc7xahm8wddwa reason: error currency_code: USD status: pending_approval items: - id: adjitm_01hvgf2s84dr6reszzg2gx70gj item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw type: partial amount: "100" proration: null totals: subtotal: "92" tax: "8" total: "100" totals: subtotal: "92" tax: "8" total: "100" fee: "5" earnings: "87" currency_code: USD retained_fee: "5" payout_totals: subtotal: "92" tax: "8" total: "100" fee: "5" earnings: "87" currency_code: USD retained_fee: "5" chargeback_fee: amount: "10" original: null created_at: "2024-04-15T08:48:20.239695Z" updated_at: "2024-04-15T08:48:20.239695Z" credit_applied_to_balance: null tax_rates_used: [] meta: request_id: c1906ac5-c210-4443-ba9b-122ecaeb506d default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Adjustments externalDocs: url: https://developer.paddle.com/api-reference/adjustments/create-adjustment description: Create an adjustment requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/AdjustmentCreate" examples: Create an adjustment (201): summary: Create an adjustment (201) value: action: refund items: - item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw type: partial amount: "100" reason: error transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y x-permissions: - adjustment.write /adjustments/{adjustment_id}/credit-note: get: operationId: get-adjustment-credit-note summary: Get a PDF credit note for an adjustment description: |- Returns a link to a credit note PDF for an adjustment. Credit note PDFs are created for refunds and credits as a record of an adjustment. The link returned is not a permanent link. It expires after an hour. parameters: - $ref: "#/components/parameters/AdjustmentIdPathParam" - $ref: "#/components/parameters/GetCreditNoteParams" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/AdjustmentCreditNotePdf" meta: $ref: "#/components/schemas/Meta" examples: Get a PDF credit note for an adjustment (200): summary: Get a PDF credit note for an adjustment (200) value: data: url: https://paddle-production-invoice-service-pdfs.s3.amazonaws.com/credit_notes/15839/crdnt_01j4scmgpbtbxap16573dtck9n/credit_notes_296-10016_Paddle-com.pdf meta: request_id: e34d4a9c-2088-447d-a3a1-1da5ce74f507 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Adjustments externalDocs: url: https://developer.paddle.com/api-reference/adjustments/get-credit-note-pdf description: Get a PDF credit note for an adjustment x-permissions: - adjustment.read /customers/{customer_id}/businesses: get: operationId: list-businesses summary: List businesses for a customer description: |- Returns a paginated list of businesses for a customer. Use the query parameters to page through results. By default, Paddle returns businesses that are `active`. Use the `status` query parameter to return businesses that are archived. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListBusinessesQueryParams.order_by" - $ref: "#/components/parameters/DefaultStatusQuery" - $ref: "#/components/parameters/ListBusinessesQueryParams.search" - $ref: "#/components/parameters/CustomerIdPathParam" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Business" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List businesses for a customer (200): summary: List businesses for a customer (200) value: data: - id: biz_01hv8j0z17hv4ew8teebwjmfcb status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 name: HighFly LLC. company_number: "555829503785" tax_identifier: "555810433" contacts: - name: Blair Lopez email: blair@example.com custom_data: null created_at: "2024-04-12T07:05:50.887Z" updated_at: "2024-04-12T07:05:50.887Z" import_meta: null - id: biz_01hv8hkr641vmpwytx38znv56k status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 name: Uplift Inc. company_number: "555775291485" tax_identifier: "555952383" contacts: - name: Parker Jones email: parker@example.com - name: Jo Riley email: jo@example.com - name: Jesse Garcia email: jo@example.com custom_data: crm_id: eb9b8d9b-7dd6-48e6-8c39-8557bba5eaa9 created_at: "2024-04-12T06:58:37.892Z" updated_at: "2024-04-12T07:01:03.510528Z" import_meta: null meta: request_id: ec0cc200-3610-4726-a374-a2df142baff8 pagination: per_page: 50 next: https://api.paddle.com/customers/ctm_01hv6y1jedq4p1n0yqn5ba3ky4/businesses?after=biz_01hv8hkr641vmpwytx38znv56k has_more: false estimated_total: 2 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Businesses externalDocs: url: https://developer.paddle.com/api-reference/businesses/list-businesses description: List businesses for a customer x-permissions: - business.read post: operationId: create-business summary: Create a business for a customer description: |- Creates a new business for a customer. If successful, your response includes a copy of the new business entity. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Business" meta: $ref: "#/components/schemas/Meta" examples: Create a business for a customer (201): summary: Create a business for a customer (201) value: data: id: biz_01hv8hkr641vmpwytx38znv56k status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 name: Uplift Inc. company_number: "555775291485" tax_identifier: "555952383" contacts: - name: Parker Jones email: parker@example.com custom_data: null created_at: "2024-04-12T06:58:37.892Z" updated_at: "2024-04-12T06:58:37.892Z" import_meta: null meta: request_id: e925073f-12cd-4871-825d-2c43632edbc0 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Businesses externalDocs: url: https://developer.paddle.com/api-reference/businesses/create-business description: Create a business for a customer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BusinessCreate" examples: Create a business for a customer (201): summary: Create a business for a customer (201) value: name: Uplift Inc. company_number: "555775291485" tax_identifier: "555952383" contacts: - name: Parker Jones email: parker@example.com x-permissions: - business.write /customers/{customer_id}/businesses/{business_id}: get: operationId: get-business summary: Get a business for a customer description: Returns a business for a customer using its ID and related customer ID. parameters: - $ref: "#/components/parameters/BusinessIdPathParam" - $ref: "#/components/parameters/CustomerIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Business" meta: $ref: "#/components/schemas/Meta" examples: Get a business for a customer (200): summary: Get a business for a customer (200) value: data: id: biz_01hv8hkr641vmpwytx38znv56k status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 name: Uplift Inc. company_number: "555775291485" tax_identifier: "555952383" contacts: - name: Parker Jones email: parker@example.com - name: Jo Riley email: jo@example.com - name: Jesse Garcia email: jo@example.com custom_data: crm_id: eb9b8d9b-7dd6-48e6-8c39-8557bba5eaa9 created_at: "2024-04-12T06:58:37.892Z" updated_at: "2024-04-12T07:01:03.510528Z" import_meta: null meta: request_id: 2889a1a0-2844-4a1a-a7f1-81f5c82d5433 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Businesses externalDocs: url: https://developer.paddle.com/api-reference/businesses/get-business description: Get a business for a customer x-permissions: - business.read patch: operationId: update-business summary: Update a business for a customer description: |- Updates a business for a customer using its ID and related customer ID. If successful, your response includes a copy of the updated business entity. parameters: - $ref: "#/components/parameters/BusinessIdPathParam" - $ref: "#/components/parameters/CustomerIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Business" meta: $ref: "#/components/schemas/Meta" examples: Update a business for a customer (200): summary: Update a business for a customer (200) value: data: id: biz_01hv8hkr641vmpwytx38znv56k status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 name: Uplift Inc. company_number: "555775291485" tax_identifier: "555952383" contacts: - name: Parker Jones email: parker@example.com - name: Jo Riley email: jo@example.com - name: Jesse Garcia email: jo@example.com custom_data: crm_id: eb9b8d9b-7dd6-48e6-8c39-8557bba5eaa9 created_at: "2024-04-12T06:58:37.892Z" updated_at: "2024-04-12T07:01:03.510528Z" import_meta: null meta: request_id: 88b7fded-60ef-4507-ad6c-105bc9f88085 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Businesses externalDocs: url: https://developer.paddle.com/api-reference/businesses/update-business description: Update a business for a customer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BusinessUpdate" examples: Update a business for a customer (200): summary: Update a business for a customer (200) value: contacts: - name: Parker Jones email: parker@example.com - name: Jo Riley email: jo@example.com - name: Jesse Garcia email: jo@example.com custom_data: customer_reference_id: eb9b8d9b-7dd6-48e6-8c39-8557bba5eaa9 x-permissions: - business.write /checkout-domains: get: operationId: list-checkout-domains summary: List checkout domains description: Returns a paginated list of checkout domains submitted for your account. Use the query parameters to page through results. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListCheckoutDomainsQueryParams.domain" - $ref: "#/components/parameters/ListCheckoutDomainsQueryParams.order_by" - $ref: "#/components/parameters/ListCheckoutDomainsQueryParams.status" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/CheckoutDomain" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List checkout domains (200): summary: List checkout domains (200) value: data: - id: chedom_01j2abc3def4ghi5jkl6mno7pq domain: app.example.com status: approved payment_method_verification: apple_pay: status: verified created_at: "2026-03-04T12:00:00.000Z" updated_at: "2026-03-04T14:30:00.000Z" - id: chedom_01k9zyx8wvu7tsp5qra4lkj2mn domain: store.example.net status: pending_review payment_method_verification: apple_pay: status: unverified created_at: "2026-04-10T15:20:00.000Z" updated_at: "2026-04-10T16:45:00.000Z" meta: request_id: e7f2d619-3c84-4a5e-9f10-2b48c7d0e3f1 pagination: per_page: 50 next: https://api.paddle.com/checkout-domains?after=chedom_01j2abc3def4ghi5jkl6mno7pq&per_page=50 has_more: false estimated_total: 2 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Checkout domains externalDocs: url: https://developer.paddle.com/api-reference/checkout-domains/list-checkout-domains description: List checkout domains x-permissions: - checkout_domain.read /checkout-domains/{domain_id}: get: operationId: get-checkout-domain summary: Get a checkout domain description: Returns a checkout domain using its ID. The response includes the domain's approval status and payment method verification details. parameters: - $ref: "#/components/parameters/DomainIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/CheckoutDomain" meta: $ref: "#/components/schemas/Meta" examples: Get a checkout domain (200): summary: Get a checkout domain (200) value: data: id: chedom_01j2abc3def4ghi5jkl6mno7pq domain: app.example.com status: approved payment_method_verification: apple_pay: status: verified created_at: "2026-03-04T12:00:00.000Z" updated_at: "2026-03-04T14:30:00.000Z" meta: request_id: b15ec92e-8688-40d4-a04d-f44cbec93355 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Checkout domains externalDocs: url: https://developer.paddle.com/api-reference/checkout-domains/get-checkout-domain description: Get a checkout domain x-permissions: - checkout_domain.read delete: operationId: delete-checkout-domain summary: Delete a checkout domain description: |- Deletes a checkout domain using its ID. Deleted checkout domains are no longer able to be used to load checkouts for your account. parameters: - $ref: "#/components/parameters/DomainIdPathParam" responses: "204": description: "There is no content to send for this request, but the headers may be useful. " headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Checkout domains externalDocs: url: https://developer.paddle.com/api-reference/checkout-domains/delete-checkout-domain description: Delete a checkout domain x-permissions: - checkout_domain.write /checkout-domains/{domain_id}/verify-payment-method: post: operationId: verify-checkout-domain-payment-method summary: Verify a payment method for a checkout domain description: |- Triggers payment method verification for a checkout domain. Currently supports Apple Pay only. Before verifying, the checkout domain must be in `approved` status and the domain association file must be correctly hosted. parameters: - $ref: "#/components/parameters/DomainIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/CheckoutDomain" meta: $ref: "#/components/schemas/Meta" examples: Verify a payment method for a checkout domain (200): summary: Verify a payment method for a checkout domain (200) value: data: id: chedom_01kkertpke0gv2t61p1pq8v23x domain: app.example.com status: approved payment_method_verification: apple_pay: status: verified created_at: "2026-03-04T12:00:00.000Z" updated_at: "2026-03-06T10:00:00.000Z" meta: request_id: a94b2e05-1d73-4f6c-8e3a-5c61b9d72f88 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Checkout domains externalDocs: url: https://developer.paddle.com/api-reference/checkout-domains/verify-checkout-domain-payment-method description: Verify a payment method for a checkout domain requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/CheckoutDomainVerifyPaymentMethod" examples: Verify a payment method for a checkout domain (200): summary: Verify a payment method for a checkout domain (200) value: payment_method: apple_pay x-permissions: - checkout_domain.write /client-tokens: get: operationId: list-client-tokens summary: List client-side tokens description: Returns a paginated list of client-side tokens. Use the query parameters to [page through results](https://developer.paddle.com/api-reference/about/pagination). parameters: - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListClientTokensQueryParams.order_by" - $ref: "#/components/parameters/ListClientTokensQueryParams.status" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/ClientToken" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List client-side tokens (200): summary: List client-side tokens (200) value: data: - id: ctkn_01jppmjcn2ydvfrf861sptq6zh token: live_7d279f61a3499fed520f7cd8c08 name: In-app subscription management description: Used to allow logged-in users to upgrade/downgrade their subscriptions directly within our web app's account settings. status: active created_at: "2025-06-25T15:30:14.321Z" updated_at: "2025-06-25T15:30:14.321Z" revoked_at: null - id: ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: live_7d279f61a3499fed520f7cd8c08 name: Pricing page integration description: Used to display prices and open checkout within our pricing page on our marketing domain. status: revoked created_at: "2025-06-26T14:36:14.695Z" updated_at: "2025-06-27T11:26:10.253Z" revoked_at: "2025-06-27T11:26:10.253Z" meta: request_id: 913dee78-d496-4d13-a93e-09d834c208dd pagination: per_page: 50 next: https://api.paddle.com/client-tokens?after=ctkn_01ghbkd0frb9k95cnhwd1bxpvk has_more: false estimated_total: 2 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Client tokens externalDocs: url: https://developer.paddle.com/api-reference/client-tokens/list-client-tokens description: List client-side tokens x-permissions: - client_token.read post: operationId: create-client-token summary: Create a client-side token description: |- Creates a new client-side token. If successful, your response includes a copy of the new client-side token entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/ClientToken" meta: $ref: "#/components/schemas/Meta" examples: Create a client-side token (201): summary: Create a client-side token (201) value: data: id: ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: live_7d279f61a3499fed520f7cd8c08 name: Pricing page integration description: Used to display prices and open checkout within our pricing page on our marketing domain. status: active created_at: "2025-06-26T14:36:14.695Z" updated_at: "2025-06-26T14:36:14.695Z" revoked_at: null meta: request_id: 1681f87f-9c36-4557-a1da-bbb622afa0cc default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Client tokens externalDocs: url: https://developer.paddle.com/api-reference/client-tokens/create-client-token description: Create a client-side token requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ClientTokenCreate" examples: Create a client-side token (201): summary: Create a client-side token (201) value: name: Pricing page integration description: Used to display prices and open checkout within our pricing page on our marketing domain. x-permissions: - client_token.write /client-tokens/{client_token_id}: get: operationId: get-client-token summary: Get a client-side token description: Returns a client-side token using its ID. parameters: - $ref: "#/components/parameters/ClientTokenIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/ClientToken" meta: $ref: "#/components/schemas/Meta" examples: Get a client-side token (200): summary: Get a client-side token (200) value: data: id: ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: live_7d279f61a3499fed520f7cd8c08 name: Pricing page integration description: Used to display prices and open checkout within our pricing page on our marketing domain. status: active created_at: "2025-06-26T14:36:14.695Z" updated_at: "2025-06-26T14:36:14.695Z" revoked_at: null meta: request_id: 1681f87f-9c36-4557-a1da-bbb622afa0cc default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Client tokens externalDocs: url: https://developer.paddle.com/api-reference/client-tokens/get-client-token description: Get a client-side token x-permissions: - client_token.read patch: operationId: update-client-token summary: Update a client-side token description: |- Updates a client-side token using its ID. You can revoke a client-side token by changing its `status` to `revoked`. Client-side tokens that are revoked can't be updated to `active`. If successful, your response includes a copy of the updated client-side token entity. parameters: - $ref: "#/components/parameters/ClientTokenIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/ClientToken" meta: $ref: "#/components/schemas/Meta" examples: Update a client-side token (200): summary: Update a client-side token (200) value: data: id: ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: live_7d279f61a3499fed520f7cd8c08 name: Pricing page integration description: Used to display prices and open checkout within our pricing page on our marketing domain. status: revoked created_at: "2025-06-26T14:36:14.695Z" updated_at: "2025-07-03T15:14:12.435Z" revoked_at: "2025-07-03T15:14:12.435Z" meta: request_id: 1681f87f-9c36-4557-a1da-bbb622afa0cc default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Client tokens externalDocs: url: https://developer.paddle.com/api-reference/client-tokens/update-client-token description: Update a client-side token requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ClientTokenUpdate" examples: Update a client-side token (200): summary: Update a client-side token (200) value: status: revoked x-permissions: - client_token.write /customers: get: operationId: list-customers summary: List customers description: |- Returns a paginated list of customers. Use the query parameters to page through results. By default, Paddle returns customers that are `active`. Use the `status` query parameter to return customers that are archived. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListCustomersQueryParams.email" - $ref: "#/components/parameters/ListCustomersQueryParams.order_by" - $ref: "#/components/parameters/DefaultStatusQuery" - $ref: "#/components/parameters/ListCustomersQueryParams.search" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Customer" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List customers (200): summary: List customers (200) value: data: - id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 status: active custom_data: null name: Jo Brown-Anderson email: jo@example.com marketing_consent: false locale: en created_at: "2024-04-11T15:57:24.813Z" updated_at: "2024-04-11T15:59:56.658719Z" import_meta: null - id: ctm_01h844q4mznqpgqgm6evgw1w63 status: active custom_data: null name: Jamie Price email: jamie@example.com marketing_consent: false locale: en created_at: "2023-08-18T10:58:05.087Z" updated_at: "2024-04-11T15:55:02.727195Z" import_meta: null - id: ctm_01h844p3h41s12zs5mn4axja51 status: active custom_data: null name: Alex Wilson email: alex@example.com marketing_consent: false locale: en created_at: "2023-08-18T10:57:31.172Z" updated_at: "2024-04-11T15:55:19.492484Z" import_meta: null - id: ctm_01hrffh7gvp29kc7xahm8wddwa status: active custom_data: null name: Sam Miller email: sam@example.com marketing_consent: false locale: en created_at: "2024-03-08T16:49:53.691Z" updated_at: "2024-04-11T16:03:57.924146Z" import_meta: null meta: request_id: 913dee78-d496-4d13-a93e-09d834c208dd pagination: per_page: 50 next: https://api.paddle.com/customers?after=ctm_01h8441jn5pcwrfhwh78jqt8hk has_more: false estimated_total: 4 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Customers externalDocs: url: https://developer.paddle.com/api-reference/customers/list-customers description: List customers x-permissions: - customer.read post: operationId: create-customer summary: Create a customer description: |- Creates a new customer. If successful, your response includes a copy of the new customer entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Customer" meta: $ref: "#/components/schemas/Meta" examples: Create a customer (201): summary: Create a customer (201) value: data: id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 status: active custom_data: null name: Jo Brown email: jo@example.com marketing_consent: false locale: en created_at: "2024-04-11T15:57:24.813Z" updated_at: "2024-04-11T15:57:24.813Z" import_meta: null meta: request_id: 9bcdcc29-e180-4055-ad3d-d37e5dc5e56d default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Customers externalDocs: url: https://developer.paddle.com/api-reference/customers/create-customer description: Create a customer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/CustomerCreate" examples: Create a customer (201): summary: Create a customer (201) value: email: jo@example.com name: Jo Brown x-permissions: - customer.write /customers/{customer_id}: get: operationId: get-customer summary: Get a customer description: Returns a customer using its ID. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/CustomerIncludes" meta: $ref: "#/components/schemas/Meta" examples: Get a customer (200): summary: Get a customer (200) value: data: id: ctm_01hrffh7gvp29kc7xahm8wddwa status: active custom_data: null name: Sam Miller email: sam@example.com marketing_consent: false locale: en created_at: "2024-03-08T16:49:53.691Z" updated_at: "2024-04-11T16:03:57.924146Z" import_meta: null meta: request_id: aa0009cb-18f7-4538-b1cd-ad29d91cfaa7 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Customers externalDocs: url: https://developer.paddle.com/api-reference/customers/get-customer description: Get a customer x-permissions: - customer.read patch: operationId: update-customer summary: Update a customer description: |- Updates a customer using its ID. If successful, your response includes a copy of the updated customer entity. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Customer" meta: $ref: "#/components/schemas/Meta" examples: Update a customer (200): summary: Update a customer (200) value: data: id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 status: active custom_data: null name: Jo Brown-Anderson email: jo@example.com marketing_consent: false locale: en created_at: "2024-04-11T15:57:24.813Z" updated_at: "2024-04-11T15:59:56.658719Z" import_meta: null meta: request_id: bfa19139-37cc-48ef-8e75-215587e71ab2 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Customers externalDocs: url: https://developer.paddle.com/api-reference/customers/update-customer description: Update a customer requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/CustomerUpdate" examples: Update a customer (200): summary: Update a customer (200) value: name: Jo Brown-Anderson x-permissions: - customer.write /customers/{customer_id}/credit-balances: get: operationId: list-credit-balances summary: List credit balances for a customer description: |- Returns a list of credit balances for each currency for a customer. Each balance has three totals: * `available`: total available to use. * `reserved`: total temporarily reserved for billed transactions. * `used`: total amount of credit used. Credit is added to the `available` total initially. When used, it moves to the `used` total. The `reserved` total is used when a credit balance is applied to a transaction that's marked as `billed`, like when working with an issued invoice. It's not available for other transactions at this point, but isn't considered `used` until the transaction is completed. If a `billed` transaction is `canceled`, any reserved credit moves back to `available`. Credit balances are created automatically by Paddle when you take an action that results in Paddle creating a credit for a customer, like making prorated changes to a subscription. An empty `data` array is returned where a customer has no credit balances. The response is not paginated. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" - $ref: "#/components/parameters/ListCreditBalancesQueryParams" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/CreditBalance" meta: $ref: "#/components/schemas/Meta" examples: List credit balances for a customer (200): summary: List credit balances for a customer (200) value: data: - customer_id: ctm_01gw9m680k848184fpttwr0b7z currency_code: USD balance: available: "550" reserved: "900" used: "1300" meta: request_id: 32cf1966-ed49-47d6-a76a-a9b8f7843245 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Customers externalDocs: url: https://developer.paddle.com/api-reference/customers/list-credit-balances description: List credit balances for a customer x-permissions: - customer.read /customers/{customer_id}/auth-token: post: operationId: generate-customer-authentication-token summary: Generate an authentication token for a customer description: |- Generates an authentication token for a customer. You can pass a generated authentication token to Paddle.js when opening a checkout to let customers work with saved payment methods. Authentication tokens are temporary and shouldn't be cached. They're valid until the `expires_at` date returned in the response. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/CustomerAuthenticationToken" meta: $ref: "#/components/schemas/Meta" examples: Generate an authentication token for a customer (200): summary: Generate an authentication token for a customer (200) value: data: customer_auth_token: pca_01hwyzq8hmdwed5p4jc4hnv6bh_01hwwggymjn0yhhb2gr4p91276_6xaav4lydudt6bgmuefeaf2xnu3umegx expires_at: "2024-05-03T10:34:12.34Z" meta: request_id: fa176777-4bca-49ec-aa1e-f53885333cb7 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Customers externalDocs: url: https://developer.paddle.com/api-reference/customers/generate-customer-authentication-token description: Generate an authentication token for a customer x-permissions: - customer_auth_token.write /customers/{customer_id}/portal-sessions: post: operationId: create-customer-portal-session summary: Create a customer portal session description: |- Creates a customer portal session for a customer. The [customer portal](https://developer.paddle.com/concepts/customer-portal) is a secure, Paddle-hosted site that allows customers to manage their own subscriptions, payments, and account information without you having to build custom billing screens. Customers can: * View transaction history * Download invoices * Update payment methods * Manage their subscriptions including making changes or cancellations * Revise details on completed transactions You can create a customer portal session to generate authenticated links for a customer so that they're automatically signed in to the portal. It's typically used when linking to the customer portal from your app where customers are already authenticated. You can include an array of `subscription_ids` to generate authenticated portal links that let customers make changes to their subscriptions. You can use these links as part of subscription management workflows rather than building your own billing screens. Customer portal sessions are temporary and shouldn't be cached. The customer portal is fully hosted by Paddle. For security and the best customer experience, don't embed the customer portal in an iframe. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/CustomerPortalSession" meta: $ref: "#/components/schemas/Meta" examples: Create a customer portal session (201): summary: Create a customer portal session (201) value: data: id: cpls_01h4ge9r64c22exjsx0fy8b48b customer_id: ctm_01gysfvfy7vqhpzkq8rjmrq7an urls: general: overview: https://customer-portal.paddle.com/cpl_01j7zbyqs3vah3aafp4jf62qaw?action=overview&token=pga_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJjdG1fMDFncm5uNHp0YTVhMW1mMDJqanplN3kyeXMiLCJuYW1lIjoiSm9obiBEb2UiLCJpYXQiOjE3Mjc2NzkyMzh9._oO12IejzdKmyKTwb7BLjmiILkx4_cSyGjXraOBUI_g subscriptions: - id: sub_01h04vsc0qhwtsbsxh3422wjs4 cancel_subscription: https://customer-portal.paddle.com/cpl_01j7zbyqs3vah3aafp4jf62qaw?action=cancel_subscription&subscription_id=sub_01h04vsc0qhwtsbsxh3422wjs4&token=pga_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJjdG1fMDFncm5uNHp0YTVhMW1mMDJqanplN3kyeXMiLCJuYW1lIjoiSm9obiBEb2UiLCJpYXQiOjE3Mjc2NzkyMzh9._oO12IejzdKmyKTwb7BLjmiILkx4_cSyGjXraOBUI_g update_subscription_payment_method: https://customer-portal.paddle.com/cpl_01j7zbyqs3vah3aafp4jf62qaw?action=update_subscription_payment_method&subscription_id=sub_01h04vsc0qhwtsbsxh3422wjs4&token=pga_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJjdG1fMDFncm5uNHp0YTVhMW1mMDJqanplN3kyeXMiLCJuYW1lIjoiSm9obiBEb2UiLCJpYXQiOjE3Mjc2NzkyMzh9._oO12IejzdKmyKTwb7BLjmiILkx4_cSyGjXraOBUI_g created_at: "2024-10-25T06:53:58Z" meta: request_id: fa176777-4bca-49ec-aa1e-f53885333cb7 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Customer portals externalDocs: url: https://developer.paddle.com/api-reference/customer-portals/create-customer-portal-session description: Create a customer portal session requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/CustomerPortalSessionCreate" examples: Create a customer portal session (201): summary: Create a customer portal session (201) value: subscription_ids: - sub_01h04vsc0qhwtsbsxh3422wjs4 x-permissions: - customer_portal_session.write /discount-groups: get: operationId: list-discount-groups summary: List discount groups description: Returns a paginated list of discount groups. Use the query parameters to page through results. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListDiscountGroupsQueryParams.order_by" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/DiscountGroup" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List discount groups (200): summary: List discount groups (200) value: data: - id: dsg_01gtf15svsqzgp9325ss4ebmwt name: Black Friday 2024 status: active import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:36:14.695Z" - id: dsg_02gtf15svsqzgp9325ss4ebmwt name: Cyber Monday 2024 Discounts status: active import_meta: null created_at: "2024-01-01T16:48:04.473Z" updated_at: "2024-01-01T16:48:04.473Z" meta: request_id: d8f286a6-e049-4a6e-8fa8-a6f145ac3ecf pagination: per_page: 50 next: https://api.paddle.com/discount-groups?after=dsg_01gtf15svsqzgp9325ss4ebmwt has_more: false estimated_total: 2 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Discount groups externalDocs: url: https://developer.paddle.com/api-reference/discount-groups/list-discount-groups description: List discount groups x-permissions: - discount.read post: operationId: create-discount-group summary: Create a discount group description: |- Creates a new discount group. If successful, your response includes a copy of the new discount group entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/DiscountGroup" meta: $ref: "#/components/schemas/Meta" examples: Create a discount group (201): summary: Create a discount group (201) value: data: id: dsg_01js2gqehzccfkywgx1jk2mtsp status: active name: Black Friday 2024 import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:36:14.695Z" meta: request_id: 1681f87f-9c36-4557-a1da-bbb622afa0cc default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Discount groups externalDocs: url: https://developer.paddle.com/api-reference/discount-groups/create-discount-group description: Create a discount group requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/DiscountGroupCreate" examples: Create a discount group (201): summary: Create a discount group (201) value: name: Black Friday 2024 x-permissions: - discount.write /discount-groups/{discount_group_id}: get: operationId: get-discount-group summary: Get a discount group description: Returns a discount group using its ID. parameters: - $ref: "#/components/parameters/DiscountGroupIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/DiscountGroup" meta: $ref: "#/components/schemas/Meta" examples: Get a discount group (200): summary: Get a discount group (200) value: data: id: dsg_01hv6scyf7qdnzcdq01t2y8dx4 status: active name: Black Friday 2024 import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:36:14.695Z" meta: request_id: 74d0b3ed-9eba-437e-bbcc-f5619bb5a661 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Discount groups externalDocs: url: https://developer.paddle.com/api-reference/discount-groups/get-discount-group description: Get a discount group x-permissions: - discount.read patch: operationId: update-discount-group summary: Update a discount group description: |- Updates a discount group using its ID. If successful, your response includes a copy of the updated discount group entity. parameters: - $ref: "#/components/parameters/DiscountGroupIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/DiscountGroup" meta: $ref: "#/components/schemas/Meta" examples: Update a discount group (200): summary: Update a discount group (200) value: data: id: dsg_01hv6scyf7qdnzcdq01t2y8dx4 status: active name: Cyber Monday 2025 import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:38:12.331Z" meta: request_id: dd850364-99f7-4e27-bb1e-0a477bdb320b default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Discount groups externalDocs: url: https://developer.paddle.com/api-reference/discount-groups/update-discount-group description: Update a discount group requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/DiscountGroupUpdate" examples: Update a discount group (200): summary: Update a discount group (200) value: name: Cyber Monday 2025 x-permissions: - discount.write /discounts: get: operationId: list-discounts summary: List discounts description: |- Returns a paginated list of discounts. Use the query parameters to page through results. By default, Paddle returns discounts that are `active`. Use the `status` query parameter to return discounts that are archived or expired. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/DiscountIncludeQuery" - $ref: "#/components/parameters/ListDiscountsQueryParams.code" - $ref: "#/components/parameters/ListDiscountsQueryParams.order_by" - $ref: "#/components/parameters/DiscountStatusQuery" - $ref: "#/components/parameters/DiscountModeQuery" - $ref: "#/components/parameters/ListDiscountsQueryParams.discount_group_id" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/DiscountIncludes" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List discounts (200): summary: List discounts (200) value: data: - id: dsc_01gtgztp8fpchantd5g1wrksa3 status: active description: Black Friday 2024 enabled_for_checkout: true code: BF10OFF type: percentage mode: standard amount: "10" currency_code: USD recur: false maximum_recurring_intervals: null usage_limit: 1000 restrict_to: null expires_at: "2024-12-03T00:00:00Z" times_used: 0 discount_group_id: dsg_01js2gqehzccfkywgx1jk2mtsp custom_data: null import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:36:14.695Z" - id: dsc_01gtf15svsqzgp9325ss4ebmwt status: active description: "Introductory offer: $10 off per user for Pro" enabled_for_checkout: true code: 10OFFPRO type: flat_per_seat mode: standard amount: "1000" currency_code: USD recur: false maximum_recurring_intervals: null usage_limit: null restrict_to: - pri_01gsz8x8sawmvhz1pv30nge1ke expires_at: "2023-12-05T15:00:00Z" times_used: 0 discount_group_id: null custom_data: null import_meta: null created_at: "2023-03-01T16:48:04.473Z" updated_at: "2023-12-05T14:27:26.844Z" - id: dsc_01gtgraak4chyhnp47rrdv89ad status: active description: Nonprofit discount enabled_for_checkout: true code: 98XFAUR91R type: percentage mode: standard amount: "10" currency_code: null recur: true maximum_recurring_intervals: 3 usage_limit: null restrict_to: [] expires_at: null times_used: 6 discount_group_id: null custom_data: null import_meta: null created_at: "2023-03-02T08:51:44.356Z" updated_at: "2023-11-07T14:37:41.459Z" - id: dsc_01h83xenpcfjyhkqr4x214m02x status: active description: Nonprofit discount enabled_for_checkout: false code: null type: percentage mode: standard amount: "10" currency_code: null recur: true maximum_recurring_intervals: null usage_limit: null restrict_to: - pri_01h83xenpcfjyhkqr4x214m02x expires_at: null times_used: 0 discount_group_id: null custom_data: null import_meta: null created_at: "2023-08-18T08:51:07.596Z" updated_at: "2023-08-18T09:05:17.05Z" meta: request_id: d8f286a6-e049-4a6e-8fa8-a6f145ac3ecf pagination: per_page: 50 next: https://api.paddle.com/discounts?after=dsc_01h83xenpcfjyhkqr4x214m02x has_more: false estimated_total: 4 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Discounts externalDocs: url: https://developer.paddle.com/api-reference/discounts/list-discounts description: List discounts x-permissions: - discount.read post: operationId: create-discount summary: Create a discount description: |- Creates a new discount. If successful, your response includes a copy of the new discount entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Discount" meta: $ref: "#/components/schemas/Meta" examples: Create a discount (201): summary: Create a discount (201) value: data: id: dsc_01hv6scyf7qdnzcdq01t2y8dx4 status: active description: All orders (10% off) enabled_for_checkout: true code: BF10OFF type: percentage mode: standard amount: "10" currency_code: null recur: true maximum_recurring_intervals: 3 usage_limit: null restrict_to: null expires_at: "2024-12-03T00:00:00Z" times_used: 0 discount_group_id: dsg_01js2gqehzccfkywgx1jk2mtsp custom_data: null import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:36:14.695Z" meta: request_id: 1681f87f-9c36-4557-a1da-bbb622afa0cc default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Discounts externalDocs: url: https://developer.paddle.com/api-reference/discounts/create-discount description: Create a discount requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/DiscountCreate" examples: Create a discount (201): summary: Create a discount (201) value: description: All orders (10% off) type: percentage amount: "10" code: BF10OFF enabled_for_checkout: true recur: true maximum_recurring_intervals: 3 expires_at: "2024-12-03T00:00:00Z" discount_group_id: dsg_01js2gqehzccfkywgx1jk2mtsp x-permissions: - discount.write /discounts/{discount_id}: get: operationId: get-discount summary: Get a discount description: Returns a discount using its ID. parameters: - $ref: "#/components/parameters/DiscountIncludeQuery" - $ref: "#/components/parameters/DiscountIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/DiscountIncludes" meta: $ref: "#/components/schemas/Meta" examples: Get a discount (200): summary: Get a discount (200) value: data: id: dsc_01hv6scyf7qdnzcdq01t2y8dx4 status: active description: All orders (10% off) enabled_for_checkout: true code: BF10OFF type: percentage mode: standard amount: "10" currency_code: null recur: true maximum_recurring_intervals: 3 usage_limit: null restrict_to: - pro_01gsz4t5hdjse780zja8vvr7jg - pro_01gsz4s0w61y0pp88528f1wvvb expires_at: "2024-12-03T00:00:00Z" times_used: 0 discount_group_id: dsg_01js2gqehzccfkywgx1jk2mtsp custom_data: null import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:36:14.695Z" meta: request_id: 74d0b3ed-9eba-437e-bbcc-f5619bb5a661 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Discounts externalDocs: url: https://developer.paddle.com/api-reference/discounts/get-discount description: Get a discount x-permissions: - discount.read patch: operationId: update-discount summary: Update a discount description: |- Updates a discount using its ID. If successful, your response includes a copy of the updated discount entity. To update a checkout recovery discount, configure your checkout recovery settings in the dashboard. parameters: - $ref: "#/components/parameters/DiscountIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Discount" meta: $ref: "#/components/schemas/Meta" examples: Update a discount (200): summary: Update a discount (200) value: data: id: dsc_01hv6scyf7qdnzcdq01t2y8dx4 status: active description: All orders (10% off) enabled_for_checkout: true code: BF10OFF type: percentage mode: standard amount: "10" currency_code: null recur: true maximum_recurring_intervals: 3 usage_limit: null restrict_to: - pro_01gsz4t5hdjse780zja8vvr7jg - pro_01gsz4s0w61y0pp88528f1wvvb expires_at: "2024-12-03T00:00:00Z" times_used: 0 discount_group_id: dsg_01js2gqehzccfkywgx1jk2mtsp custom_data: null import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:38:12.331Z" meta: request_id: dd850364-99f7-4e27-bb1e-0a477bdb320b default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Discounts externalDocs: url: https://developer.paddle.com/api-reference/discounts/update-discount description: Update a discount requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/DiscountUpdate" examples: Update a discount (200): summary: Update a discount (200) value: code: NEWCODE restrict_to: - pro_01gsz4t5hdjse780zja8vvr7jg - pro_01gsz4s0w61y0pp88528f1wvvb discount_group_id: dsg_01js2gqehzccfkywgx1jk2mtsp x-permissions: - discount.write /event-types: get: operationId: list-event-types summary: List events types description: |- Returns a list of event types. The response is not paginated. parameters: [] responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/EventType" meta: $ref: "#/components/schemas/Meta" examples: List event types (200): summary: List event types (200) value: data: - name: transaction.billed description: Occurs when a transaction is billed. Its status field changes to billed and billed_at is populated. group: Transaction available_versions: - 1 - name: transaction.canceled description: Occurs when a transaction is canceled. Its status field changes to canceled. group: Transaction available_versions: - 1 - name: transaction.completed description: Occurs when a transaction is completed. Its status field changes to completed. group: Transaction available_versions: - 1 - name: transaction.created description: Occurs when a transaction is created. group: Transaction available_versions: - 1 - name: transaction.paid description: Occurs when a transaction is paid. Its status field changes to paid. group: Transaction available_versions: - 1 - name: transaction.past_due description: Occurs when a transaction becomes past due. Its status field changes to past_due. group: Transaction available_versions: - 1 - name: transaction.payment_failed description: Occurs when a payment fails for a transaction. The payments array is updated with details of the payment attempt. group: Transaction available_versions: - 1 - name: transaction.ready description: Occurs when a transaction is ready to be billed. Its status field changes to ready. group: Transaction available_versions: - 1 - name: transaction.updated description: Occurs when a transaction is updated. group: Transaction available_versions: - 1 - name: subscription.activated description: Occurs when a subscription becomes active. Its status field changes to active. This means any trial period has elapsed and Paddle has successfully billed the customer. group: Subscription available_versions: - 1 - name: subscription.canceled description: Occurs when a subscription is canceled. Its status field changes to canceled. group: Subscription available_versions: - 1 - name: subscription.created description: Occurs when a subscription is created. subscription.trialing or subscription.activated typically follow. group: Subscription available_versions: - 1 - name: subscription.imported description: Occurs when a subscription is imported. group: Subscription available_versions: - 1 - name: subscription.past_due description: Occurs when a subscription has an unpaid transaction. Its status changes to past_due. group: Subscription available_versions: - 1 - name: subscription.paused description: Occurs when a subscription is paused. Its status field changes to paused. group: Subscription available_versions: - 1 - name: subscription.resumed description: Occurs when a subscription is resumed after being paused. Its status field changes to active. group: Subscription available_versions: - 1 - name: subscription.trialing description: Occurs when a subscription enters trial period. group: Subscription available_versions: - 1 - name: subscription.updated description: Occurs when a subscription is updated. group: Subscription available_versions: - 1 - name: product.created description: Occurs when a product is created. group: Product available_versions: - 1 - name: product.imported description: Occurs when a product is imported. group: Product available_versions: - 1 - name: product.updated description: Occurs when a product is updated. group: Product available_versions: - 1 - name: price.created description: Occurs when a price is created. group: Price available_versions: - 1 - name: price.imported description: Occurs when a price is imported. group: Price available_versions: - 1 - name: price.updated description: Occurs when a price is updated. group: Price available_versions: - 1 - name: customer.created description: Occurs when a customer is created. group: Customer available_versions: - 1 - name: customer.imported description: Occurs when a customer is imported. group: Customer available_versions: - 1 - name: customer.updated description: Occurs when a customer is updated. group: Customer available_versions: - 1 - name: address.created description: Occurs when an address is created. group: Address available_versions: - 1 - name: address.imported description: Occurs when a address is imported. group: Address available_versions: - 1 - name: address.updated description: Occurs when an address is updated. group: Address available_versions: - 1 - name: business.created description: Occurs when a business is created. group: Business available_versions: - 1 - name: business.imported description: Occurs when a business is imported. group: Business available_versions: - 1 - name: business.updated description: Occurs when a business is updated. group: Business available_versions: - 1 - name: adjustment.created description: Occurs when an adjustment is created. group: Adjustment available_versions: - 1 - name: adjustment.updated description: Occurs when an adjustment is updated, the only time an adjustment will be updated is when the status changes from pending to approved or from pending to rejected. group: Adjustment available_versions: - 1 - name: payout.created description: Occurs when a payout is created. group: Payout available_versions: - 1 - name: payout.paid description: Occurs when a payout is paid. group: Payout available_versions: - 1 - name: discount.created description: Occurs when a discount is created. group: Discount available_versions: - 1 - name: discount.imported description: Occurs when a discount is imported. group: Discount available_versions: - 1 - name: discount.updated description: Occurs when a discount is updated. group: Discount available_versions: - 1 - name: report.created description: Occurs when a report is created. group: Report available_versions: - 1 - name: report.updated description: Occurs when a report is updated. group: Report available_versions: - 1 meta: request_id: 364194bd-2f30-4cfb-8190-ce5a774efa0a default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Event types externalDocs: url: https://developer.paddle.com/api-reference/event-types/list-event-types description: List events types x-permissions: [] /events: get: operationId: list-events summary: List events description: |- Returns a paginated list of events that have occurred in the last 90 days. Use the query parameters to page through results. Events older than 90 days aren't retained. This is sometimes referred to as "the event stream." parameters: - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListEventsQueryParams.order_by" - $ref: "#/components/parameters/ListEventsQueryParams.event_type" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Event" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List events (200): summary: List events (200) value: data: - event_id: evt_01hv97725sakkxq0yqdqef4m6p event_type: transaction.completed occurred_at: "2024-04-12T13:16:10.809640Z" data: id: txn_01hv975mbh902hcyb7mks5kt0n status: completed customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null custom_data: null currency_code: USD origin: web subscription_id: sub_01hv9770y40xzc823155s0z4zz invoice_id: inv_01hv9770zc8cs6exr53y8acsms invoice_number: 325-10576 collection_mode: automatic discount_id: null billing_details: null billing_period: ends_at: "2024-05-12T13:16:08.821891Z" starts_at: "2024-04-12T13:16:08.821891Z" items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null details: totals: fee: "3311" tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv976e05xem435dvr1ddqxjm totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv976e05xem435dvr5xrd067 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv976e05xem435dvrch5n26w totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: fee: "3311" tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "3311" tax: "5315" total: "65215" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD payments: - amount: "65215" status: captured created_at: "2024-04-12T13:16:05.663195Z" error_code: null captured_at: "2024-04-12T13:16:08.821891Z" method_details: card: type: visa last4: "4242" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern type: card paypal: null payment_method_id: paymtd_01hv976x4ex3d5fevybar5e2cc payment_attempt_id: 22c9e7c0-d462-443c-bcc8-4a01e0d219b3 stored_payment_method_id: a947e973-f009-44b4-8d63-f3e23d17f100 checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv975mbh902hcyb7mks5kt0n created_at: "2024-04-12T13:15:23.99193Z" updated_at: "2024-04-12T13:16:10.457511846Z" billed_at: "2024-04-12T13:16:09.242831Z" - event_id: evt_01hv97724vbh6ybfv8970c2afz event_type: transaction.updated occurred_at: "2024-04-12T13:16:10.780163Z" data: id: txn_01hv975mbh902hcyb7mks5kt0n status: completed customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null custom_data: null currency_code: USD origin: web subscription_id: sub_01hv9770y40xzc823155s0z4zz invoice_id: inv_01hv9770zc8cs6exr53y8acsms invoice_number: 325-10576 collection_mode: automatic discount_id: null billing_details: null billing_period: ends_at: "2024-05-12T13:16:08.821891Z" starts_at: "2024-04-12T13:16:08.821891Z" items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null details: totals: fee: "3311" tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv976e05xem435dvr1ddqxjm totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv976e05xem435dvr5xrd067 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv976e05xem435dvrch5n26w totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: fee: "3311" tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "3311" tax: "5315" total: "65215" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD payments: - amount: "65215" status: captured created_at: "2024-04-12T13:16:05.663195Z" error_code: null captured_at: "2024-04-12T13:16:08.821891Z" method_details: card: type: visa last4: "4242" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern type: card paypal: null payment_method_id: paymtd_01hv976x4ex3d5fevybar5e2cc payment_attempt_id: 22c9e7c0-d462-443c-bcc8-4a01e0d219b3 stored_payment_method_id: a947e973-f009-44b4-8d63-f3e23d17f100 checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv975mbh902hcyb7mks5kt0n created_at: "2024-04-12T13:15:23.99193Z" updated_at: "2024-04-12T13:16:10.457511846Z" billed_at: "2024-04-12T13:16:09.242831Z" - event_id: evt_01hv9771vbe2sfpb0c6hbmk07t event_type: transaction.updated occurred_at: "2024-04-12T13:16:10.475957Z" data: id: txn_01hv975mbh902hcyb7mks5kt0n status: paid customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null custom_data: null currency_code: USD origin: web subscription_id: null invoice_id: inv_01hv9770zc8cs6exr53y8acsms invoice_number: 325-10576 collection_mode: automatic discount_id: null billing_details: null billing_period: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null details: totals: fee: "3311" tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv976e05xem435dvr1ddqxjm totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv976e05xem435dvr5xrd067 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv976e05xem435dvrch5n26w totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: fee: "3311" tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "3311" tax: "5315" total: "65215" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD payments: - amount: "65215" status: captured created_at: "2024-04-12T13:16:05.663195Z" error_code: null captured_at: "2024-04-12T13:16:08.821891Z" method_details: card: type: visa last4: "4242" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern type: card paypal: null payment_method_id: paymtd_01hv976x4ex3d5fevybar5e2cc payment_attempt_id: 22c9e7c0-d462-443c-bcc8-4a01e0d219b3 stored_payment_method_id: a947e973-f009-44b4-8d63-f3e23d17f100 checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv975mbh902hcyb7mks5kt0n created_at: "2024-04-12T13:15:23.99193Z" updated_at: "2024-04-12T13:16:10.002704119Z" billed_at: "2024-04-12T13:16:09.242831Z" - event_id: evt_01hv9771tccgcm4y810d8zbceh event_type: subscription.created occurred_at: "2024-04-12T13:16:10.444253Z" data: id: sub_01hv9770y40xzc823155s0z4zz status: active customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null currency_code: USD created_at: "2024-04-12T13:16:09.54Z" updated_at: "2024-04-12T13:16:09.54Z" started_at: "2024-04-12T13:16:08.821891Z" first_billed_at: "2024-04-12T13:16:08.821891Z" next_billed_at: "2024-05-12T13:16:08.821891Z" paused_at: null canceled_at: null discount: null collection_mode: automatic billing_details: null current_billing_period: ends_at: "2024-05-12T13:16:08.821891Z" starts_at: "2024-04-12T13:16:08.821891Z" billing_cycle: interval: month frequency: 1 scheduled_change: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] status: active quantity: 10 recurring: true created_at: "2024-04-12T13:16:09.54Z" updated_at: "2024-04-12T13:16:09.54Z" trial_dates: null next_billed_at: "2024-05-12T13:16:08.821891Z" previously_billed_at: "2024-04-12T13:16:08.821891Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] status: active quantity: 1 recurring: true created_at: "2024-04-12T13:16:09.54Z" updated_at: "2024-04-12T13:16:09.54Z" trial_dates: null next_billed_at: "2024-05-12T13:16:08.821891Z" previously_billed_at: "2024-04-12T13:16:08.821891Z" custom_data: null transaction_id: txn_01hv975mbh902hcyb7mks5kt0n import_meta: null - event_id: evt_01hv9771tc2xt9sx3zm8c9smq5 event_type: subscription.activated occurred_at: "2024-04-12T13:16:10.444253Z" data: id: sub_01hv9770y40xzc823155s0z4zz status: active customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null currency_code: USD created_at: "2024-04-12T13:16:09.54Z" updated_at: "2024-04-12T13:16:09.54Z" started_at: "2024-04-12T13:16:08.821891Z" first_billed_at: "2024-04-12T13:16:08.821891Z" next_billed_at: "2024-05-12T13:16:08.821891Z" paused_at: null canceled_at: null discount: null collection_mode: automatic billing_details: null current_billing_period: ends_at: "2024-05-12T13:16:08.821891Z" starts_at: "2024-04-12T13:16:08.821891Z" billing_cycle: interval: month frequency: 1 scheduled_change: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] status: active quantity: 10 recurring: true created_at: "2024-04-12T13:16:09.54Z" updated_at: "2024-04-12T13:16:09.54Z" trial_dates: null next_billed_at: "2024-05-12T13:16:08.821891Z" previously_billed_at: "2024-04-12T13:16:08.821891Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] status: active quantity: 1 recurring: true created_at: "2024-04-12T13:16:09.54Z" updated_at: "2024-04-12T13:16:09.54Z" trial_dates: null next_billed_at: "2024-05-12T13:16:08.821891Z" previously_billed_at: "2024-04-12T13:16:08.821891Z" custom_data: null import_meta: null - event_id: evt_01hv97710mwa4ng8nfntaw6ep0 event_type: transaction.updated occurred_at: "2024-04-12T13:16:09.620297Z" data: id: txn_01hv975mbh902hcyb7mks5kt0n status: paid customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null custom_data: null currency_code: USD origin: web subscription_id: null invoice_id: null invoice_number: null collection_mode: automatic discount_id: null billing_details: null billing_period: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv976e05xem435dvr1ddqxjm totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv976e05xem435dvr5xrd067 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv976e05xem435dvrch5n26w totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD payments: - amount: "65215" status: captured created_at: "2024-04-12T13:16:05.663195Z" error_code: null captured_at: "2024-04-12T13:16:08.821891Z" method_details: card: type: visa last4: "4242" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern type: card paypal: null payment_method_id: paymtd_01hv976x4ex3d5fevybar5e2cc payment_attempt_id: 22c9e7c0-d462-443c-bcc8-4a01e0d219b3 stored_payment_method_id: a947e973-f009-44b4-8d63-f3e23d17f100 checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv975mbh902hcyb7mks5kt0n created_at: "2024-04-12T13:15:23.99193Z" updated_at: "2024-04-12T13:16:09.242833687Z" billed_at: "2024-04-12T13:16:09.242831681Z" - event_id: evt_01hv9770zhgydwzjg323xyjpd5 event_type: transaction.paid occurred_at: "2024-04-12T13:16:09.585247Z" data: id: txn_01hv975mbh902hcyb7mks5kt0n status: paid customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null custom_data: null currency_code: USD origin: web subscription_id: null invoice_id: null invoice_number: null collection_mode: automatic discount_id: null billing_details: null billing_period: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv976e05xem435dvr1ddqxjm totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv976e05xem435dvr5xrd067 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv976e05xem435dvrch5n26w totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD payments: - amount: "65215" status: captured created_at: "2024-04-12T13:16:05.663195Z" error_code: null captured_at: "2024-04-12T13:16:08.821891Z" method_details: card: type: visa last4: "4242" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern type: card paypal: null payment_method_id: paymtd_01hv976x4ex3d5fevybar5e2cc payment_attempt_id: 22c9e7c0-d462-443c-bcc8-4a01e0d219b3 stored_payment_method_id: a947e973-f009-44b4-8d63-f3e23d17f100 checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv975mbh902hcyb7mks5kt0n created_at: "2024-04-12T13:15:23.99193Z" updated_at: "2024-04-12T13:16:09.242833687Z" billed_at: "2024-04-12T13:16:09.242831681Z" - event_id: evt_01hv976ea1ej1hghqgrkg2fvt9 event_type: transaction.ready occurred_at: "2024-04-12T13:15:50.465355Z" data: id: txn_01hv975mbh902hcyb7mks5kt0n status: ready customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null custom_data: null currency_code: USD origin: web subscription_id: null invoice_id: null invoice_number: null collection_mode: automatic discount_id: null billing_details: null billing_period: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv976e05xem435dvr1ddqxjm totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv976e05xem435dvr5xrd067 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv976e05xem435dvrch5n26w totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD payments: [] checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv975mbh902hcyb7mks5kt0n created_at: "2024-04-12T13:15:23.99193Z" updated_at: "2024-04-12T13:15:50.152793103Z" billed_at: null - event_id: evt_01hv976ea1cywqhzfb080z2xxt event_type: transaction.updated occurred_at: "2024-04-12T13:15:50.465356Z" data: id: txn_01hv975mbh902hcyb7mks5kt0n status: ready customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj address_id: add_01hv976dczs1h4a7zym0dn7qam business_id: null custom_data: null currency_code: USD origin: web subscription_id: null invoice_id: null invoice_number: null collection_mode: automatic discount_id: null billing_details: null billing_period: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv976e05xem435dvr1ddqxjm totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv976e05xem435dvr5xrd067 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv976e05xem435dvrch5n26w totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD payments: [] checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv975mbh902hcyb7mks5kt0n created_at: "2024-04-12T13:15:23.99193Z" updated_at: "2024-04-12T13:15:50.152793103Z" billed_at: null - event_id: evt_01hv976dwnjnykms495q110v4c event_type: address.created occurred_at: "2024-04-12T13:15:50.037665Z" data: id: add_01hv976dczs1h4a7zym0dn7qam description: null first_line: null second_line: null city: null postal_code: "10021" region: null country_code: US custom_data: null status: active created_at: "2024-04-12T13:15:49.535Z" updated_at: "2024-04-12T13:15:49.535Z" import_meta: null customer_id: ctm_01hv976dcgq4wmyrp8yq7asfmj - event_id: evt_01hv976dvatn4n7hyezq5jatef event_type: customer.created occurred_at: "2024-04-12T13:15:49.994206Z" data: id: ctm_01hv976dcgq4wmyrp8yq7asfmj name: null email: michael.mcgovern+events_test_docs@paddle.com marketing_consent: false status: active custom_data: null locale: en created_at: "2024-04-12T13:15:49.52Z" updated_at: "2024-04-12T13:15:49.52Z" import_meta: null - event_id: evt_01hv975mts2qpqmhp90jw3q0qj event_type: transaction.created occurred_at: "2024-04-12T13:15:24.378035Z" data: id: txn_01hv975mbh902hcyb7mks5kt0n status: draft customer_id: null address_id: null business_id: null custom_data: null currency_code: GBP origin: web subscription_id: null invoice_id: null invoice_number: null collection_mode: automatic discount_id: null billing_details: null billing_period: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null details: totals: fee: null tax: "9620" total: "57717" credit: "0" balance: "57717" discount: "0" earnings: null subtotal: "48097" grand_total: "57717" grand_total_tax: "9620" currency_code: GBP credit_to_balance: "0" line_items: - id: txnitm_01hv975me8rfkvky7dp1xjd0t6 totals: tax: "4818" total: "28908" discount: "0" subtotal: "24090" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.2" unit_totals: tax: "482" total: "2891" discount: "0" subtotal: "2409" - id: txnitm_01hv975me9b7g4e3dvhs4an6v3 totals: tax: "1606" total: "9635" discount: "0" subtotal: "8029" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.2" unit_totals: tax: "1606" total: "9635" discount: "0" subtotal: "8029" - id: txnitm_01hv975me9b7g4e3dvhwg988me totals: tax: "3196" total: "19174" discount: "0" subtotal: "15978" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.2" unit_totals: tax: "3196" total: "19174" discount: "0" subtotal: "15978" payout_totals: null tax_rates_used: - totals: tax: "9620" total: "57717" discount: "0" subtotal: "48097" tax_rate: "0.2" adjusted_totals: fee: "0" tax: "9620" total: "57717" earnings: "0" subtotal: "48097" grand_total: "57717" grand_total_tax: "9620" currency_code: GBP payments: [] checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv975mbh902hcyb7mks5kt0n created_at: "2024-04-12T13:15:23.991930137Z" updated_at: "2024-04-12T13:15:23.991930137Z" billed_at: null meta: pagination: per_page: 50 estimated_total: 12 next: https://api.paddle.com/events?after=evt_01hv976dvatn4n7hyezq5jatef has_more: false request_id: 249029c3-2342-4c8b-a946-75ad1052a1bd default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Events externalDocs: url: https://developer.paddle.com/api-reference/events/list-events description: List events x-permissions: - notification.read /ips: get: operationId: get-ip-addresses summary: Get Paddle IP addresses description: |- Returns Paddle IP addresses. You can add these IP addresses to your allowlist. IP addresses returned are for the environment that you're making the request in. For example, making the request to the production base URL returns all production IP addresses. parameters: [] responses: "200": description: The request has succeeded. headers: Etag: required: true description: Identifier for this version of the resource. schema: type: string Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: $ref: "#/components/schemas/IpAddressResponse" examples: Get Paddle IP addresses (200): summary: Get Paddle IP addresses (200) value: data: ipv4_cidrs: - 34.194.127.46/32 - 54.234.237.108/32 - 3.208.120.145/32 meta: request_id: ceca4b2f-db0d-4b00-9228-35e0dec592b4 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - IP addresses security: [] x-permissions: [] /metrics/monthly-recurring-revenue: get: operationId: get-metrics-monthly-recurring-revenue summary: Get MRR (monthly recurring revenue) metrics description: |- Returns timeseries data for monthly recurring revenue in a given date range. Trends have a daily granularity. Current monthly recurring revenue total. Includes new subscriptions, upgrades, downgrades and churn. Does not include one-time payments or deductions for Paddle fees. When `to` and `from` are the same, returns an empty timeseries. parameters: - $ref: "#/components/parameters/MetricsQueryParams.from" - $ref: "#/components/parameters/MetricsQueryParams.to" responses: "200": description: The request has succeeded. content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/MetricsTimeseriesMonthlyRecurringRevenue" meta: $ref: "#/components/schemas/Meta" examples: Get monthly recurring revenue (200): summary: Get monthly recurring revenue (200) value: data: timeseries: - timestamp: "2025-09-01T00:00:00Z" amount: "1286023068" - timestamp: "2025-09-02T00:00:00Z" amount: "1345678901" - timestamp: "2025-09-03T00:00:00Z" amount: "1398765432" - timestamp: "2025-09-04T00:00:00Z" amount: "1420987654" starts_at: "2025-09-01T00:00:00Z" ends_at: "2025-09-05T00:00:00Z" interval: day currency_code: USD updated_at: "2025-09-04T20:30:00Z" meta: request_id: b93d9c94-c28f-4e5d-af2e-044854d7afe8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Metrics x-permissions: - metrics.read /metrics/active-subscribers: get: operationId: get-metrics-active-subscribers summary: Get active subscribers metrics description: |- Returns timeseries data for active subscriber counts in a given date range. Trends have a daily granularity. Current number of paying users with active subscriptions (does not include trialling users). When `to` and `from` are the same, returns an empty timeseries. parameters: - $ref: "#/components/parameters/MetricsQueryParams.from" - $ref: "#/components/parameters/MetricsQueryParams.to" responses: "200": description: The request has succeeded. content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/MetricsTimeseriesActiveSubscribers" meta: $ref: "#/components/schemas/Meta" examples: Get active subscribers (200): summary: Get active subscribers (200) value: data: timeseries: - timestamp: "2025-09-01T00:00:00Z" count: 1250 - timestamp: "2025-09-02T00:00:00Z" count: 1267 - timestamp: "2025-09-03T00:00:00Z" count: 1284 - timestamp: "2025-09-04T00:00:00Z" count: 1291 starts_at: "2025-09-01T00:00:00Z" ends_at: "2025-09-05T00:00:00Z" interval: day updated_at: "2025-09-04T20:30:00Z" meta: request_id: b93d9c94-c28f-4e5d-af2e-044854d7afe8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Metrics x-permissions: - metrics.read /metrics/monthly-recurring-revenue-change: get: operationId: get-metrics-monthly-recurring-revenue-change summary: Get MRR change (monthly recurring revenue change) metrics description: |- Returns timeseries data for monthly recurring revenue change in a given date range. Trends have a daily granularity. Monthly recurring revenue (MRR) change compared to the same time interval last month. When `to` and `from` are the same, returns an empty timeseries. parameters: - $ref: "#/components/parameters/MetricsQueryParams.from" - $ref: "#/components/parameters/MetricsQueryParams.to" responses: "200": description: The request has succeeded. content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/MetricsTimeseriesMonthlyRecurringRevenueChange" meta: $ref: "#/components/schemas/Meta" examples: Get monthly recurring revenue change (200): summary: Get monthly recurring revenue change (200) value: data: timeseries: - timestamp: "2025-09-01T00:00:00Z" amount: "125000" - timestamp: "2025-09-02T00:00:00Z" amount: "-75000" - timestamp: "2025-09-03T00:00:00Z" amount: "200000" - timestamp: "2025-09-04T00:00:00Z" amount: "50000" starts_at: "2025-09-01T00:00:00Z" ends_at: "2025-09-05T00:00:00Z" interval: day currency_code: USD updated_at: "2025-09-04T20:30:00Z" meta: request_id: b93d9c94-c28f-4e5d-af2e-044854d7afe8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Metrics x-permissions: - metrics.read /metrics/revenue: get: operationId: get-metrics-revenue summary: Get net revenue metrics description: |- Returns timeseries data for revenue in a given date range. Trends have a daily granularity. Net revenue from completed payments (e.g. single purchase, subscription, B2B invoices) after tax & fees have been deducted, but before adjustments such as refunds or chargebacks. When `to` and `from` are the same, returns an empty timeseries. parameters: - $ref: "#/components/parameters/MetricsQueryParams.from" - $ref: "#/components/parameters/MetricsQueryParams.to" responses: "200": description: The request has succeeded. content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/MetricsTimeseriesRevenue" meta: $ref: "#/components/schemas/Meta" examples: Get revenue metrics (200): summary: Get revenue metrics (200) value: data: timeseries: - timestamp: "2025-09-01T00:00:00Z" amount: "1286023068" count: 100 - timestamp: "2025-09-02T00:00:00Z" amount: "1345678901" count: 100 - timestamp: "2025-09-03T00:00:00Z" amount: "1398765432" count: 100 - timestamp: "2025-09-04T00:00:00Z" amount: "1420987654" count: 100 starts_at: "2025-09-01T00:00:00Z" ends_at: "2025-09-05T00:00:00Z" interval: day currency_code: USD updated_at: "2025-09-04T20:30:00Z" meta: request_id: b93d9c94-c28f-4e5d-af2e-044854d7afe8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Metrics x-permissions: - metrics.read /metrics/refunds: get: operationId: get-metrics-refunds summary: Get refund metrics description: |- Returns timeseries data for refunds in a given date range. Trends have a daily granularity. The transaction subtotal (base cost minus discounts excluding taxes and fees) of refunded products returned to the customer. This does not include chargebacks. When `to` and `from` are the same, returns an empty timeseries. parameters: - $ref: "#/components/parameters/MetricsQueryParams.from" - $ref: "#/components/parameters/MetricsQueryParams.to" responses: "200": description: The request has succeeded. content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/MetricsTimeseriesRefunds" meta: $ref: "#/components/schemas/Meta" examples: Get refunds metrics (200): summary: Get refunds metrics (200) value: data: timeseries: - timestamp: "2025-09-01T00:00:00Z" amount: "10000" - timestamp: "2025-09-02T00:00:00Z" amount: "0" - timestamp: "2025-09-03T00:00:00Z" amount: "0" - timestamp: "2025-09-04T00:00:00Z" amount: "0" starts_at: "2025-09-01T00:00:00Z" ends_at: "2025-09-05T00:00:00Z" interval: day currency_code: USD updated_at: "2025-09-04T20:30:00Z" meta: request_id: b93d9c94-c28f-4e5d-af2e-044854d7afe8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Metrics x-permissions: - metrics.read /metrics/chargebacks: get: operationId: get-metrics-chargebacks summary: Get chargeback metrics description: |- Returns timeseries data for chargebacks in a given date range. Trends have a daily granularity. Total number of chargebacks received for the period. Does not include pre-chargeback alerts or chargeback reversals. When `to` and `from` are the same, returns an empty timeseries. parameters: - $ref: "#/components/parameters/MetricsQueryParams.from" - $ref: "#/components/parameters/MetricsQueryParams.to" responses: "200": description: The request has succeeded. content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/MetricsTimeseriesChargebacks" meta: $ref: "#/components/schemas/Meta" examples: Get chargebacks metrics (200): summary: Get chargebacks metrics (200) value: data: timeseries: - timestamp: "2025-09-01T00:00:00Z" count: 1 - timestamp: "2025-09-02T00:00:00Z" count: 2 - timestamp: "2025-09-03T00:00:00Z" count: 0 - timestamp: "2025-09-04T00:00:00Z" count: 1 starts_at: "2025-09-01T00:00:00Z" ends_at: "2025-09-05T00:00:00Z" interval: day updated_at: "2026-03-03T06:30:32.811Z" meta: request_id: b93d9c94-c28f-4e5d-af2e-044854d7afe8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Metrics x-permissions: - metrics.read /metrics/checkout-conversion: get: operationId: get-metrics-checkout-conversion summary: Get checkout conversion metrics description: |- Returns timeseries data for checkout conversion in a given date range. Trends have a daily granularity. The conversion rate for checkouts in the period. A checkout is considered converted when a payment is successfully completed. When `to` and `from` are the same, returns an empty timeseries. parameters: - $ref: "#/components/parameters/MetricsQueryParams.from" - $ref: "#/components/parameters/MetricsQueryParams.to" responses: "200": description: The request has succeeded. content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/MetricsTimeseriesCheckoutConversion" meta: $ref: "#/components/schemas/Meta" examples: Get checkout conversion metrics (200): summary: Get checkout conversion metrics (200) value: data: timeseries: - timestamp: "2025-09-01T00:00:00Z" count: 151 completed_count: 5 rate: "0.033113" - timestamp: "2025-09-02T00:00:00Z" count: 66 completed_count: 11 rate: "0.166667" - timestamp: "2025-09-03T00:00:00Z" count: 139 completed_count: 12 rate: "0.086331" - timestamp: "2025-09-04T00:00:00Z" count: 210 completed_count: 28 rate: "0.133333" starts_at: "2025-09-01T00:00:00Z" ends_at: "2025-09-05T00:00:00Z" interval: day updated_at: "2025-09-04T20:30:00Z" meta: request_id: b93d9c94-c28f-4e5d-af2e-044854d7afe8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Metrics x-permissions: - metrics.read /notification-settings: get: operationId: list-notification-settings summary: List notification settings description: Returns a paginated list of notification settings (notification destinations). parameters: - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/ListNotificationSettingsQueryParams.per_page" - $ref: "#/components/parameters/ListNotificationSettingsQueryParams.order_by" - $ref: "#/components/parameters/ListNotificationSettingsQueryParams.active" - $ref: "#/components/parameters/ListNotificationSettingsQueryParams.traffic_source" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/NotificationSetting" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List notification settings (200): summary: List notification settings (200) value: data: - id: ntfset_01gkpjp8bkm3tm53kdgkx6sms7 description: Slack notifications type: url destination: https://hooks.slack.com/example active: true api_version: 1 include_sensitive_fields: false traffic_source: all subscribed_events: - name: transaction.billed description: Occurs when a transaction is billed. group: Transaction available_versions: - 1 - name: transaction.canceled description: Occurs when a transaction is canceled. group: Transaction available_versions: - 1 - name: transaction.completed description: Occurs when a transaction is completed. group: Transaction available_versions: - 1 - name: transaction.created description: Occurs when a transaction is created. group: Transaction available_versions: - 1 - name: transaction.payment_failed description: Occurs when a payment fails for a transaction. group: Transaction available_versions: - 1 - name: transaction.ready description: Occurs when a transaction is ready. group: Transaction available_versions: - 1 - name: transaction.updated description: Occurs when a transaction is updated. group: Transaction available_versions: - 1 - name: subscription.activated description: Occurs when a subscription is activated. group: Subscription available_versions: - 1 - name: subscription.canceled description: Occurs when a subscription is canceled. group: Subscription available_versions: - 1 - name: subscription.created description: Occurs when a subscription is created. group: Subscription available_versions: - 1 - name: subscription.past_due description: Occurs when a subscription is past due. group: Subscription available_versions: - 1 - name: subscription.paused description: Occurs when a subscription is paused. group: Subscription available_versions: - 1 - name: subscription.resumed description: Occurs when a subscription is resumed. group: Subscription available_versions: - 1 - name: subscription.trialing description: Occurs when a subscription is trialing. group: Subscription available_versions: - 1 - name: subscription.updated description: Occurs when a subscription is updated. group: Subscription available_versions: - 1 endpoint_secret_key: pdl_ntfset_01gkpjp8bkm3tm53kdgkx6sms7_6h3qd3uFSi9YCD3OLYAShQI90XTI5vEI meta: pagination: per_page: 200 estimated_total: 1 next: https://api.paddle.com/notification-settings?after=ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 has_more: false request_id: 237fec70-9edb-4d93-90d9-e19ffa8bfe48 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notification settings externalDocs: url: https://developer.paddle.com/api-reference/notification-settings/list-notification-settings description: List notification settings x-permissions: - notification_setting.read post: operationId: create-notification-setting summary: Create a notification setting description: |- Creates a new notification setting (notification destination). Pass an array of event type names to `subscribed_events` to say which events you'd like to subscribe to. Paddle responds with the full event type object for each event type. If successful, your response includes a copy of the new notification setting entity. Use the returned `endpoint_secret_key` for webhook signature verification. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/NotificationSetting" meta: $ref: "#/components/schemas/Meta" examples: Create a notification setting (201): summary: Create a notification setting (201) value: data: id: ntfset_01gkpjp8bkm3tm53kdgkx6sms7 description: Slack notifications type: url destination: https://hooks.slack.com/example active: true api_version: 1 include_sensitive_fields: false traffic_source: all subscribed_events: - name: transaction.billed description: Occurs when a transaction is billed. group: Transaction available_versions: - 1 - name: transaction.canceled description: Occurs when a transaction is canceled. group: Transaction available_versions: - 1 - name: transaction.completed description: Occurs when a transaction is completed. group: Transaction available_versions: - 1 - name: transaction.created description: Occurs when a transaction is created. group: Transaction available_versions: - 1 - name: transaction.payment_failed description: Occurs when a payment fails for a transaction. group: Transaction available_versions: - 1 - name: transaction.ready description: Occurs when a transaction is ready. group: Transaction available_versions: - 1 - name: transaction.updated description: Occurs when a transaction is updated. group: Transaction available_versions: - 1 - name: subscription.activated description: Occurs when a subscription is activated. group: Subscription available_versions: - 1 - name: subscription.canceled description: Occurs when a subscription is canceled. group: Subscription available_versions: - 1 - name: subscription.created description: Occurs when a subscription is created. group: Subscription available_versions: - 1 - name: subscription.past_due description: Occurs when a subscription is past due. group: Subscription available_versions: - 1 - name: subscription.paused description: Occurs when a subscription is paused. group: Subscription available_versions: - 1 - name: subscription.resumed description: Occurs when a subscription is resumed. group: Subscription available_versions: - 1 - name: subscription.trialing description: Occurs when a subscription is trialing. group: Subscription available_versions: - 1 - name: subscription.updated description: Occurs when a subscription is updated. group: Subscription available_versions: - 1 endpoint_secret_key: pdl_ntfset_01gkpjp8bkm3tm53kdgkx6sms7_6h3qd3uFSi9YCD3OLYAShQI90XTI5vEI meta: request_id: fd55d51a-6242-4645-8572-af2a8b6f41b6 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notification settings externalDocs: url: https://developer.paddle.com/api-reference/notification-settings/create-notification-setting description: Create a notification setting requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/NotificationSettingCreate" examples: Create a notification setting (201): summary: Create a notification setting (201) value: description: Slack notifications type: url destination: https://hooks.slack.com/example api_version: 1 traffic_source: all subscribed_events: - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.payment_failed - transaction.ready - transaction.updated - subscription.activated - subscription.created - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated x-permissions: - notification_setting.write /notification-settings/{notification_setting_id}: get: operationId: get-notification-setting summary: Get a notification setting description: Returns a notification setting (notification destination) using its ID. parameters: - $ref: "#/components/parameters/NotificationSettingIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/NotificationSetting" meta: $ref: "#/components/schemas/Meta" examples: Get a notification setting (200): summary: Get a notification setting (200) value: data: id: ntfset_01gkpjp8bkm3tm53kdgkx6sms7 description: Slack notifications type: url destination: https://hooks.slack.com/example active: true api_version: 1 include_sensitive_fields: false traffic_source: all subscribed_events: - name: transaction.billed description: Occurs when a transaction is billed. group: Transaction available_versions: - 1 - name: transaction.canceled description: Occurs when a transaction is canceled. group: Transaction available_versions: - 1 - name: transaction.completed description: Occurs when a transaction is completed. group: Transaction available_versions: - 1 - name: transaction.created description: Occurs when a transaction is created. group: Transaction available_versions: - 1 - name: transaction.payment_failed description: Occurs when a payment fails for a transaction. group: Transaction available_versions: - 1 - name: transaction.ready description: Occurs when a transaction is ready. group: Transaction available_versions: - 1 - name: transaction.updated description: Occurs when a transaction is updated. group: Transaction available_versions: - 1 - name: subscription.activated description: Occurs when a subscription is activated. group: Subscription available_versions: - 1 - name: subscription.canceled description: Occurs when a subscription is canceled. group: Subscription available_versions: - 1 - name: subscription.created description: Occurs when a subscription is created. group: Subscription available_versions: - 1 - name: subscription.past_due description: Occurs when a subscription is past due. group: Subscription available_versions: - 1 - name: subscription.paused description: Occurs when a subscription is paused. group: Subscription available_versions: - 1 - name: subscription.resumed description: Occurs when a subscription is resumed. group: Subscription available_versions: - 1 - name: subscription.trialing description: Occurs when a subscription is trialing. group: Subscription available_versions: - 1 - name: subscription.updated description: Occurs when a subscription is updated. group: Subscription available_versions: - 1 endpoint_secret_key: pdl_ntfset_01gkpjp8bkm3tm53kdgkx6sms7_6h3qd3uFSi9YCD3OLYAShQI90XTI5vEI meta: request_id: c45900af-c48b-46cd-a917-126e433feb21 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notification settings externalDocs: url: https://developer.paddle.com/api-reference/notification-settings/get-notification-setting description: Get a notification setting x-permissions: - notification_setting.read patch: operationId: update-notification-setting summary: Update a notification setting description: |- Updates a notification setting (notification destination) using its ID. When updating subscribed events, send the complete list of event types that you'd like to subscribe to — including existing event types. If you omit event types, they're removed from the notification setting. You only need to pass an event type name. Paddle responds with the full event type object for each event type. If successful, your response includes a copy of the updated notification setting entity. parameters: - $ref: "#/components/parameters/NotificationSettingIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/NotificationSetting" meta: $ref: "#/components/schemas/Meta" examples: Update a notification setting (200): summary: Update a notification setting (200) value: data: id: ntfset_01gkpjp8bkm3tm53kdgkx6sms7 description: Slack notifications (old) type: url destination: https://hooks.slack.com/example active: false api_version: 1 include_sensitive_fields: false traffic_source: all subscribed_events: - name: transaction.billed description: Occurs when a transaction is billed. group: Transaction available_versions: - 1 - name: transaction.canceled description: Occurs when a transaction is canceled. group: Transaction available_versions: - 1 - name: transaction.completed description: Occurs when a transaction is completed. group: Transaction available_versions: - 1 - name: transaction.created description: Occurs when a transaction is created. group: Transaction available_versions: - 1 - name: transaction.payment_failed description: Occurs when a payment fails for a transaction. group: Transaction available_versions: - 1 - name: transaction.ready description: Occurs when a transaction is ready. group: Transaction available_versions: - 1 - name: transaction.updated description: Occurs when a transaction is updated. group: Transaction available_versions: - 1 - name: subscription.activated description: Occurs when a subscription is activated. group: Subscription available_versions: - 1 - name: subscription.canceled description: Occurs when a subscription is canceled. group: Subscription available_versions: - 1 - name: subscription.created description: Occurs when a subscription is created. group: Subscription available_versions: - 1 - name: subscription.past_due description: Occurs when a subscription is past due. group: Subscription available_versions: - 1 - name: subscription.paused description: Occurs when a subscription is paused. group: Subscription available_versions: - 1 - name: subscription.resumed description: Occurs when a subscription is resumed. group: Subscription available_versions: - 1 - name: subscription.trialing description: Occurs when a subscription is trialing. group: Subscription available_versions: - 1 - name: subscription.updated description: Occurs when a subscription is updated. group: Subscription available_versions: - 1 endpoint_secret_key: pdl_ntfset_01gkpjp8bkm3tm53kdgkx6sms7_6h3qd3uFSi9YCD3OLYAShQI90XTI5vEI meta: request_id: be464f91-8050-49df-a351-994b25da3714 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notification settings externalDocs: url: https://developer.paddle.com/api-reference/notification-settings/update-notification-setting description: Update a notification setting requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/NotificationSettingUpdate" examples: Update a notification setting (200): summary: Update a notification setting (200) value: description: Slack notifications (old) active: false x-permissions: - notification_setting.write delete: operationId: delete-notification-setting summary: Delete a notification setting description: |- Deletes a notification setting (notification destination) using its ID. When you delete a notification setting, it's permanently removed from your account. Paddle stops sending events to your destination, and you'll lose access to all the logs for this notification setting. There's no way to recover a deleted notification setting. Deactivate a notification setting using the update notification setting operation if you'll need access to the logs or want to reactivate later on. parameters: - $ref: "#/components/parameters/NotificationSettingIdPathParam" responses: "204": description: "There is no content to send for this request, but the headers may be useful. " headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notification settings externalDocs: url: https://developer.paddle.com/api-reference/notification-settings/delete-notification-setting description: Delete a notification setting x-permissions: - notification_setting.write /notifications: get: operationId: list-notifications summary: List notifications description: |- Returns a paginated list of notifications created in the last 90 days. Use the query parameters to page through results. Notifications older than 90 days aren't retained. parameters: - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListNotificationsQueryParams.notification_setting_id" - $ref: "#/components/parameters/ListNotificationsQueryParams.order_by" - $ref: "#/components/parameters/ListNotificationsQueryParams.search" - $ref: "#/components/parameters/NotificationStatusQuery" - $ref: "#/components/parameters/ListNotificationsQueryParams.filter" - $ref: "#/components/parameters/ListNotificationsQueryParams.to" - $ref: "#/components/parameters/ListNotificationsQueryParams.from" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Notification" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List notifications (200): summary: List notifications (200) value: data: - id: ntf_01hv97zsr34dfd2e6wd9cswxmr type: transaction.created status: delivered payload: data: id: txn_01hv97zs15kbb9gxy2v6cf2wwv items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 proration: null - price: id: pri_01gsz95g2zrkagg294kpstx54r name: Monthly (recurring addon) type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:59:52.159927Z" product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz unit_price: amount: "25000" currency_code: USD updated_at: "2024-04-09T07:27:48.018296Z" custom_data: null description: Monthly (recurring addon) trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] price_id: pri_01gsz95g2zrkagg294kpstx54r quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 proration: null origin: web status: draft details: totals: fee: null tax: "1125916" total: "7381008" credit: "0" balance: "7381008" discount: "0" earnings: null subtotal: "6255092" grand_total: "7381008" grand_total_tax: "1125916" currency_code: INR credit_to_balance: "0" line_items: - id: txnitm_01hv97zs4wbdcf81dp61kzg13h totals: tax: "450968" total: "2956348" discount: "0" subtotal: "2505380" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.18" unit_totals: tax: "45097" total: "295635" discount: "0" subtotal: "250538" - id: txnitm_01hv97zs4xjqp4k3zq4x96h44s totals: tax: "375806" total: "2463619" discount: "0" subtotal: "2087813" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" custom_data: null description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. tax_category: standard price_id: pri_01gsz95g2zrkagg294kpstx54r quantity: 1 tax_rate: "0.18" unit_totals: tax: "375806" total: "2463619" discount: "0" subtotal: "2087813" - id: txnitm_01hv97zs4xjqp4k3zq51afsq64 totals: tax: "299142" total: "1961041" discount: "0" subtotal: "1661899" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.18" unit_totals: tax: "299142" total: "1961041" discount: "0" subtotal: "1661899" payout_totals: null tax_rates_used: - totals: tax: "1125916" total: "7381008" discount: "0" subtotal: "6255092" tax_rate: "0.18" adjusted_totals: fee: "0" tax: "1125916" total: "7381008" earnings: "0" subtotal: "6255092" grand_total: "7381008" grand_total_tax: "1125916" currency_code: INR checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv97zs15kbb9gxy2v6cf2wwv payments: [] billed_at: null address_id: null created_at: "2024-04-12T13:29:40.776624164Z" invoice_id: null updated_at: "2024-04-12T13:29:40.776624164Z" business_id: null custom_data: null customer_id: null discount_id: null currency_code: INR billing_period: null invoice_number: null billing_details: null collection_mode: automatic subscription_id: null event_id: evt_01hv97zsncpa0sfvnjp8n2hrwn event_type: transaction.created occurred_at: "2024-04-12T13:29:41.292497Z" notification_id: ntf_01hv97zsr34dfd2e6wd9cswxmr occurred_at: "2024-04-12T13:29:41.292497Z" delivered_at: "2024-04-12T13:29:41.292497Z" replayed_at: null origin: event last_attempt_at: "2024-04-12T13:29:41.292497Z" retry_at: null times_attempted: 1 notification_setting_id: ntfset_01hv6scjn6ex5bej5bdy4w9ax3 - id: ntf_01hv8z6xbf0ess9feze3x6zjs4 type: subscription.updated status: delivered payload: data: id: sub_01hv8y5ehszzq0yv20ttx3166y items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] status: active quantity: 20 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.76Z" trial_dates: null next_billed_at: "2024-05-12T10:37:59.556997Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" trial_dates: null next_billed_at: "2024-05-12T10:37:59.556997Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" - price: id: pri_01gsz95g2zrkagg294kpstx54r name: Monthly (recurring addon) type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:59:52.159927Z" product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz unit_price: amount: "25000" currency_code: USD updated_at: "2024-04-09T07:27:48.018296Z" custom_data: null description: Monthly (recurring addon) import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] status: active quantity: 1 recurring: true created_at: "2024-04-12T10:49:38.765Z" updated_at: "2024-04-12T10:49:38.765Z" trial_dates: null next_billed_at: "2024-05-12T10:37:59.556997Z" previously_billed_at: "2024-04-12T10:49:38.765Z" status: active discount: null paused_at: null address_id: add_01hv8y4jk511j9g2n9a2mexjbx created_at: "2024-04-12T10:38:00.761Z" started_at: "2024-04-12T10:37:59.556997Z" updated_at: "2024-04-12T10:56:12.174Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: "2024-05-12T10:37:59.556997Z" billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T10:37:59.556997Z" scheduled_change: null current_billing_period: ends_at: "2024-05-12T10:37:59.556997Z" starts_at: "2024-04-12T10:37:59.556997Z" event_id: evt_01hv8z6x7sa0w8g546s9zp9wqn event_type: subscription.updated occurred_at: "2024-04-12T10:56:17.146536Z" notification_id: ntf_01hv8z6xbf0ess9feze3x6zjs4 occurred_at: "2024-04-12T10:56:17.146536Z" delivered_at: "2024-04-12T10:56:17.935256Z" replayed_at: null origin: event last_attempt_at: "2024-04-12T10:56:17.298791Z" retry_at: null times_attempted: 1 notification_setting_id: ntfset_01hv6scjn6ex5bej5bdy4w9ax3 - id: ntf_01hv8ye54nwxqd3g1ghqb4xvyz type: price.updated status: delivered payload: data: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] event_id: evt_01hv8ye51rxhagef8ejdt3aynh event_type: price.updated occurred_at: "2024-04-12T10:42:45.944926Z" notification_id: ntf_01hv8ye54nwxqd3g1ghqb4xvyz occurred_at: "2024-04-12T10:42:45.944926Z" delivered_at: "2024-04-12T10:42:46.558799Z" replayed_at: null origin: event last_attempt_at: "2024-04-12T10:42:46.071552Z" retry_at: null times_attempted: 1 notification_setting_id: ntfset_01hv6scjn6ex5bej5bdy4w9ax3 - id: ntf_01hv97gex1eh5dgk66zdvx2nnv type: customer.created status: failed payload: data: id: ctm_01hv97ge72msbwbz81y94xbaat name: null email: sam@example.com locale: en status: active created_at: "2024-04-12T13:21:18.05Z" updated_at: "2024-04-12T13:21:18.05Z" custom_data: null import_meta: null marketing_consent: false event_id: evt_01hv97getvqznt2h5h9ewcdq6a event_type: customer.created occurred_at: "2024-04-12T13:21:18.684096Z" notification_id: ntf_01hv97gex1eh5dgk66zdvx2nnv occurred_at: "2024-04-12T13:21:18.684096Z" delivered_at: null replayed_at: null origin: event last_attempt_at: "2024-04-12T13:39:53.891636Z" retry_at: null times_attempted: 10 notification_setting_id: ntfset_01hv6scjn6ex5bej5bdy4w9ax3 - id: ntf_01hv97gev5hj84053cj191q10h type: address.created status: failed payload: data: id: add_01hv97ge7jahbj7gns16q0s2pf city: null region: null status: active created_at: "2024-04-12T13:21:18.066Z" first_line: null updated_at: "2024-04-12T13:21:18.066Z" custom_data: null customer_id: ctm_01hv97ge72msbwbz81y94xbaat description: null import_meta: null postal_code: null second_line: null country_code: PT event_id: evt_01hv97gera4x064k4081ws049k event_type: address.created occurred_at: "2024-04-12T13:21:18.602413Z" notification_id: ntf_01hv97gev5hj84053cj191q10h occurred_at: "2024-04-12T13:21:18.602413Z" delivered_at: null replayed_at: null origin: event last_attempt_at: "2024-04-12T13:39:52.886600Z" retry_at: null times_attempted: 10 notification_setting_id: ntfset_01hv6scjn6ex5bej5bdy4w9ax3 meta: pagination: per_page: 50 estimated_total: 5 next: https://api.paddle.com/notifications?after=ntf_01hv97gev5hj84053cj191q10h has_more: true request_id: 326bebec-4dcd-4a4d-b094-cf47f5156faf default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notifications externalDocs: url: https://developer.paddle.com/api-reference/notifications/list-notifications description: List notifications x-permissions: - notification.read /notifications/{notification_id}: get: operationId: get-notification summary: Get a notification description: |- Returns a notification using its ID. Notifications older than 90 days aren't retained. If you try to get a notification that's no longer retained, Paddle returns an error. parameters: - $ref: "#/components/parameters/NotificationIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Notification" meta: $ref: "#/components/schemas/Meta" examples: Get a notification (200): summary: Get a notification (200) value: data: id: ntf_01hvg8ykjrcdr4jvv9rqcbkhfa type: address.created status: failed payload: data: id: add_01hvg8yk4s1aqa37kxspd51bwg city: null region: null status: active created_at: "2024-04-15T07:01:11.449Z" first_line: null updated_at: "2024-04-15T07:01:11.449Z" custom_data: null customer_id: ctm_01gzgmxdmgkgc7p94b5kgqq82p description: null import_meta: null postal_code: "10021" second_line: null country_code: US event_id: evt_01hvg8ykgj5r02vvn44b8hdp8d event_type: address.created occurred_at: "2024-04-15T07:01:11.826666Z" notification_id: ntf_01hvg8ykjrcdr4jvv9rqcbkhfa occurred_at: "2024-04-15T07:01:11.826666Z" delivered_at: null replayed_at: null origin: event last_attempt_at: "2024-04-15T07:19:56.553479Z" retry_at: null times_attempted: 10 notification_setting_id: ntfset_01hv6scjn6ex5bej5bdy4w9ax3 meta: request_id: 50aa6efc-5c11-47f4-8a7a-d13d1ffd85f2 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notifications externalDocs: url: https://developer.paddle.com/api-reference/notifications/get-notification description: Get a notification x-permissions: - notification.read /notifications/{notification_id}/logs: get: operationId: list-notification-logs summary: List logs for a notification description: |- Returns a paginated list of notification logs for a notification. A log includes information about delivery attempts, including failures. Notifications older than 90 days aren't retained. If you try to list logs for a notification that's no longer retained, Paddle returns an error. parameters: - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/NotificationIdPathParam" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/NotificationLog" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List logs for a notification (200): summary: List logs for a notification (200) value: data: - id: ntflog_01h8c0bswct46cwamynrzs6fwr response_code: 200 response_content_type: text/plain; charset=UTF-8 response_body: "" attempted_at: "2023-08-21T12:15:54.764232Z" - id: ntflog_01h8c04xjj1ybcgsawp54h5zkr response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T12:12:09.170559Z" - id: ntflog_01h8bzyx2g57ywng4edfnpycya response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T12:08:52.049462Z" - id: ntflog_01h8bzsp45tvprvrra1jq5m2n5 response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T12:06:01.093936Z" - id: ntflog_01h8bzn9vr2j0hav6bqjvmfhwj response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T12:03:37.464996Z" - id: ntflog_01h8bzhqdt790wtmepa10we4ed response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T12:01:40.282965Z" - id: ntflog_01h8bzey4xs3txscjw7td3793c response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T12:00:08.861949Z" - id: ntflog_01h8bzcx9gwtcvf000ngvacnnw response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T11:59:02.448596Z" - id: ntflog_01h8bzb80ns1dtwmjsx311ztcw response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T11:58:07.893473Z" - id: ntflog_01h8bzame8ykt2zw5a11mxs110 response_code: 404 response_content_type: application/json response_body: '{"success":false,"error":{"message":"Token not found","id":null}}' attempted_at: "2023-08-21T11:57:47.848991Z" meta: pagination: per_page: 50 estimated_total: 10 next: https://api.paddle.com/notifications/ntf_01h8bzam1z32agrxjwhjgqk8w6/logs?after=ntflog_01h8bzame8ykt2zw5a11mxs110 has_more: false request_id: b12dc646-6131-4801-b76a-b717d1aff37c default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notification logs externalDocs: url: https://developer.paddle.com/api-reference/notification-logs/list-notification-logs description: List logs for a notification x-permissions: - notification.read /notifications/{notification_id}/replay: post: operationId: replay-notification summary: Replay a notification description: |- Attempts to resend a `delivered` or `failed` notification using its ID. Paddle creates a new notification entity for the replay, related to the same `event_id`. Your response includes the new `notification_id` of the created notification. Notifications older than 90 days aren't retained. If you try to replay a notification that's no longer retained, Paddle returns an error. Only notifications with the `origin` of `event` can be replayed. You can't replay a notification created for a replay. parameters: - $ref: "#/components/parameters/NotificationIdPathParam" responses: "202": description: The request has been accepted for processing, but processing has not yet completed. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/NotificationReplay" meta: $ref: "#/components/schemas/Meta" examples: Replay a notification (202): summary: Replay a notification (202) value: data: notification_id: ntf_01h46h1s2zabpkdks7yt4vkgkc meta: request_id: cfe92cac-86a1-49fe-ac50-20620dcd024f default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Notifications externalDocs: url: https://developer.paddle.com/api-reference/notifications/replay-notification description: Replay a notification x-permissions: - notification.write /customers/{customer_id}/payment-methods: get: operationId: list-customer-payment-methods summary: List payment methods for a customer description: |- Returns a paginated list of payment methods that a customer has saved. Use the query parameters to page through results. Customers can choose to save payment methods when purchasing one-time items and subscriptions by checking a box when completing checkout. You can present customers with their saved payment methods when they make a purchase in the future. Returns an empty list where customers have not saved any payment methods, or have deleted all previously saved payment methods. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListCustomerPaymentMethodsQueryParams.address_id" - $ref: "#/components/parameters/ListCustomerPaymentMethodsQueryParams.order_by" - $ref: "#/components/parameters/ListCustomerPaymentMethodsQueryParams.supports_checkout" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/CustomerPaymentMethod" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List payment methods for a customer (200): summary: List payment methods for a customer (200) value: data: - customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01j2jfab8zcjy524w6e4s1knjy id: paymtd_01j2jff1m3es31sdkejpaym164 type: card card: cardholder_name: Sam Miller type: visa last4: "4242" expiry_month: 5 expiry_year: 2025 paypal: null origin: saved_during_purchase saved_at: "2024-07-12T03:23:26Z" updated_at: "2024-10-29T14:12:28.018784Z" underlying_details: null south_korea_local_card: null meta: request_id: 0a5ed361-6e13-4cf0-bcad-cca2fca21dca pagination: per_page: 50 next: https://api.paddle.com/customers/ctm_01hv6y1jedq4p1n0yqn5ba3ky4/payment-methods?after=paymtd_01j2jff1m3es31sdkejpaym164 has_more: false estimated_total: 1 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Payment methods externalDocs: url: https://developer.paddle.com/api-reference/payment-methods/list-payment-methods description: List payment methods for a customer x-permissions: - payment_method.read /customers/{customer_id}/payment-methods/{payment_method_id}: get: operationId: get-customer-payment-method summary: Get a payment method for a customer description: Returns a payment method for a customer using its ID and related customer ID. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" - $ref: "#/components/parameters/PaymentMethodIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/CustomerPaymentMethod" meta: $ref: "#/components/schemas/Meta" examples: Get a payment method for a customer (200): summary: Get a payment method for a customer (200) value: data: customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01j2jfab8zcjy524w6e4s1knjy id: paymtd_01j2jff1m3es31sdkejpaym164 type: card card: cardholder_name: Sam Miller type: visa last4: "4242" expiry_month: 5 expiry_year: 2025 paypal: null origin: saved_during_purchase saved_at: "2024-07-12T03:23:26Z" updated_at: "2024-10-29T14:12:28.018784Z" underlying_details: null south_korea_local_card: null meta: request_id: 03dae283-b7e9-47dc-b8c0-229576d90139 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Payment methods externalDocs: url: https://developer.paddle.com/api-reference/payment-methods/get-payment-method description: Get a payment method for a customer x-permissions: - payment_method.read delete: operationId: delete-customer-payment-method summary: Delete a payment method for a customer description: |- Deletes a customer payment method using its ID. Deleted payment methods are no longer saved and presented to the customer for future purchases. Saved payment methods can't be deleted if tied to an `active`, `trialing`, `paused`, or `past_due` subscription. Update the subscription's payment method first, then delete the saved payment method. There's no way to recover a deleted saved payment method. It's permanently removed from that customer. parameters: - $ref: "#/components/parameters/CustomerIdPathParam" - $ref: "#/components/parameters/PaymentMethodIdPathParam" responses: "204": description: "There is no content to send for this request, but the headers may be useful. " headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Payment methods externalDocs: url: https://developer.paddle.com/api-reference/payment-methods/delete-payment-method description: Delete a payment method for a customer x-permissions: - payment_method.write /prices: get: operationId: list-prices summary: List prices description: |- Returns a paginated list of prices. Use the query parameters to page through results. By default, Paddle returns prices that are `active`. Use the `status` query parameter to return prices that are archived. Use the `include` parameter to include the related product entity in the response. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/PriceListIncludeQuery" - $ref: "#/components/parameters/ListPricesQueryParams.order_by" - $ref: "#/components/parameters/ListPricesQueryParams.product_id" - $ref: "#/components/parameters/DefaultStatusQuery" - $ref: "#/components/parameters/ListPricesQueryParams.recurring" - $ref: "#/components/parameters/ListPricesQueryParams.price_billing_cycle_interval" - $ref: "#/components/parameters/ListPricesQueryParams.price_billing_cycle_frequency" - $ref: "#/components/parameters/CatalogTypeQuery" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/PriceIncludes" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List prices (200): summary: List prices (200) value: data: - id: pri_01h1vjg3sqjj1y9tvazkdqe5vt product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Annual name: Annual (recurring addon) billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "100000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-06-01T13:31:34.071379Z" updated_at: "2024-04-05T14:33:40.972651Z" - id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" - id: pri_01gvne87kv8vbqa9jkfbmgtsed product_id: pro_01gsz4vmqbjk3x4vvtafffd540 type: standard description: Monthly name: Monthly (per seat) billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "5000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-03-16T14:47:43.995985Z" updated_at: "2024-04-09T07:29:19.91977Z" - id: pri_01gsz98e27ak2tyhexptwc58yk product_id: pro_01gsz97mq9pa4fkyy0wqenepkz type: standard description: One-time addon name: One-time addon billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" - id: pri_01gsz96z29d88jrmsf2ztbfgjg product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Annual (recurring addon) name: Annual (recurring addon) billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "300000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T14:00:40.265185Z" updated_at: "2024-03-25T14:31:18.587603Z" - id: pri_01gsz95g2zrkagg294kpstx54r product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Monthly (recurring addon) name: Monthly (recurring addon) billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "25000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T13:59:52.159927Z" updated_at: "2024-04-09T07:27:48.018296Z" - id: pri_01gsz91wy9k1yn7kx82aafwvea product_id: pro_01gsz4vmqbjk3x4vvtafffd540 type: standard description: Annual name: Annual (per seat) billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "50000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-02-23T13:57:54.249913Z" updated_at: "2024-04-05T14:32:00.471447Z" - id: pri_01gsz8z1q1n00f12qt82y31smh product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Annual name: Annual (per seat) billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "30000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:56:20.833019Z" updated_at: "2024-04-11T13:47:49.566301Z" - id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" - id: pri_01gsz8s48pyr4mbhvv2xfggesg product_id: pro_01gsz4s0w61y0pp88528f1wvvb type: standard description: Annual name: Annual (per seat) billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-02-23T13:53:06.838342Z" updated_at: "2024-04-09T07:24:33.205169Z" - id: pri_01gsz8ntc6z7npqqp6j4ys0w1w product_id: pro_01gsz4s0w61y0pp88528f1wvvb type: standard description: Monthly name: Monthly (per seat) billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "1000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-02-23T13:51:18.406674Z" updated_at: "2024-04-05T14:29:40.000454Z" meta: request_id: f44951b7-d24c-42cd-9477-57e659822674 pagination: per_page: 50 next: https://api.paddle.com/prices?after=pri_01gsz8ntc6z7npqqp6j4ys0w1w has_more: false estimated_total: 1 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Prices externalDocs: url: https://developer.paddle.com/api-reference/prices/list-prices description: List prices x-permissions: - price.read post: operationId: create-price summary: Create a price description: |- Creates a new price. Prices describe how you charge for products. You must include a `product_id` in your request to relate this price to a product. If you omit the `quantity` object, Paddle automatically sets a minimum of `1` and a maximum of `100` for you. This means the most units that a customer can buy is 100. Set a quantity if you'd like to offer a different amount. If successful, your response includes a copy of the new price entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Price" meta: $ref: "#/components/schemas/Meta" examples: Create a price with a paid trial (201): summary: Create a price with a paid trial (201) value: data: id: pri_01hv0vax6rv18t4tamj848ne4d product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 type: standard description: Monthly (per seat) with 14 day paid trial name: Monthly (per seat) billing_cycle: interval: month frequency: 1 trial_period: interval: day frequency: 14 requires_payment_method: true unit_price: amount: "100" currency_code: USD tax_mode: account_setting unit_price: amount: "500" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2024-04-09T07:14:38.424504286Z" updated_at: "2024-04-09T07:14:38.424504359Z" meta: request_id: 9e7f51e8-838b-4b2c-b0fa-d52d0593354c Create a price (201): summary: Create a price (201) value: data: id: pri_01hv0vax6rv18t4tamj848ne4d product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 type: standard description: Monthly (per seat) with 14 day trial name: Monthly (per seat) billing_cycle: interval: month frequency: 1 trial_period: interval: day frequency: 14 requires_payment_method: false tax_mode: account_setting unit_price: amount: "500" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2024-04-09T07:14:38.424504286Z" updated_at: "2024-04-09T07:14:38.424504359Z" meta: request_id: 9e7f51e8-838b-4b2c-b0fa-d52d0593354c default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Prices externalDocs: url: https://developer.paddle.com/api-reference/prices/create-price description: Create a price requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/PriceCreate" examples: Create a price with a paid trial (201): summary: Create a price with a paid trial (201) value: description: Monthly (per seat) with 14 day paid trial name: Monthly (per seat) product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 unit_price: amount: "500" currency_code: USD billing_cycle: interval: month frequency: 1 trial_period: interval: day frequency: 14 requires_payment_method: true unit_price: amount: "100" currency_code: USD tax_mode: account_setting Create a price (201): summary: Create a price (201) value: description: Monthly (per seat) with 14 day trial name: Monthly (per seat) product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 unit_price: amount: "500" currency_code: USD billing_cycle: interval: month frequency: 1 trial_period: interval: day frequency: 14 tax_mode: account_setting x-permissions: - price.write /prices/{price_id}: get: operationId: get-price summary: Get a price description: |- Returns a price using its ID. Use the `include` parameter to include the related product entity in the response. parameters: - $ref: "#/components/parameters/PriceIncludeQuery" - $ref: "#/components/parameters/PriceIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/PriceWithProductCollectionIncludes" meta: $ref: "#/components/schemas/Meta" examples: Get a price (200): summary: Get a price (200) value: data: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" meta: request_id: ad44ee69-87c9-4d43-9d51-6c2c701c94f6 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Prices externalDocs: url: https://developer.paddle.com/api-reference/prices/get-price description: Get a price x-permissions: - price.read patch: operationId: update-price summary: Update a price description: |- Updates a price using its ID. If successful, your response includes a copy of the updated price entity. parameters: - $ref: "#/components/parameters/PriceIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Price" meta: $ref: "#/components/schemas/Meta" examples: Update a price (200): summary: Update a price (200) value: data: id: pri_01hv0vax6rv18t4tamj848ne4d product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 type: standard description: Monthly (per seat) with 14 day trial name: Monthly (per seat) billing_cycle: interval: month frequency: 1 trial_period: interval: day frequency: 14 requires_payment_method: false tax_mode: account_setting unit_price: amount: "500" currency_code: USD unit_price_overrides: - country_codes: - IE - FR - DE unit_price: amount: "700" currency_code: EUR - country_codes: - GB unit_price: amount: "600" currency_code: GBP custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2024-04-09T07:14:38.424504Z" updated_at: "2024-04-09T07:15:53.950721Z" meta: request_id: ceb43bdd-c373-4893-952a-ed4f7ad4f2c8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Prices externalDocs: url: https://developer.paddle.com/api-reference/prices/update-price description: Update a price requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/PriceUpdate" examples: Update a price (200): summary: Update a price (200) value: unit_price: amount: "500" currency_code: USD unit_price_overrides: - country_codes: - IE - FR - DE unit_price: amount: "700" currency_code: EUR - country_codes: - GB unit_price: amount: "600" currency_code: GBP billing_cycle: interval: month frequency: 1 x-permissions: - price.write /pricing-preview: post: operationId: preview-prices summary: Preview prices description: |- Previews calculations for one or more prices. Typically used for building pricing pages. You can provide location information when previewing prices. You must provide this if you want Paddle to calculate tax or [automatically localize prices](https://developer.paddle.com/build/products/offer-localized-pricing). You can provide one of: * `customer_ip_address`: Paddle fetches location using the IP address to calculate totals. * `address`: Paddle uses the country and ZIP code (where supplied) to calculate totals. * `customer_id`, `address_id`, `business_id`: Paddle uses existing customer data to calculate totals. Typically used for logged-in customers. If successful, your response includes the data you sent with a `details` object that includes totals for the supplied prices. Each line item includes `formatted_unit_totals` and `formatted_totals` objects that return totals formatted for the country or region you're working with, including the currency symbol. You can work with the preview prices operation using the [`Paddle.PricePreview()`](https://developer.paddle.com/paddlejs/methods/paddle-pricepreview) method in Paddle.js. When working with `Paddle.PricePreview()`, request and response fields are `camelCase` rather than `snake_case`. parameters: [] responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/TransactionPricingPreviewResponse" meta: $ref: "#/components/schemas/Meta" examples: Preview prices (200): summary: Preview prices (200) value: data: customer_id: null address_id: null business_id: null currency_code: USD address: postal_code: "20149" country_code: US customer_ip_address: 34.232.58.13 discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 details: line_items: - price: id: pri_01gsz8z1q1n00f12qt82y31smh description: Annual type: standard name: Annual (per seat) product_id: pro_01gsz4t5hdjse780zja8vvr7jg billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "30000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 999 status: active created_at: "2023-02-23T13:56:20.833019Z" updated_at: "2024-04-11T13:47:49.566301Z" import_meta: null quantity: 20 tax_rate: "0" unit_totals: subtotal: "30000" discount: "3000" tax: "0" total: "27000" formatted_unit_totals: subtotal: $300.00 discount: $30.00 tax: $0.00 total: $270.00 totals: subtotal: "600000" discount: "60000" tax: "0" total: "540000" formatted_totals: subtotal: $6,000.00 discount: $600.00 tax: $0.00 total: $5,400.00 product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null discounts: - discount: id: dsc_01gtgztp8fpchantd5g1wrksa3 status: active description: Black Friday 2024 enabled_for_checkout: true mode: standard code: BF2024 type: percentage amount: "10" currency_code: USD recur: false maximum_recurring_intervals: null usage_limit: 1000 restrict_to: null expires_at: "2024-12-03T00:00:00Z" times_used: 0 custom_data: null import_meta: null discount_group_id: null created_at: "2023-03-02T11:03:00.623Z" updated_at: "2023-08-22T13:32:28.295Z" total: "60000" formatted_total: $600.00 - price: id: pri_01h1vjfevh5etwq3rb416a23h2 description: Monthly type: standard name: Monthly (recurring addon) product_id: pro_01h1vjes1y163xfj1rh1tkfb65 billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" import_meta: null quantity: 1 tax_rate: "0" unit_totals: subtotal: "10000" discount: "1000" tax: "0" total: "9000" formatted_unit_totals: subtotal: $100.00 discount: $10.00 tax: $0.00 total: $90.00 totals: subtotal: "10000" discount: "1000" tax: "0" total: "9000" formatted_totals: subtotal: $100.00 discount: $10.00 tax: $0.00 total: $90.00 product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null discounts: - discount: id: dsc_01gtgztp8fpchantd5g1wrksa3 status: active description: Black Friday 2024 enabled_for_checkout: true mode: standard code: BF2024 type: percentage amount: "10" currency_code: USD recur: false maximum_recurring_intervals: null usage_limit: 1000 restrict_to: null expires_at: "2024-12-03T00:00:00Z" times_used: 0 custom_data: null import_meta: null discount_group_id: null created_at: "2023-03-02T11:03:00.623Z" updated_at: "2023-08-22T13:32:28.295Z" total: "1000" formatted_total: $10.00 available_payment_methods: - apple_pay - card - paypal - google_pay meta: request_id: b8a54261-3aca-41bc-9432-26d3753ecf8b default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Pricing preview externalDocs: url: https://developer.paddle.com/api-reference/pricing-preview/preview-prices description: Preview prices requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TransactionPricingPreviewRequest" examples: Preview prices (200): summary: Preview prices (200) value: items: - quantity: 20 price_id: pri_01gsz8z1q1n00f12qt82y31smh - quantity: 1 price_id: pri_01h1vjfevh5etwq3rb416a23h2 currency_code: USD discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 customer_ip_address: 34.232.58.13 x-permissions: - transaction.read /products: get: operationId: list-products summary: List products description: |- Returns a paginated list of products. Use the query parameters to page through results. By default, Paddle returns products that are `active`. Use the `status` query parameter to return products that are archived. Use the `include` parameter to include related price entities in the response. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ProductIncludeQuery" - $ref: "#/components/parameters/ListProductsQueryParams.order_by" - $ref: "#/components/parameters/DefaultStatusQuery" - $ref: "#/components/parameters/TaxCategoryQuery" - $ref: "#/components/parameters/CatalogTypeQuery" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/ProductIncludes" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List products (200): summary: List products (200) value: data: - id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon tax_category: standard type: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" - id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains tax_category: standard type: standard description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active import_meta: null created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" - id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support tax_category: standard type: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" - id: pro_01gsz4vmqbjk3x4vvtafffd540 name: AeroEdit Enterprise tax_category: standard type: standard description: The ultimate solution for organizations, featuring all Pro capabilities plus multi-user support, advanced data storage capabilities, plus personalized onboarding, dedicated account management, and the ability to pay via invoice. image_url: https://paddle.s3.amazonaws.com/user/165798/Ws808ziTS76a6YbnMkiK_enterprise.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: true route_planning: true sso: true suggested_addons: [] upgrade_description: Ready to reach new heights? Upgrade to enterprise to unlock single sign-on, payment by invoice, and dedicated account management. status: active import_meta: null created_at: "2023-02-23T12:44:34.923Z" updated_at: "2024-04-05T15:58:28.309Z" - id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro tax_category: standard type: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - id: pro_01gsz4s0w61y0pp88528f1wvvb name: AeroEdit Basic tax_category: standard type: standard description: Ideal for hobbyist pilots AeroEdit Basic offers flight log creation, editing, basic performance tracking, route planning, and export options. image_url: https://paddle.s3.amazonaws.com/user/165798/oi0r8qNmQzuNpj9pLHcT_basic.png custom_data: features: aircraft_performance: false compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: false sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2023-02-23T12:43:09.062Z" updated_at: "2024-04-05T15:56:39.477Z" meta: request_id: bb093d50-ddb5-401a-a5ba-034b187b396e pagination: per_page: 50 next: https://api.paddle.com/products?after=pro_01gsz4s0w61y0pp88528f1wvvb has_more: false estimated_total: 6 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Products externalDocs: url: https://developer.paddle.com/api-reference/products/list-products description: List products x-permissions: - product.read post: operationId: create-product summary: Create a product description: |- Creates a new product. Paddle does not upload product images to a CDN. For `image_url`, you should host images on an HTTPS server that's publicly accessible. We recommend using square images (`1:1` ratio). If successful, your response includes a copy of the new product entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Product" meta: $ref: "#/components/schemas/Meta" examples: Create a product (201): summary: Create a product (201) value: data: id: pro_01htz88xpr0mm7b3ta2pjkr7w2 name: AeroEdit Student tax_category: standard type: standard description: Essential tools for student pilots to manage flight logs, analyze performance, and plan routes, and ensure compliance. Valid student pilot certificate from the FAA required. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2024-04-08T16:22:16.024Z" updated_at: "2024-04-08T16:22:16.024Z" meta: request_id: cf40234b-e140-44d1-a83f-7bbdedd88589 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Products externalDocs: url: https://developer.paddle.com/api-reference/products/create-product description: Create product requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ProductCreate" examples: Create a product (201): summary: Create a product (201) value: name: AeroEdit Student tax_category: standard description: Essential tools for student pilots to manage flight logs, analyze performance, and plan routes, and ensure compliance. Valid student pilot certificate from the FAA required. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null x-permissions: - product.write /products/{product_id}: get: operationId: get-product summary: Get a product description: |- Returns a product using its ID. Use the `include` parameter to include related price entities in the response. parameters: - $ref: "#/components/parameters/ProductIncludeQuery" - $ref: "#/components/parameters/ProductIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/ProductIncludes" meta: $ref: "#/components/schemas/Meta" examples: Get a product (200): summary: Get a product (200) value: data: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro tax_category: standard type: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" meta: request_id: ccb21d76-1e13-4a5e-afb8-0f4c9f20ac07 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Products externalDocs: url: https://developer.paddle.com/api-reference/products/get-product description: Get a product x-permissions: - product.read patch: operationId: update-product summary: Update a product description: |- Updates a product using its ID. Paddle does not upload product images to a CDN. For `image_url`, you should host images on an HTTPS server that's publicly accessible. We recommend using square images (`1:1` ratio). If successful, your response includes a copy of the updated product entity. parameters: - $ref: "#/components/parameters/ProductIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Product" meta: $ref: "#/components/schemas/Meta" examples: Update a product (200): summary: Update a product (200) value: data: id: pro_01htz88xpr0mm7b3ta2pjkr7w2 name: AeroEdit for learner pilots tax_category: standard type: standard description: Essential tools for student pilots to manage flight logs, analyze performance, and plan routes, and ensure compliance. Valid student pilot certificate from the FAA required. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2024-04-08T16:22:16.024Z" updated_at: "2024-04-08T16:27:59.074Z" meta: request_id: 6e0077bb-9f36-465c-a303-eaaf9d4d44aa default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Products externalDocs: url: https://developer.paddle.com/api-reference/products/update-product description: Update a product requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ProductUpdate" examples: Update a product (200): summary: Update a product (200) value: name: AeroEdit for learner pilots x-permissions: - product.write /reports: get: operationId: list-reports summary: List reports description: |- Returns a paginated list of reports. Use the query parameters to page through results. By default, Paddle returns reports that are `pending` or `ready`. Use the `status` query parameter to return reports that are `failed`, `expired`, or `deleted`. parameters: - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListReportsQueryParams.order_by" - $ref: "#/components/parameters/ReportStatusQuery" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Report" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List reports (200): summary: List reports (200) value: data: - id: rep_01hvgdpayq6kjzyk4hz5m02cpn type: adjustments rows: 8 status: ready filters: - name: updated_at value: "2024-04-15" operator: lt - name: updated_at value: "2024-01-01" operator: gte - name: status value: - pending_approval - approved operator: null - name: action value: - refund - chargeback operator: null expires_at: "2024-04-29T08:24:13.042686Z" created_at: "2024-04-15T08:24:03.799Z" updated_at: "2024-04-15T08:24:13.042692Z" - id: rep_01hvgdn6hg6wkh5nnr0e4nn1c0 type: transaction_line_items rows: 771 status: ready filters: - name: updated_at value: "2024-04-15" operator: lt - name: updated_at value: "2024-04-09" operator: gte expires_at: "2024-04-29T08:23:40.529936Z" created_at: "2024-04-15T08:23:26.512Z" updated_at: "2024-04-15T08:23:40.529941Z" - id: rep_01hvgdhtthn1q35n79dgeqm3pv type: transactions rows: 27 status: ready filters: - name: collection_mode value: - manual operator: null - name: updated_at value: "2024-04-15" operator: lt - name: updated_at value: "2024-01-01" operator: gte expires_at: "2024-04-29T08:21:44.970769Z" created_at: "2024-04-15T08:21:36.209Z" updated_at: "2024-04-15T08:21:44.970774Z" - id: rep_01hqbc372ban0at6z6ysh7hcht type: discounts rows: 3 status: expired filters: - name: updated_at value: "2024-01-23T16:17:09Z" operator: gte expires_at: "2024-03-08T16:17:13.592102Z" created_at: "2024-02-23T16:17:09.195Z" updated_at: "2024-02-23T16:17:13.592106Z" - id: rep_01hqbc2ra43dhda5dfysc9z3m8 type: products_prices rows: 3 status: expired filters: - name: product_updated_at value: - "2024-01-23T16:16:54Z" operator: gte - name: price_updated_at value: - "2024-01-23T16:16:54Z" operator: gte expires_at: "2024-03-08T16:16:57.93002Z" created_at: "2024-02-23T16:16:54.084Z" updated_at: "2024-02-23T16:16:57.930024Z" meta: request_id: b1a05cb6-c072-4a5f-914b-1a275392196c pagination: per_page: 50 next: https://api.paddle.com/reports?after=rep_01hqbc2ra43dhda5dfysc9z3m8 has_more: false estimated_total: 5 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Reports externalDocs: url: https://developer.paddle.com/api-reference/reports/list-reports description: List reports x-permissions: - report.read post: operationId: create-report summary: Create a report description: |- Creates a new report. Reports are created as `pending` initially while Paddle generates your report. They move to `ready` when they're ready to download. You can download a report when it's ready using the [get a CSV file for a report operation](https://developer.paddle.com/api-reference/reports/get-report-csv). If successful, your response includes a copy of the new report entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Report" meta: $ref: "#/components/schemas/Meta" examples: Create a report (201): summary: Create a report (201) value: data: id: rep_01hvgdhtthn1q35n79dgeqm3pv type: transactions rows: null status: pending filters: - name: collection_mode value: - manual operator: null - name: updated_at value: "2024-04-15" operator: lt - name: updated_at value: "2024-01-01" operator: gte expires_at: null created_at: "2024-04-15T08:21:36.209Z" updated_at: "2024-04-15T08:21:36.209Z" meta: request_id: 0774e52b-fcc3-4d7e-8047-b1b1a05a3f27 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Reports externalDocs: url: https://developer.paddle.com/api-reference/reports/create-report description: Create a report requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ReportCreate" examples: Create a report (201): summary: Create a report (201) value: type: transactions filters: - name: collection_mode value: - manual - name: updated_at value: "2024-04-15" operator: lt - name: updated_at value: "2024-01-01" operator: gte x-permissions: - report.write /reports/{report_id}: get: operationId: get-report summary: Get a report description: Returns a report using its ID. parameters: - $ref: "#/components/parameters/ReportIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Report" meta: $ref: "#/components/schemas/Meta" examples: Get a report (200): summary: Get a report (200) value: data: id: rep_01hvgdhtthn1q35n79dgeqm3pv type: transactions rows: 27 status: ready filters: - name: collection_mode value: - manual operator: null - name: updated_at value: "2024-04-15" operator: lt - name: updated_at value: "2024-01-01" operator: gte expires_at: "2024-04-29T08:21:44.970769Z" created_at: "2024-04-15T08:21:36.209Z" updated_at: "2024-04-15T08:21:44.970774Z" meta: request_id: 2a174f15-0ae6-4330-bf19-aae16a04d838 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Reports externalDocs: url: https://developer.paddle.com/api-reference/reports/get-report description: Get a report x-permissions: - report.read /reports/{report_id}/download-url: get: operationId: get-report-csv summary: Get a CSV file for a report description: |- Returns a link to a CSV file for a report. Only returned for reports that are `ready`. This means Paddle has completed processing the report and it's ready to download. The link returned is not a permanent link. It expires after 3 minutes. parameters: - $ref: "#/components/parameters/ReportIdPathParam" responses: "200": description: The request has succeeded. headers: Expires: required: true description: Date and time when this resource expires. schema: type: string Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: $ref: "#/components/schemas/GetReportCsvResponse" examples: Get a CSV file for a report (200): summary: Get a CSV file for a report (200) value: data: url: https://reports.paddle.com/transactions-10889-2024-04-15-08-21-37.csv meta: request_id: 91899157-4d2a-432c-aa5b-041bb6266b55 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Reports externalDocs: url: https://developer.paddle.com/api-reference/reports/get-report-csv description: Get a CSV file for a report x-permissions: - report.read /simulation-types: get: operationId: list-simulation-types summary: List simulation types description: Returns a list of simulation types (events and scenarios) that you can choose from when creating simulations. parameters: [] responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/SimulationType" meta: $ref: "#/components/schemas/Meta" examples: List simulation types (200): summary: List simulation types (200) value: data: - name: subscription_creation label: Subscription created from a checkout description: Occurs when a subscription is created. group: Subscription type: scenario events: - transaction.created - customer.created - address.created - transaction.updated - transaction.ready - transaction.updated - transaction.paid - subscription.created - subscription.activated - transaction.updated - transaction.updated - transaction.completed - name: subscription_renewal label: Subscription renewed successfully description: Occurs when a subscription is renewed. group: Subscription type: scenario events: - subscription.updated - transaction.created - transaction.billed - transaction.updated - transaction.paid - transaction.updated - transaction.completed - name: subscription_pause label: Subscription paused by customer description: Occurs when a subscription is paused. group: Subscription type: scenario events: - subscription.updated - subscription.paused - name: subscription_resume label: Subscription resumed after being paused description: Occurs when a subscription is resumed after being paused. group: Subscription type: scenario events: - subscription.updated - subscription.resumed - transaction.created - transaction.billed - transaction.updated - transaction.paid - transaction.updated - transaction.completed - name: subscription_cancellation label: Subscription canceled by customer description: Occurs when a subscription is canceled. group: Subscription type: scenario events: - subscription.updated - subscription.canceled - name: subscription.activated label: subscription.activated description: Occurs when a subscription becomes active. Its status field changes to active. This means any trial period has elapsed and Paddle has successfully billed the customer. group: Subscription type: single_event events: - subscription.activated - name: subscription.canceled label: subscription.canceled description: Occurs when a subscription is canceled. Its status field changes to canceled. group: Subscription type: single_event events: - subscription.canceled - name: subscription.created label: subscription.created description: Occurs when a subscription is created. subscription.trialing or subscription.activated typically follow. group: Subscription type: single_event events: - subscription.created - name: subscription.past_due label: subscription.past_due description: Occurs when a subscription has an unpaid transaction. Its status changes to past_due. group: Subscription type: single_event events: - subscription.past_due - name: subscription.paused label: subscription.paused description: Occurs when a subscription is paused. Its status field changes to paused. group: Subscription type: single_event events: - subscription.paused - name: subscription.resumed label: subscription.resumed description: Occurs when a subscription is resumed after being paused. Its status field changes to active. group: Subscription type: single_event events: - subscription.resumed - name: subscription.trialing label: subscription.trialing description: Occurs when a subscription enters trial period. group: Subscription type: single_event events: - subscription.trialing - name: subscription.updated label: subscription.updated description: Occurs when a subscription is updated. group: Subscription type: single_event events: - subscription.updated - name: subscription.imported label: subscription.imported description: Occurs when a subscription is imported. group: Subscription type: single_event events: - subscription.imported - name: address.created label: address.created description: Occurs when an address is created. group: Address type: single_event events: - address.created - name: address.updated label: address.updated description: Occurs when an address is updated. group: Address type: single_event events: - address.updated - name: address.imported label: address.imported description: Occurs when a address is imported. group: Address type: single_event events: - address.imported - name: adjustment.created label: adjustment.created description: Occurs when an adjustment is created. group: Adjustment type: single_event events: - adjustment.created - name: adjustment.updated label: adjustment.updated description: Occurs when an adjustment is updated, the only time an adjustment will be updated is when the status changes from pending to approved or from pending to rejected. group: Adjustment type: single_event events: - adjustment.updated - name: business.created label: business.created description: Occurs when a business is created. group: Business type: single_event events: - business.created - name: business.updated label: business.updated description: Occurs when a business is updated. group: Business type: single_event events: - business.updated - name: business.imported label: business.imported description: Occurs when a business is imported. group: Business type: single_event events: - business.imported - name: customer.created label: customer.created description: Occurs when a customer is created. group: Customer type: single_event events: - customer.created - name: customer.updated label: customer.updated description: Occurs when a customer is updated. group: Customer type: single_event events: - customer.updated - name: customer.imported label: customer.imported description: Occurs when a customer is imported. group: Customer type: single_event events: - customer.imported - name: discount.created label: discount.created description: Occurs when a discount is created. group: Discount type: single_event events: - discount.created - name: discount.updated label: discount.updated description: Occurs when a discount is updated. group: Discount type: single_event events: - discount.updated - name: discount.imported label: discount.imported description: Occurs when a discount is imported. group: Discount type: single_event events: - discount.imported - name: payout.created label: payout.created description: Occurs when a payout is created. group: Payout type: single_event events: - payout.created - name: payout.paid label: payout.paid description: Occurs when a payout is paid. group: Payout type: single_event events: - payout.paid - name: price.created label: price.created description: Occurs when a price is created. group: Price type: single_event events: - price.created - name: price.updated label: price.updated description: Occurs when a price is updated. group: Price type: single_event events: - price.updated - name: price.imported label: price.imported description: Occurs when a price is imported. group: Price type: single_event events: - price.imported - name: product.created label: product.created description: Occurs when a product is created. group: Product type: single_event events: - product.created - name: product.updated label: product.updated description: Occurs when a product is updated. group: Product type: single_event events: - product.updated - name: product.imported label: product.imported description: Occurs when a product is imported. group: Product type: single_event events: - product.imported - name: report.created label: report.created description: Occurs when a report is created. group: Report type: single_event events: - report.created - name: report.updated label: report.updated description: Occurs when a report is updated. group: Report type: single_event events: - report.updated - name: transaction.billed label: transaction.billed description: Occurs when a transaction is billed. Its status field changes to billed and billed_at is populated. group: Transaction type: single_event events: - transaction.billed - name: transaction.canceled label: transaction.canceled description: Occurs when a transaction is canceled. Its status field changes to canceled. group: Transaction type: single_event events: - transaction.canceled - name: transaction.completed label: transaction.completed description: Occurs when a transaction is completed. Its status field changes to completed. group: Transaction type: single_event events: - transaction.completed - name: transaction.created label: transaction.created description: Occurs when a transaction is created. group: Transaction type: single_event events: - transaction.created - name: transaction.paid label: transaction.paid description: Occurs when a transaction is paid. Its status field changes to paid. group: Transaction type: single_event events: - transaction.paid - name: transaction.past_due label: transaction.past_due description: Occurs when a transaction becomes past due. Its status field changes to past_due. group: Transaction type: single_event events: - transaction.past_due - name: transaction.payment_failed label: transaction.payment_failed description: Occurs when a payment fails for a transaction. The payments array is updated with details of the payment attempt. group: Transaction type: single_event events: - transaction.payment_failed - name: transaction.ready label: transaction.ready description: Occurs when a transaction is ready to be billed. Its status field changes to ready. group: Transaction type: single_event events: - transaction.ready - name: transaction.updated label: transaction.updated description: Occurs when a transaction is updated. group: Transaction type: single_event events: - transaction.updated meta: request_id: 76905a23-8206-44ca-8821-7237b26f59d1 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulation types externalDocs: url: https://developer.paddle.com/api-reference/simulation-types/list-simulation-types description: List simulation types x-permissions: [] /simulations: get: operationId: list-simulations summary: List simulations description: Returns a paginated list of simulations. Use the query parameters to [page through results](https://developer.paddle.com/api-reference/about/pagination). parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListSimulationsQueryParams.notification_setting_id" - $ref: "#/components/parameters/ListSimulationsQueryParams.order_by" - $ref: "#/components/parameters/DefaultStatusQuery" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Simulation" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List simulations (200): summary: List simulations (200) value: data: - id: ntfsim_01j82fs5pvrdse93e1kawqy2fr notification_setting_id: ntfset_01j8259dtga48jwekrv2pmk0kp name: Refund or chargeback created type: adjustment.created status: active payload: null config: null last_run_at: "2024-09-18T11:55:18.261049Z" created_at: "2024-09-18T11:55:15.547675Z" updated_at: "2024-09-18T11:55:18.261225Z" - id: ntfsim_01j82d9tc19c67jds5vzbzjcns notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: Subscription created using pricing page on website type: subscription_creation status: active payload: null config: subscription_cancellation: null subscription_creation: entities: customer_id: null address_id: null business_id: null payment_method_id: null discount_id: null transaction_id: null items: null options: customer_simulated_as: existing_email_matched business_simulated_as: not_provided discount_simulated_as: not_provided subscription_pause: null subscription_renewal: null subscription_resume: null last_run_at: null created_at: "2024-09-18T11:11:55.265125Z" updated_at: "2024-09-18T11:54:18.543265Z" meta: pagination: per_page: 50 estimated_total: 2 next: https://api.paddle.dev/simulations?after=ntfsim_01j55cce7pz60k2a4dfeh1c9sa has_more: false request_id: ad095054-41bc-4907-907d-da18310aea49 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulations externalDocs: url: https://developer.paddle.com/api-reference/simulations/list-simulations description: List simulations x-permissions: - notification_simulation.read post: operationId: create-simulation summary: Create a simulation description: |- Creates a new simulation for a notification setting (notification destination). simulated webhook payloads with real data. The API key making the request needs read permissions: * For the entities you provided, or the request fails. * For related entities which aren't nested in the entities you provided, or static examples will be used instead. For example, when creating a subscription renewal scenario simulation with an API key that has a `subscription.read` permission but not a `transaction.read` permission, the request succeeds and the subscription data will be used in simulated payloads, but the related transaction data won't be used in payloads and falls back to a static example. If you don't provide a `config.entities` object, simulated webhook payloads are populated with static examples. If successful, your response includes a copy of the new simulation entity. parameters: [] responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Simulation" meta: $ref: "#/components/schemas/Meta" examples: Standard - 201 Created: summary: Standard - 201 Created description: Create a simulation - subscription renewal failed scenario (201) value: data: id: ntfsim_01j82g2mggsgjpb3mjg0xq6p5k notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: Create a subscription renewal simulation with config type: subscription_renewal status: active payload: null config: subscription_cancellation: null subscription_creation: null subscription_pause: null subscription_renewal: entities: subscription_id: sub_01h04vsc0qhwtsbsxh3422wjs4 options: payment_outcome: recovered_updated_payment_method dunning_exhausted_action: null subscription_resume: null last_run_at: null created_at: "2024-09-18T12:00:25.616392Z" updated_at: "2024-09-18T12:00:25.616392Z" meta: request_id: 72351248-13bf-45be-befe-b3a5b5234588 Create a simulation - subscription renewal scenario (201): summary: Create a simulation - subscription renewal scenario (201) value: data: id: ntfsim_01j82g2mggsgjpb3mjg0xq6p5k notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: Create a subscription renewal simulation with config type: subscription_renewal status: active payload: null config: subscription_cancellation: null subscription_creation: null subscription_pause: null subscription_renewal: entities: subscription_id: sub_01h04vsc0qhwtsbsxh3422wjs4 options: payment_outcome: recovered_updated_payment_method dunning_exhausted_action: null subscription_resume: null last_run_at: null created_at: "2024-09-18T12:00:25.616392Z" updated_at: "2024-09-18T12:00:25.616392Z" meta: request_id: 72351248-13bf-45be-befe-b3a5b5234588 Create a simulation - subscription creation scenario (201): summary: Create a simulation - subscription creation scenario (201) value: data: id: ntfsim_01j82g2mggsgjpb3mjg0xq6p5k notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: Create a subscription creation simulation with config type: subscription_creation status: active payload: null config: subscription_cancellation: null subscription_creation: entities: customer_id: ctm_01grnn4zta5a1mf02jjze7y2ys address_id: add_01gm302t81w94gyjpjpqypkzkf business_id: biz_01grrebrzaee2qj2fqqhmcyzaj payment_method_id: paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 discount_id: dsc_01gv5kpg05xp104ek2fmgjwttf transaction_id: null items: - price_id: pri_01gsz8z1q1n00f12qt82y31smh quantity: 5 options: customer_simulated_as: existing_details_prefilled business_simulated_as: existing_details_prefilled discount_simulated_as: prefilled subscription_pause: null subscription_renewal: null subscription_resume: null last_run_at: null created_at: "2024-09-18T12:00:25.616392Z" updated_at: "2024-09-18T12:00:25.616392Z" meta: request_id: 72351248-13bf-45be-befe-b3a5b5234588 Create a simulation (201): summary: Create a simulation (201) value: data: id: ntfsim_01j82g2mggsgjpb3mjg0xq6p5k notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: New US address created for CRM type: address.created config: null status: active payload: id: add_01hv8gq3318ktkfengj2r75gfx city: New York region: NY status: active created_at: "2024-04-12T06:42:58.785Z" first_line: 4050 Jefferson Plaza, 41st Floor updated_at: "2024-04-12T06:42:58.785Z" custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Head Office import_meta: null postal_code: "10021" second_line: null country_code: US last_run_at: null created_at: "2024-09-18T12:00:25.616392Z" updated_at: "2024-09-18T12:00:25.616392Z" meta: request_id: 72351248-13bf-45be-befe-b3a5b5234588 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulations externalDocs: url: https://developer.paddle.com/api-reference/simulations/create-simulation description: Create a simulation requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SimulationCreate" examples: Standard - 201 Created: summary: Standard - 201 Created description: Create a simulation - subscription renewal failed scenario (201) value: notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: Create a failed subscription renewal simulation with subscription ID type: subscription_renewal config: subscription_renewal: entities: subscription_id: sub_01h04vsc0qhwtsbsxh3422wjs4 options: payment_outcome: failed dunning_exhausted_action: subscription_canceled Create a simulation - subscription renewal scenario (201): summary: Create a simulation - subscription renewal scenario (201) value: notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: Create a subscription renewal simulation with subscription ID type: subscription_renewal config: subscription_renewal: entities: subscription_id: sub_01h04vsc0qhwtsbsxh3422wjs4 options: payment_outcome: success Create a simulation - subscription creation scenario (201): summary: Create a simulation - subscription creation scenario (201) value: notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: Create a subscription creation simulation with config type: subscription_creation config: subscription_creation: entities: customer_id: ctm_01grnn4zta5a1mf02jjze7y2ys address_id: add_01gm302t81w94gyjpjpqypkzkf business_id: biz_01grrebrzaee2qj2fqqhmcyzaj payment_method_id: paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 discount_id: dsc_01gv5kpg05xp104ek2fmgjwttf items: - price_id: pri_01gsz8z1q1n00f12qt82y31smh quantity: 5 Create a simulation (201): summary: Create a simulation (201) value: notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: New US address created for CRM type: address.created payload: id: add_01hv8gq3318ktkfengj2r75gfx city: New York region: NY status: active created_at: "2024-04-12T06:42:58.785Z" first_line: 4050 Jefferson Plaza, 41st Floor updated_at: "2024-04-12T06:42:58.785Z" custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Head Office import_meta: null postal_code: "10021" second_line: null country_code: US x-permissions: - notification_simulation.write /simulations/{simulation_id}: get: operationId: get-simulation summary: Get a simulation description: Returns a simulation using its ID. parameters: - $ref: "#/components/parameters/SimulationIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Simulation" meta: $ref: "#/components/schemas/Meta" examples: Get a simulation (200): summary: Get a simulation (200) value: data: id: ntfsim_01j82d9tc19c67jds5vzbzjcns notification_setting_id: ntfset_01j82d983j814ypzx7m1fw2jpz name: Subscription created using pricing page on website type: subscription_creation status: active payload: null config: subscription_cancellation: null subscription_creation: entities: customer_id: null address_id: null business_id: null payment_method_id: null discount_id: null transaction_id: null items: null options: customer_simulated_as: existing_email_matched business_simulated_as: not_provided discount_simulated_as: not_provided subscription_pause: null subscription_renewal: null subscription_resume: null last_run_at: null created_at: "2024-09-18T11:11:55.265125Z" updated_at: "2024-09-18T11:54:18.543265Z" meta: request_id: 3db61fbc-dde6-4a33-9ac1-c2c781e569fc default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulations externalDocs: url: https://developer.paddle.com/api-reference/simulations/get-simulation description: Get a simulation x-permissions: - notification_simulation.read patch: operationId: update-simulation summary: Update a simulation description: |- Updates a simulation using its ID. For scenario simulations, you can optionally include a `config.entities` object in the request body with entity IDs to populate simulated webhook payloads with real data. The API key making the request needs read permissions: * For the entities you provided, or the request fails. * For related entities which aren't nested in the entities you provided, or static examples will be used instead. For example, when updating a subscription renewal scenario simulation with an API key that has a `subscription.read` permission but not a `transaction.read` permission, the request succeeds and the subscription data will be used in simulated payloads, but the related transaction data won't be used in payloads and falls back to a static example. If you don't provide a `config.entities` object, simulated webhook payloads are populated with static examples. If successful, your response includes a copy of the updated simulation entity. parameters: - $ref: "#/components/parameters/SimulationIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Simulation" meta: $ref: "#/components/schemas/Meta" examples: Update a simulation (200): summary: Update a simulation (200) value: data: id: ntfsim_01j82fs5pvrdse93e1kawqy2fr notification_setting_id: ntfset_01j8259dtga48jwekrv2pmk0kp name: Refund approved type: adjustment.updated status: active payload: id: adj_01hvgf2s84dr6reszzg29zbvcm action: refund transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y subscription_id: sub_01hvccbx32q2gb40sqx7n42430 customer_id: ctm_01hrffh7gvp29kc7xahm8wddwa reason: error credit_applied_to_balance: null currency_code: USD status: approved items: - id: adjitm_01hvgf2s84dr6reszzg2gx70gj item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw type: partial amount: "100" proration: null totals: subtotal: "92" tax: "8" total: "100" totals: subtotal: "92" tax: "8" total: "100" fee: "5" earnings: "87" currency_code: USD payout_totals: subtotal: "92" tax: "8" total: "100" fee: "5" earnings: "87" currency_code: USD created_at: "2024-04-15T08:48:20.239695Z" updated_at: "2024-04-15T08:48:20.239695Z" config: null last_run_at: "2024-09-18T11:55:18.261049Z" created_at: "2024-09-18T11:55:15.547675Z" updated_at: "2024-09-18T12:07:08.475015Z" meta: request_id: ab96e6ec-6a2b-4f3a-9e65-3cf7ac29ea99 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulations externalDocs: url: https://developer.paddle.com/api-reference/simulations/update-simulation description: Update a simulation requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SimulationUpdate" examples: Update a simulation (200): summary: Update a simulation (200) value: name: Refund approved type: adjustment.updated payload: id: adj_01hvgf2s84dr6reszzg29zbvcm action: refund transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y subscription_id: sub_01hvccbx32q2gb40sqx7n42430 customer_id: ctm_01hrffh7gvp29kc7xahm8wddwa reason: error credit_applied_to_balance: null currency_code: USD status: approved items: - id: adjitm_01hvgf2s84dr6reszzg2gx70gj item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw type: partial amount: "100" proration: null totals: subtotal: "92" tax: "8" total: "100" totals: subtotal: "92" tax: "8" total: "100" fee: "5" earnings: "87" currency_code: USD payout_totals: subtotal: "92" tax: "8" total: "100" fee: "5" earnings: "87" currency_code: USD created_at: "2024-04-15T08:48:20.239695Z" updated_at: "2024-04-15T08:48:20.239695Z" x-permissions: - notification_simulation.write /simulations/{simulation_id}/runs: get: operationId: list-simulation-runs summary: List runs for a simulation description: |- Returns a paginated list of simulation runs. Use the query parameters to [page through results](https://developer.paddle.com/api-reference/about/pagination). Use the `include` parameter to [include related entities](https://developer.paddle.com/api-reference/about/include-entities) in the response. parameters: - $ref: "#/components/parameters/SimulationIdPathParam" - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/SimulationsRunIncludeQuery" - $ref: "#/components/parameters/ListSimulationRunsQueryParams.order_by" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/SimulationRunIncludes" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List runs for a simulation (200): summary: List runs for a simulation (200) value: data: - id: ntfsimrun_01j82gvz2cgw08p7mak3gcd3a3 status: completed type: subscription_creation created_at: "2024-09-18T12:14:15.628606Z" updated_at: "2024-09-18T12:14:27.244695Z" - id: ntfsimrun_01j82gjx7fxdc27bsqxf311cbe status: completed type: subscription_creation created_at: "2024-09-18T12:09:18.831870Z" updated_at: "2024-09-18T12:09:30.613445Z" meta: pagination: per_page: 50 estimated_total: 2 next: https://api.paddle.dev/simulations/ntfsim_01j82d9tc19c67jds5vzbzjcns/runs?after=ntfsimrun_01j82gjx7fxdc27bsqxf311cbe has_more: false request_id: 12a52c1d-e899-4401-baf4-e836e3178062 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulation runs externalDocs: url: https://developer.paddle.com/api-reference/simulation-runs/list-simulation-runs description: List runs for a simulation x-permissions: - notification_simulation.read post: operationId: create-simulation-run summary: Create a run for a simulation description: |- Creates a new simulation run for a simulation. If successful, your response includes a copy of the new simulation run entity. parameters: - $ref: "#/components/parameters/SimulationIdPathParam" responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/SimulationRun" meta: $ref: "#/components/schemas/Meta" examples: Create a run for a simulation (201): summary: Create a run for a simulation (201) value: data: id: ntfsimrun_01j82h13n87yq2sfv187hm2r0p status: pending type: subscription_creation created_at: "2024-09-18T12:17:04.168467Z" updated_at: "2024-09-18T12:17:04.168467Z" meta: request_id: 2201997e-d23b-4a49-acdb-8a9f8cc72ff6 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulation runs externalDocs: url: https://developer.paddle.com/api-reference/simulation-runs/create-simulation-run description: Create a run for a simulation x-permissions: - notification_simulation.write /simulations/{simulation_id}/runs/{simulation_run_id}: get: operationId: get-simulation-run summary: Get a run for a simulation description: |- Returns a simulation run using its ID. Use the `include` parameter to include related entities in the response. parameters: - $ref: "#/components/parameters/SimulationIdPathParam" - $ref: "#/components/parameters/SimulationRunIdPathParam" - $ref: "#/components/parameters/SimulationsRunIncludeQuery" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/SimulationRunIncludes" meta: $ref: "#/components/schemas/Meta" examples: Get a run for a simulation (200): summary: Get a run for a simulation (200) value: data: id: ntfsimrun_01j82h13n87yq2sfv187hm2r0p status: completed type: subscription_creation created_at: "2024-09-18T12:17:04.168467Z" updated_at: "2024-09-18T12:17:17.663481Z" meta: request_id: eb5331b5-496d-41ed-9e15-dce968e3bbc6 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulation runs externalDocs: url: https://developer.paddle.com/api-reference/simulation-runs/get-simulation-run description: Get a run for a simulation x-permissions: - notification_simulation.read /simulations/{simulation_id}/runs/{simulation_run_id}/events: get: operationId: list-simulations-events summary: List events for a simulation run description: Returns a paginated list of simulations. Use the query parameters to [page through results](https://developer.paddle.com/api-reference/about/pagination). parameters: - $ref: "#/components/parameters/SimulationIdPathParam" - $ref: "#/components/parameters/SimulationRunIdPathParam" - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListSimulationEventsQueryParams.order_by" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/SimulationEvent" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List events for a simulation run (200): summary: List events for a simulation run (200) value: data: - id: ntfsimevt_01j82hf8jrwjsf9337a35tqghp status: success event_type: adjustment.updated payload: id: adj_01hvgf2s84dr6reszzg29zbvcm items: - id: adjitm_01hvgf2s84dr6reszzg2gx70gj type: partial amount: "100" totals: tax: "8" total: "100" subtotal: "92" item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw proration: null action: refund reason: error status: pending_approval totals: fee: "5" tax: "8" total: "100" earnings: "87" subtotal: "92" currency_code: USD created_at: "2024-04-15T08:48:20.239695Z" updated_at: "2024-04-15T08:48:20.239695Z" customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 currency_code: USD payout_totals: fee: "5" tax: "8" total: "100" earnings: "87" subtotal: "92" currency_code: USD transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y subscription_id: sub_01hvccbx32q2gb40sqx7n42430 credit_applied_to_balance: null request: body: '{"event_id":"ntfsimevt_01j82hf8jrwjsf9337a35tqghp","event_type":"adjustment.updated","occurred_at":"2024-09-18T12:24:47.960617Z","data":{"id":"adj_01hvgf2s84dr6reszzg29zbvcm","items":[{"id":"adjitm_01hvgf2s84dr6reszzg2gx70gj","type":"partial","amount":"100","totals":{"tax":"8","total":"100","subtotal":"92"},"item_id":"txnitm_01hvcc94b7qgz60qmrqmbm19zw","proration":null}],"action":"refund","reason":"error","status":"pending_approval","totals":{"fee":"5","tax":"8","total":"100","earnings":"87","subtotal":"92","currency_code":"USD"},"created_at":"2024-04-15T08:48:20.239695Z","updated_at":"2024-04-15T08:48:20.239695Z","customer_id":"ctm_01hv6y1jedq4p1n0yqn5ba3ky4","currency_code":"USD","payout_totals":{"fee":"5","tax":"8","total":"100","earnings":"87","subtotal":"92","currency_code":"USD"},"transaction_id":"txn_01hvcc93znj3mpqt1tenkjb04y","subscription_id":"sub_01hvccbx32q2gb40sqx7n42430","credit_applied_to_balance":null}}' response: body: '{"status":"SUCCESS","message":"Request handled by Hookdeck. Check your dashboard to inspect the request: https://dashboard.hookdeck.com/requests/req_6ob9lGLoCA2qKWS6VGXR","request_id":"req_6ob9lGLoCA2qKWS6VGXR"}' status_code: 200 created_at: "2024-09-18T12:24:47.960617Z" updated_at: "2024-09-18T12:24:48.309530Z" meta: pagination: per_page: 50 estimated_total: 1 next: https://api.paddle.dev/simulations/ntfsim_01j82fs5pvrdse93e1kawqy2fr/runs/ntfsimrun_01j82hf8heprevaj34ez32gmwz/events?after=ntfsimevt_01j82hf8jrwjsf9337a35tqghp has_more: false request_id: f1726ebc-383d-45da-ab71-2c811b3c6ce8 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulation run events externalDocs: url: https://developer.paddle.com/api-reference/simulation-events/list-simulation-events description: List events for a simulation run x-permissions: - notification_simulation.read /simulations/{simulation_id}/runs/{simulation_run_id}/events/{simulation_event_id}: get: operationId: get-simulation-event summary: Get an event for a simulation run description: Returns a simulation event using its ID. parameters: - $ref: "#/components/parameters/SimulationIdPathParam" - $ref: "#/components/parameters/SimulationRunIdPathParam" - $ref: "#/components/parameters/SimulationEventIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/SimulationEvent" meta: $ref: "#/components/schemas/Meta" examples: Get an event for a simulation run (200): summary: Get an event for a simulation run (200) value: data: id: ntfsimevt_01j82hf8jrwjsf9337a35tqghp status: success event_type: adjustment.updated payload: id: adj_01hvgf2s84dr6reszzg29zbvcm items: - id: adjitm_01hvgf2s84dr6reszzg2gx70gj type: partial amount: "100" totals: tax: "8" total: "100" subtotal: "92" item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw proration: null action: refund reason: error status: pending_approval totals: fee: "5" tax: "8" total: "100" earnings: "87" subtotal: "92" currency_code: USD created_at: "2024-04-15T08:48:20.239695Z" updated_at: "2024-04-15T08:48:20.239695Z" customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 currency_code: USD payout_totals: fee: "5" tax: "8" total: "100" earnings: "87" subtotal: "92" currency_code: USD transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y subscription_id: sub_01hvccbx32q2gb40sqx7n42430 credit_applied_to_balance: null request: body: '{"event_id":"ntfsimevt_01j82hf8jrwjsf9337a35tqghp","event_type":"adjustment.updated","occurred_at":"2024-09-18T12:24:47.960617Z","data":{"id":"adj_01hvgf2s84dr6reszzg29zbvcm","items":[{"id":"adjitm_01hvgf2s84dr6reszzg2gx70gj","type":"partial","amount":"100","totals":{"tax":"8","total":"100","subtotal":"92"},"item_id":"txnitm_01hvcc94b7qgz60qmrqmbm19zw","proration":null}],"action":"refund","reason":"error","status":"pending_approval","totals":{"fee":"5","tax":"8","total":"100","earnings":"87","subtotal":"92","currency_code":"USD"},"created_at":"2024-04-15T08:48:20.239695Z","updated_at":"2024-04-15T08:48:20.239695Z","customer_id":"ctm_01hv6y1jedq4p1n0yqn5ba3ky4","currency_code":"USD","payout_totals":{"fee":"5","tax":"8","total":"100","earnings":"87","subtotal":"92","currency_code":"USD"},"transaction_id":"txn_01hvcc93znj3mpqt1tenkjb04y","subscription_id":"sub_01hvccbx32q2gb40sqx7n42430","credit_applied_to_balance":null}}' response: body: '{"status":"SUCCESS","message":"Request handled by Hookdeck. Check your dashboard to inspect the request: https://dashboard.hookdeck.com/requests/req_6ob9lGLoCA2qKWS6VGXR","request_id":"req_6ob9lGLoCA2qKWS6VGXR"}' status_code: 200 created_at: "2024-09-18T12:24:47.960617Z" updated_at: "2024-09-18T12:24:48.309530Z" meta: request_id: 76421aed-4a64-4eb6-b14e-72407f5ec40e default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulation run events externalDocs: url: https://developer.paddle.com/api-reference/simulation-events/get-simulation-event description: Get an event for a simulation run x-permissions: - notification_simulation.read /simulations/{simulation_id}/runs/{simulation_run_id}/events/{simulation_event_id}/replay: post: operationId: replay-simulation-run-event summary: Replay an event for a simulation run description: |- Attempts to resend a simulation run log using its ID. Paddle creates a new simulation run log entity for the replay, related to the same simulation run. If successful, your response includes the new simulation run log entity. parameters: - $ref: "#/components/parameters/SimulationIdPathParam" - $ref: "#/components/parameters/SimulationRunIdPathParam" - $ref: "#/components/parameters/SimulationEventIdPathParam" responses: "202": description: The request has been accepted for processing, but processing has not yet completed. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/SimulationEvent" meta: $ref: "#/components/schemas/Meta" examples: Replay an event for a simulation run (202): summary: Replay an event for a simulation run (202) value: data: id: ntfsimevt_01j82j3tr93j99gfv26tsngc27 status: pending event_type: address.created payload: id: add_01hv8gq3318ktkfengj2r75gfx city: New York region: NY status: active created_at: "2024-04-12T06:42:58.785Z" first_line: 4050 Jefferson Plaza, 41st Floor updated_at: "2024-04-12T06:42:58.785Z" custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Head Office import_meta: null postal_code: "10021" second_line: null country_code: US request: null response: null created_at: "2024-09-18T12:36:01.929359Z" updated_at: "2024-09-18T12:37:35.659788Z" meta: request_id: 0369cb98-380b-40a9-bfd8-8ac4856c05f6 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Simulation run events externalDocs: url: https://developer.paddle.com/api-reference/simulation-events/replay-simulation-run-event description: Replay an event for a simulation run x-permissions: - notification_simulation.write /subscriptions/{subscription_id}/history: get: operationId: list-subscription-history summary: List history for a subscription description: |- Returns a paginated list of history entries for a subscription. Use the query parameters to filter and page through results. Subscription history records the changes made to a subscription over its lifetime, so you can see what changed, when it happened, where it originated, and who made the change. Each change is a separate history entry, and some entries also include a reason. Paddle began recording subscription history on June 29, 2026. For subscriptions that existed before then, Paddle automatically creates `subscription_created` and `subscription_canceled` entries and attempts to infer details from the subscription's initial state. History entries are ordered by newest first by default (`occurred_at` in descending order). parameters: - name: subscription_id in: path required: true schema: $ref: "#/components/schemas/SubscriptionId" - $ref: "#/components/parameters/ListSubscriptionHistoryQueryParams.action" - $ref: "#/components/parameters/ListSubscriptionHistoryQueryParams.source" - $ref: "#/components/parameters/ListSubscriptionHistoryQueryParams.actor_type" - $ref: "#/components/parameters/ListSubscriptionHistoryQueryParams.actor_id" - $ref: "#/components/parameters/ListSubscriptionHistoryQueryParams.reason" - $ref: "#/components/parameters/ListSubscriptionHistoryQueryParams.occurred_at" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListSubscriptionHistoryQueryParams.order_by" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/SubscriptionHistory" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List history for a subscription (200): summary: List history for a subscription (200) value: data: - id: subhis_01k0w2m6p8x9y0z1a2b3c4d5e6 group_id: subhisgrp_01k0w2m6p8x9y0z1a2b3c4d5e6 subscription_id: sub_01hv959anj4zrw503h2acawb3p occurred_at: "2024-05-02T11:20:31Z" source: customer_portal actor: type: customer id: ctm_01hv8wt8nffez4p2t6typn4a5j reason: customer_request detail: action: subscription_canceled effective_from: next_billing_period - id: subhis_01k0w1f5n7w8x9y0z1a2b3c4d5 group_id: subhisgrp_01k0w1f5n7w8x9y0z1a2b3c4d5 subscription_id: sub_01hv959anj4zrw503h2acawb3p occurred_at: "2024-04-12T12:42:28Z" source: system actor: type: system id: null reason: null detail: action: subscription_activated status: active first_billed_at: "2024-04-12T12:42:28Z" current_billing_period: starts_at: "2024-04-12T12:42:28Z" ends_at: "2024-05-12T12:42:28Z" transaction_id: txn_01h89231k3a1q8mn6p4r5s7t9v - id: subhis_01k0w0a4m6v7w8x9y0z1a2b3c4 group_id: subhisgrp_01k0w0a4m6v7w8x9y0z1a2b3c4 subscription_id: sub_01hv959anj4zrw503h2acawb3p occurred_at: "2024-04-12T12:42:27Z" source: checkout actor: type: customer id: ctm_01hv8wt8nffez4p2t6typn4a5j reason: null detail: action: subscription_created status: active collection_mode: automatic billing_details: null customer: null address: null business: null currency_code: USD current_billing_period: starts_at: "2024-04-12T12:42:27Z" ends_at: "2024-05-12T12:42:27Z" billing_cycle: frequency: 1 interval: month items: null custom_data: null discount: null has_payment_method: true meta: request_id: 170e71a2-ed13-4f45-b002-45693f5361b4 pagination: per_page: 50 next: https://api.paddle.com/subscriptions/sub_01hv959anj4zrw503h2acawb3p/history?after=subhis_01k0w0a4m6v7w8x9y0z1a2b3c4 has_more: false estimated_total: 3 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscription history externalDocs: url: https://developer.paddle.com/api-reference/subscription-history/list-subscription-history description: List history for a subscription x-permissions: - subscription_history.read /subscriptions: get: operationId: list-subscriptions summary: List subscriptions description: Returns a paginated list of subscriptions. Use the query parameters to page through results. parameters: - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/PaginationParams.per_page" - $ref: "#/components/parameters/ListSubscriptionsQueryParams.address_id" - $ref: "#/components/parameters/ListSubscriptionsQueryParams.collection_mode" - $ref: "#/components/parameters/ListSubscriptionsQueryParams.customer_id" - $ref: "#/components/parameters/ListSubscriptionsQueryParams.order_by" - $ref: "#/components/parameters/ListSubscriptionsQueryParams.price_id" - $ref: "#/components/parameters/ListSubscriptionsQueryParams.scheduled_change_action" - $ref: "#/components/parameters/ListSubscriptionsQueryParams.next_billed_at" - $ref: "#/components/parameters/ListSubscriptionsQueryParams.status" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/Subscription" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List subscriptions (200): summary: List subscriptions (200) value: data: - id: sub_01hv959anj4zrw503h2acawb3p status: active customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv958rbhm5n0r6h3tmna4gtv business_id: null currency_code: USD created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:44:51.309Z" started_at: "2024-04-12T12:42:27.185672Z" first_billed_at: "2024-04-12T12:42:27.185672Z" next_billed_at: "2024-05-12T12:44:51.27Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-04-12T12:44:51.27Z" ends_at: "2024-05-12T12:44:51.27Z" billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 10 recurring: true created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:44:51.311Z" previously_billed_at: "2024-04-12T12:44:51.27Z" next_billed_at: "2024-05-12T12:44:51.27Z" trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:44:51.312Z" previously_billed_at: "2024-04-12T12:44:51.27Z" next_billed_at: "2024-05-12T12:44:51.27Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-12T10:42:45.476453Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv959anj4zrw503h2acawb3p/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv959anj4zrw503h2acawb3p/cancel discount: null import_meta: null consent_requirements: [] - id: sub_01hv915hmgnwqd9n5yxgy8t60c status: paused customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv914saqwe9wk1sbxyy9q7kq business_id: null currency_code: USD created_at: "2024-04-12T11:30:29.648Z" updated_at: "2024-04-12T12:41:53.197Z" started_at: "2024-04-12T11:30:29.637Z" first_billed_at: "2024-04-12T11:31:09.996Z" next_billed_at: null paused_at: "2024-04-12T12:41:53.193Z" canceled_at: null collection_mode: automatic billing_details: null current_billing_period: null billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 10 recurring: true created_at: "2024-04-12T11:30:29.648Z" updated_at: "2024-04-12T12:41:09.265Z" previously_billed_at: "2024-04-12T12:41:09.234Z" next_billed_at: null trial_dates: starts_at: "2024-04-12T11:30:29.637Z" ends_at: "2024-04-12T11:31:09.996Z" price: id: pri_01hv0vax6rv18t4tamj848ne4d product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 type: standard description: Monthly (per seat) with 14 day trial name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: frequency: 14 interval: day requires_payment_method: false unit_price: amount: "500" currency_code: USD unit_price_overrides: - country_codes: - IE - FR - DE unit_price: amount: "700" currency_code: EUR - country_codes: - GB unit_price: amount: "600" currency_code: GBP custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2024-04-09T07:14:38.424504Z" updated_at: "2024-04-09T07:15:53.950721Z" product: id: pro_01htz88xpr0mm7b3ta2pjkr7w2 name: AeroEdit for learner pilots type: standard tax_category: standard description: Essential tools for student pilots to manage flight logs, analyze performance, and plan routes, and ensure compliance. Valid student pilot certificate from the FAA required. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2024-04-08T16:22:16.024Z" updated_at: "2024-04-08T16:27:59.074Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv915hmgnwqd9n5yxgy8t60c/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv915hmgnwqd9n5yxgy8t60c/cancel discount: null import_meta: null consent_requirements: [] - id: sub_01hv8y5ehszzq0yv20ttx3166y status: canceled customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8y4jk511j9g2n9a2mexjbx business_id: null currency_code: USD created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T11:24:54.873Z" started_at: "2024-04-12T10:37:59.556997Z" first_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: null paused_at: null canceled_at: "2024-04-12T11:24:54.868Z" collection_mode: automatic billing_details: null current_billing_period: null billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 20 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.76Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: null trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: null trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:49:38.765Z" updated_at: "2024-04-12T10:49:38.765Z" previously_billed_at: "2024-04-12T10:49:38.765Z" next_billed_at: null trial_dates: null price: id: pri_01gsz95g2zrkagg294kpstx54r product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Monthly (recurring addon) name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "25000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T13:59:52.159927Z" updated_at: "2024-04-09T07:27:48.018296Z" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/cancel discount: null import_meta: null consent_requirements: [] - id: sub_01hv8xqmay5w5rfsnzkxzgy0yp status: active customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01hv8gq3318ktkfengj2r75gfx business_id: null currency_code: USD created_at: "2024-04-12T10:30:27.934Z" updated_at: "2024-04-12T10:30:27.934Z" started_at: "2024-04-12T00:00:00Z" first_billed_at: "2024-04-12T00:00:00Z" next_billed_at: "2025-04-12T00:00:00Z" paused_at: null canceled_at: null collection_mode: manual billing_details: enable_checkout: false purchase_order_number: PO-123 additional_information: null payment_terms: frequency: 2 interval: week current_billing_period: starts_at: "2024-04-12T00:00:00Z" ends_at: "2025-04-12T00:00:00Z" billing_cycle: frequency: 1 interval: year scheduled_change: null items: - status: active quantity: 50 recurring: true created_at: "2024-04-12T10:30:27.934Z" updated_at: "2024-04-12T10:30:27.934Z" previously_billed_at: "2024-04-12T00:00:00Z" next_billed_at: "2025-04-12T00:00:00Z" trial_dates: null price: id: pri_01gsz91wy9k1yn7kx82aafwvea product_id: pro_01gsz4vmqbjk3x4vvtafffd540 type: standard description: Annual name: Annual (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: year trial_period: null unit_price: amount: "50000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-02-23T13:57:54.249913Z" updated_at: "2024-04-05T14:32:00.471447Z" product: id: pro_01gsz4vmqbjk3x4vvtafffd540 name: AeroEdit Enterprise type: standard tax_category: standard description: The ultimate solution for organizations, featuring all Pro capabilities plus multi-user support, advanced data storage capabilities, plus personalized onboarding, dedicated account management, and the ability to pay via invoice. image_url: https://paddle.s3.amazonaws.com/user/165798/Ws808ziTS76a6YbnMkiK_enterprise.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: true route_planning: true sso: true suggested_addons: [] upgrade_description: Ready to reach new heights? Upgrade to enterprise to unlock single sign-on, payment by invoice, and dedicated account management. status: active import_meta: null created_at: "2023-02-23T12:44:34.923Z" updated_at: "2024-04-05T15:58:28.309Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:30:27.934Z" updated_at: "2024-04-12T10:30:27.934Z" previously_billed_at: "2024-04-12T00:00:00Z" next_billed_at: "2025-04-12T00:00:00Z" trial_dates: null price: id: pri_01gsz96z29d88jrmsf2ztbfgjg product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Annual (recurring addon) name: Annual (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: year trial_period: null unit_price: amount: "300000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T14:00:40.265185Z" updated_at: "2024-03-25T14:31:18.587603Z" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" custom_data: null management_urls: update_payment_method: null cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv8xqmay5w5rfsnzkxzgy0yp/cancel discount: null import_meta: null consent_requirements: [] - id: sub_01hv8x29kz0t586xy6zn1a62ny status: past_due customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8wt8ny8ms5vtm71bj8vcdd business_id: null currency_code: USD created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-05-12T10:19:26.014628Z" started_at: "2024-04-12T10:18:47.635628Z" first_billed_at: "2024-04-12T10:18:47.635628Z" next_billed_at: "2024-06-12T10:18:47.635628Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-05-12T10:18:47.635628Z" ends_at: "2024-06-12T10:18:47.635628Z" billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 10 recurring: true created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-05-12T10:19:26.007628Z" previously_billed_at: "2024-05-12T10:18:47.635628Z" next_billed_at: "2024-06-12T10:18:47.635628Z" trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-05-12T10:19:26.010628Z" previously_billed_at: "2024-05-12T10:18:47.635628Z" next_billed_at: "2024-06-12T10:18:47.635628Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv8x29kz0t586xy6zn1a62ny/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv8x29kz0t586xy6zn1a62ny/cancel discount: null import_meta: null consent_requirements: [] meta: request_id: 170e71a2-ed13-4f45-b002-45693f5361b4 pagination: per_page: 50 next: https://api.paddle.com/subscriptions?after=sub_01hv8x29kz0t586xy6zn1a62ny has_more: false estimated_total: 1 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/list-subscriptions description: List subscriptions x-permissions: - subscription.read /subscriptions/{subscription_id}: get: operationId: get-subscription summary: Get a subscription description: |- Returns a subscription using its ID. Use the `include` parameter to include transaction information in the response. parameters: - $ref: "#/components/parameters/SubscriptionIncludeQuery" - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/SubscriptionIncludes" meta: $ref: "#/components/schemas/Meta" examples: Get a subscription (200): summary: Get a subscription (200) value: data: id: sub_01hv8y5ehszzq0yv20ttx3166y status: active customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8y4jk511j9g2n9a2mexjbx business_id: null currency_code: USD created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" started_at: "2024-04-12T10:37:59.556997Z" first_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-04-12T10:37:59.556997Z" ends_at: "2024-05-12T10:37:59.556997Z" billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 10 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/cancel discount: null import_meta: null consent_requirements: [] meta: request_id: e9ce8070-295a-4c8b-9180-7ab58dc31072 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/get-subscription description: Get a subscription x-permissions: - subscription.read patch: operationId: update-subscription summary: Update a subscription description: |- Updates a subscription using its ID. When making changes to items or the next billing date for a subscription, you must include the `proration_billing_mode` field to tell Paddle how to bill for those changes. Send the complete list of items that you'd like to be on a subscription — including existing items. If you omit items, they're removed from the subscription. For each item, send `price_id` and `quantity`. Paddle responds with the full price object for each price. If you're updating an existing item, you can omit the `quantity` if you don't want to update it. If successful, your response includes a copy of the updated subscription entity. When an update results in an immediate charge, responses may take longer than usual while a payment attempt is processed. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Subscription" meta: $ref: "#/components/schemas/Meta" examples: Update a subscription (200): summary: Update a subscription (200) value: data: id: sub_01hv8y5ehszzq0yv20ttx3166y status: active customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8y4jk511j9g2n9a2mexjbx business_id: null currency_code: USD created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.771Z" started_at: "2024-04-12T10:37:59.556997Z" first_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-04-12T10:37:59.556997Z" ends_at: "2024-05-12T10:37:59.556997Z" billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 20 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.76Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:49:38.765Z" updated_at: "2024-04-12T10:49:38.765Z" previously_billed_at: "2024-04-12T10:49:38.765Z" next_billed_at: "2024-05-12T10:37:59.556997Z" trial_dates: null price: id: pri_01gsz95g2zrkagg294kpstx54r product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Monthly (recurring addon) name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "25000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T13:59:52.159927Z" updated_at: "2024-04-09T07:27:48.018296Z" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/cancel discount: null import_meta: null consent_requirements: [] meta: request_id: fd763d79-df30-41dd-9c59-adde4cf02cd3 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/update-subscription description: Update a subscription requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SubscriptionUpdate" examples: Update a subscription (200): summary: Update a subscription (200) value: items: - price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 20 - price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 - price_id: pri_01gsz95g2zrkagg294kpstx54r quantity: 1 proration_billing_mode: prorated_immediately x-permissions: - subscription.write /subscriptions/{subscription_id}/cancel: post: operationId: cancel-subscription summary: Cancel a subscription description: |- Cancels a subscription using its ID. By default, active subscriptions are canceled at the end of the billing period. When you send a request to cancel, Paddle creates a `scheduled_change` against the subscription entity to say that it should cancel at the end of the current billing period. Its `status` remains `active` until after the effective date of the scheduled change, at which point it changes to `canceled`. You can cancel a subscription right away by including `effective_from` in your request, setting the value to `immediately`. If successful, your response includes a copy of the updated subscription entity with the `status` of `canceled`. Canceling immediately is the default behavior for paused subscriptions. You can't reinstate a canceled subscription. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Subscription" meta: $ref: "#/components/schemas/Meta" examples: Cancel a subscription (200): summary: Cancel a subscription (200) value: data: id: sub_01hv8y5ehszzq0yv20ttx3166y status: canceled customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8y4jk511j9g2n9a2mexjbx business_id: null currency_code: USD created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T11:24:54.873Z" started_at: "2024-04-12T10:37:59.556997Z" first_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: null paused_at: null canceled_at: "2024-04-12T11:24:54.868Z" collection_mode: automatic billing_details: null current_billing_period: null billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 20 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.76Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: null trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: null trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:49:38.765Z" updated_at: "2024-04-12T10:49:38.765Z" previously_billed_at: "2024-04-12T10:49:38.765Z" next_billed_at: null trial_dates: null price: id: pri_01gsz95g2zrkagg294kpstx54r product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Monthly (recurring addon) name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "25000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T13:59:52.159927Z" updated_at: "2024-04-09T07:27:48.018296Z" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/cancel discount: null import_meta: null consent_requirements: [] meta: request_id: f21058d1-281a-4877-bb3b-261a753d08c4 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/cancel-subscription description: Cancel a subscription requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SubscriptionCancel" examples: Cancel a subscription (200): summary: Cancel a subscription (200) value: effective_from: immediately x-permissions: - subscription.write /subscriptions/{subscription_id}/pause: post: operationId: pause-subscription summary: Pause a subscription description: |- Pauses a subscription using its ID. By default, subscriptions are paused at the end of the billing period. When you send a request to pause, Paddle creates a `scheduled_change` against the subscription entity to say that it should pause at the end of the current billing period. Its `status` remains `active` until after the effective date of the scheduled change, at which point it changes to `paused`. You can pause a subscription right away by including `effective_from` in your request, setting the value to `immediately`. If successful, your response includes a copy of the updated subscription entity with the `status` of `paused`. To set a resume date, include the `resume_at` field in your request. The subscription remains paused until the resume date, or until you send a resume request. Omit to create an open-ended pause. The subscription remains paused indefinitely, until you send a resume request. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Subscription" meta: $ref: "#/components/schemas/Meta" examples: Pause a subscription (200): summary: Pause a subscription (200) value: data: id: sub_01hv8y5ehszzq0yv20ttx3166y status: active customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8y4jk511j9g2n9a2mexjbx business_id: null currency_code: USD created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T11:20:30.779Z" started_at: "2024-04-12T10:37:59.556997Z" first_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-09-01T16:30:00Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-04-12T10:37:59.556997Z" ends_at: "2024-05-12T10:37:59.556997Z" billing_cycle: frequency: 1 interval: month scheduled_change: action: pause effective_at: "2024-05-12T10:37:59.556997Z" resume_at: "2024-09-01T16:30:00Z" items: - status: active quantity: 20 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.76Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-09-01T16:30:00Z" trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-09-01T16:30:00Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:49:38.765Z" updated_at: "2024-04-12T10:49:38.765Z" previously_billed_at: "2024-04-12T10:49:38.765Z" next_billed_at: "2024-09-01T16:30:00Z" trial_dates: null price: id: pri_01gsz95g2zrkagg294kpstx54r product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Monthly (recurring addon) name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "25000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T13:59:52.159927Z" updated_at: "2024-04-09T07:27:48.018296Z" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/cancel discount: null import_meta: null consent_requirements: [] meta: request_id: e7987bba-d56d-445f-8bce-2e3fa03f610b default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/pause-subscription description: Pause a subscription requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SubscriptionPause" examples: Pause a subscription (200): summary: Pause a subscription (200) value: effective_from: next_billing_period resume_at: "2024-09-01T16:30:00Z" x-permissions: - subscription.write /subscriptions/{subscription_id}/resume: post: operationId: resume-subscription summary: Resume a paused subscription description: |- Resumes a paused subscription using its ID. Only `paused` subscriptions can be resumed. If an `active` subscription has a scheduled change to pause in the future, use this operation to set or change the resume date. You can't resume a `canceled` subscription. On resume, Paddle bills for a subscription immediately by default. Subscription billing dates are recalculated based on the resume date. Use the `on_resume` field to change this behavior. If successful, Paddle returns a copy of the updated subscription entity: * When resuming a `paused` subscription immediately, the subscription status is `active`, and billing dates are updated to reflect the resume date. * When scheduling a `paused` subscription to resume on a date in the future, the subscription status is `paused`, and `scheduled_change.action` is `resume` with `scheduled_change.effective_at` set to the scheduled resume date. * When changing the resume date for an `active` subscription that's scheduled to pause, the subscription status remains `active`, and `scheduled_change.resume_at` is updated on the existing `pause` scheduled change. This operation may result in an immediate charge, so responses may take longer than usual while a payment attempt is processed. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Subscription" meta: $ref: "#/components/schemas/Meta" examples: Resume a paused subscription (200): summary: Resume a paused subscription (200) value: data: id: sub_01hv959anj4zrw503h2acawb3p status: active customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv958rbhm5n0r6h3tmna4gtv business_id: null currency_code: USD created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:44:51.309Z" started_at: "2024-04-12T12:42:27.185672Z" first_billed_at: "2024-04-12T12:42:27.185672Z" next_billed_at: "2024-05-12T12:44:51.27Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-04-12T12:44:51.27Z" ends_at: "2024-05-12T12:44:51.27Z" billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 10 recurring: true created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:44:51.311Z" previously_billed_at: "2024-04-12T12:44:51.27Z" next_billed_at: "2024-05-12T12:44:51.27Z" trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:44:51.312Z" previously_billed_at: "2024-04-12T12:44:51.27Z" next_billed_at: "2024-05-12T12:44:51.27Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-12T10:42:45.476453Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv959anj4zrw503h2acawb3p/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv959anj4zrw503h2acawb3p/cancel discount: null import_meta: null consent_requirements: [] meta: request_id: 7c010829-486c-4fb6-ac5d-44fbea7723d0 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/resume-subscription description: Resume a paused subscription requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SubscriptionResume" examples: Resume a paused subscription (200): summary: Resume a paused subscription (200) value: effective_from: immediately x-permissions: - subscription.write /subscriptions/{subscription_id}/activate: post: operationId: activate-subscription summary: Activate a trialing subscription description: |- Activates a trialing subscription using its ID. Only automatically-collected subscriptions where the status is `trialing` can be activated. On activation, Paddle bills for a subscription immediately. Subscription billing dates are recalculated based on the activation date (the time the activation request is made). If successful, Paddle returns a copy of the updated subscription entity. The subscription status is `active`, and billing dates are updated to reflect the activation date. This operation results in an immediate charge, so responses may take longer than usual while a payment attempt is processed. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Subscription" meta: $ref: "#/components/schemas/Meta" examples: Activate a trialing subscription (200): summary: Activate a trialing subscription (200) value: data: id: sub_01hv915hmgnwqd9n5yxgy8t60c status: active customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv914saqwe9wk1sbxyy9q7kq business_id: null currency_code: USD created_at: "2024-04-12T11:30:29.648Z" updated_at: "2024-04-12T11:31:10.027Z" started_at: "2024-04-12T11:30:29.637Z" first_billed_at: "2024-04-12T11:31:09.996Z" next_billed_at: "2024-05-12T11:31:09.996Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-04-12T11:31:09.996Z" ends_at: "2024-05-12T11:31:09.996Z" billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 10 recurring: true created_at: "2024-04-12T11:30:29.648Z" updated_at: "2024-04-12T11:31:10.029Z" previously_billed_at: "2024-04-12T11:31:09.996Z" next_billed_at: "2024-05-12T11:31:09.996Z" trial_dates: starts_at: "2024-04-12T11:30:29.637Z" ends_at: "2024-04-12T11:31:09.996Z" price: id: pri_01hv0vax6rv18t4tamj848ne4d product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 type: standard description: Monthly (per seat) with 14 day trial name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: frequency: 14 interval: day requires_payment_method: false unit_price: amount: "500" currency_code: USD unit_price_overrides: - country_codes: - IE - FR - DE unit_price: amount: "700" currency_code: EUR - country_codes: - GB unit_price: amount: "600" currency_code: GBP custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2024-04-09T07:14:38.424504Z" updated_at: "2024-04-09T07:15:53.950721Z" product: id: pro_01htz88xpr0mm7b3ta2pjkr7w2 name: AeroEdit for learner pilots type: standard tax_category: standard description: Essential tools for student pilots to manage flight logs, analyze performance, and plan routes, and ensure compliance. Valid student pilot certificate from the FAA required. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2024-04-08T16:22:16.024Z" updated_at: "2024-04-08T16:27:59.074Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv915hmgnwqd9n5yxgy8t60c/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv915hmgnwqd9n5yxgy8t60c/cancel discount: null import_meta: null consent_requirements: [] meta: request_id: 8e6362d5-caaa-43d9-8ec5-f912c35b697d default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/activate-subscription description: Activate a trialing subscription x-permissions: - subscription.write /subscriptions/{subscription_id}/update-payment-method-transaction: get: operationId: get-subscription-update-payment-method-transaction summary: Get a transaction to update payment method description: |- Returns a transaction that you can pass to a checkout to let customers update their payment details. Only for subscriptions where `collection_mode` is `automatic`. The transaction returned depends on the status of the related subscription: * Where a subscription is `past_due`, it returns the most recent `past_due` transaction. * Where a subscription is `active`, it creates a new zero amount transaction for the items on a subscription. You can use the returned `checkout.url`, or pass the returned transaction ID to Paddle.js to open a checkout to present customers with a way of updating their payment details. The `customer`, `address`, `business`, `discount`, `adjustments` and `adjustments_totals` properties are only returned in the response if the API key has read permissions for those related entities. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/SubscriptionTransactionIncludes" meta: $ref: "#/components/schemas/Meta" examples: Get a transaction to update payment method (200): summary: Get a transaction to update payment method (200) value: data: id: txn_01jspbekkwn03q6zp8bezp3tv2 status: ready customer_id: ctm_01jspbafm96p2ppbe85921nf6p address_id: add_01jspbafmrn485m030p7kx9dbr business_id: null custom_data: null origin: subscription_payment_method_change collection_mode: automatic subscription_id: sub_01jspbbyjtkycfmjf7ye85yvp2 invoice_id: null invoice_number: null discount_id: null billing_details: null billing_period: starts_at: "2025-04-25T11:29:46.915899Z" ends_at: "2025-04-25T11:29:46.915899Z" currency_code: USD created_at: "2025-04-25T11:31:14.986430069Z" updated_at: "2025-04-25T11:31:14.986430069Z" billed_at: null revised_at: null items: - price: id: pri_01jspaymrp8mpq0fxdgwxy5vwh product_id: pro_01jspay5m2ry6s10w1m9xfthvz type: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. name: AeroEdit VIP billing_cycle: interval: month frequency: 1 tax_mode: account_setting unit_price: amount: "30000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2025-04-25T11:22:31.574394Z" updated_at: "2025-04-25T11:22:31.574395Z" trial_period: null quantity: 1 proration: rate: "0" billing_period: starts_at: "2025-04-25T11:29:46.915899Z" ends_at: "2025-05-25T11:29:46.915899Z" details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "0" discount: "0" tax: "0" total: "0" totals: subtotal: "0" tax: "0" discount: "0" total: "0" grand_total: "0" grand_total_tax: "0" fee: null credit: "0" currency_code: USD balance: "0" credit_to_balance: "0" earnings: null adjusted_totals: subtotal: "0" tax: "0" total: "0" grand_total: "0" grand_total_tax: "0" fee: null earnings: null currency_code: USD retained_fee: "0" payout_totals: null adjusted_payout_totals: null line_items: - id: txnitm_01jspbekwp0ajkz6qxj4wdmzf3 price_id: pri_01jspaymrp8mpq0fxdgwxy5vwh quantity: 1 totals: subtotal: "0" tax: "0" discount: "0" total: "0" product: id: pro_01jspay5m2ry6s10w1m9xfthvz name: AeroEdit VIP type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2025-04-25T11:22:16.066Z" updated_at: "2025-04-25T11:22:16.066Z" tax_rate: "0.08875" unit_totals: subtotal: "0" discount: "0" tax: "0" total: "0" proration: rate: "0" billing_period: starts_at: "2025-04-25T11:29:46.915899Z" ends_at: "2025-05-25T11:29:46.915899Z" payments: [] checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8zbfzrnfr6b4hfexhk4e7h customer: id: ctm_01jspbafm96p2ppbe85921nf6p name: null email: sam@example.com locale: en marketing_consent: false custom_data: null status: active created_at: "2025-04-25T11:28:59.529Z" updated_at: "2025-04-25T11:28:59.529Z" import_meta: null address: id: add_01jspbafmrn485m030p7kx9dbr customer_id: ctm_01jspbafm96p2ppbe85921nf6p description: null first_line: null second_line: null city: null postal_code: "10021" region: null country_code: US status: active custom_data: null import_meta: null created_at: "2025-04-25T11:28:59.544Z" updated_at: "2025-04-25T11:28:59.544Z" adjustments_totals: subtotal: "0" tax: "0" total: "0" fee: "0" earnings: "0" breakdown: credit: "0" refund: "0" chargeback: "0" currency_code: USD retained_fee: "0" available_payment_methods: - apple_pay - card - paypal - google_pay adjustments: [] meta: request_id: c73663c7-7308-4af5-9cf2-4cc9f7372196 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/update-payment-method description: Get a transaction to update payment method x-permissions: - transaction.write /subscriptions/{subscription_id}/preview: patch: operationId: preview-subscription-update summary: Preview an update to a subscription description: |- Previews an update for a subscription without applying those changes. Typically used for previewing proration before making changes to a subscription. If successful, your response includes `immediate_transaction`, `next_transaction`, and `recurring_transaction_details` so you can see expected transactions for the changes. The `update_summary` object contains details of prorated credits and charges created, along with the overall result of the update. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/SubscriptionPreview" meta: $ref: "#/components/schemas/Meta" examples: Preview an update to a subscription (200): summary: Preview an update to a subscription (200) value: data: status: active customer_id: ctm_01hrffh7gvp29kc7xahm8wddwa address_id: add_01hxh60j19j6gj877cywv20g13 business_id: null currency_code: USD created_at: "2024-05-10T12:01:47.199Z" updated_at: "2024-05-13T10:36:58.039Z" started_at: "2024-05-10T12:01:46.293348Z" first_billed_at: "2024-05-10T12:01:46.293348Z" next_billed_at: "2024-06-10T12:01:46.293348Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-05-10T12:01:46.293348Z" ends_at: "2024-06-10T12:01:46.293348Z" billing_cycle: frequency: 1 interval: month recurring_transaction_details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "95000" discount: "0" tax: "8431" total: "103431" totals: subtotal: "95000" tax: "8431" discount: "0" total: "103431" fee: null credit: "0" credit_to_balance: "0" balance: "103431" grand_total: "103431" grand_total_tax: "8431" earnings: null currency_code: USD line_items: - price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" tax_rate: "0.08875" unit_totals: subtotal: "10000" discount: "0" tax: "887" total: "10887" proration: rate: "1" billing_period: starts_at: "2024-05-10T12:01:46.293348Z" ends_at: "2024-06-10T12:01:46.293348Z" - price_id: pri_01gsz95g2zrkagg294kpstx54r quantity: 1 totals: subtotal: "25000" tax: "2219" discount: "0" total: "27219" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" tax_rate: "0.08875" unit_totals: subtotal: "25000" discount: "0" tax: "2219" total: "27219" proration: rate: "1" billing_period: starts_at: "2024-05-10T12:01:46.293348Z" ends_at: "2024-06-10T12:01:46.293348Z" - price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 20 totals: subtotal: "60000" tax: "5325" discount: "0" total: "65325" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" tax_rate: "0.08875" unit_totals: subtotal: "3000" discount: "0" tax: "266" total: "3266" proration: rate: "1" billing_period: starts_at: "2024-05-10T12:01:46.293348Z" ends_at: "2024-06-10T12:01:46.293348Z" next_transaction: billing_period: starts_at: "2024-06-10T12:01:46.293348Z" ends_at: "2024-07-10T12:01:46.293348Z" details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "95000" discount: "0" tax: "8431" total: "103431" totals: subtotal: "95000" tax: "8431" discount: "0" total: "103431" fee: null credit: "0" credit_to_balance: "0" balance: "103431" grand_total: "103431" grand_total_tax: "8431" earnings: null currency_code: USD line_items: - price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" tax_rate: "0.08875" unit_totals: subtotal: "10000" discount: "0" tax: "887" total: "10887" proration: rate: "1" billing_period: starts_at: "2024-06-10T12:01:46.293348Z" ends_at: "2024-07-10T12:01:46.293348Z" - price_id: pri_01gsz95g2zrkagg294kpstx54r quantity: 1 totals: subtotal: "25000" tax: "2219" discount: "0" total: "27219" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" tax_rate: "0.08875" unit_totals: subtotal: "25000" discount: "0" tax: "2219" total: "27219" proration: rate: "1" billing_period: starts_at: "2024-06-10T12:01:46.293348Z" ends_at: "2024-07-10T12:01:46.293348Z" - price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 20 totals: subtotal: "60000" tax: "5325" discount: "0" total: "65325" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" tax_rate: "0.08875" unit_totals: subtotal: "3000" discount: "0" tax: "266" total: "3266" proration: rate: "1" billing_period: starts_at: "2024-06-10T12:01:46.293348Z" ends_at: "2024-07-10T12:01:46.293348Z" adjustments: [] immediate_transaction: billing_period: starts_at: "2024-05-13T10:36:59.473Z" ends_at: "2024-06-10T12:01:46.293348Z" details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "72410" discount: "0" tax: "6428" total: "78838" totals: subtotal: "72410" tax: "6428" discount: "0" total: "78838" fee: null credit: "0" credit_to_balance: "0" balance: "78838" grand_total: "78838" grand_total_tax: "6428" earnings: null currency_code: USD line_items: - price_id: pri_01gsz95g2zrkagg294kpstx54r quantity: 1 totals: subtotal: "22628" tax: "2009" discount: "0" total: "24637" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" tax_rate: "0.08875" unit_totals: subtotal: "22628" discount: "0" tax: "2009" total: "24637" proration: rate: "0.90513" billing_period: starts_at: "2024-05-13T10:36:57.967Z" ends_at: "2024-06-10T12:01:46.293348Z" - price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 20 totals: subtotal: "54308" tax: "4820" discount: "0" total: "59128" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" tax_rate: "0.08875" unit_totals: subtotal: "2715" discount: "0" tax: "241" total: "2956" proration: rate: "0.90513" billing_period: starts_at: "2024-05-13T10:36:57.97Z" ends_at: "2024-06-10T12:01:46.293348Z" - price_id: pri_01gsz8ntc6z7npqqp6j4ys0w1w quantity: -5 totals: subtotal: "-4526" tax: "-401" discount: "0" total: "-4927" product: id: pro_01gsz4s0w61y0pp88528f1wvvb name: AeroEdit Basic type: standard tax_category: standard description: Ideal for hobbyist pilots AeroEdit Basic offers flight log creation, editing, basic performance tracking, route planning, and export options. image_url: https://paddle.s3.amazonaws.com/user/165798/oi0r8qNmQzuNpj9pLHcT_basic.png custom_data: features: aircraft_performance: false compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: false sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2023-02-23T12:43:09.062Z" updated_at: "2024-04-05T15:56:39.477Z" tax_rate: "0.08875" unit_totals: subtotal: "905" discount: "0" tax: "80" total: "985" proration: rate: "0.90513" billing_period: starts_at: "2024-05-13T10:36:57.959Z" ends_at: "2024-06-10T12:01:46.293348Z" adjustments: [] scheduled_change: null items: - status: active quantity: 1 recurring: true created_at: "2024-05-10T12:01:47.199Z" updated_at: "2024-05-10T12:01:47.199Z" previously_billed_at: "2024-05-10T12:01:46.293348Z" next_billed_at: "2024-06-10T12:01:46.293348Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-12T10:42:45.476453Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null - status: active quantity: 1 recurring: true created_at: "2024-05-13T10:36:57.964Z" updated_at: "2024-05-13T10:36:57.964Z" previously_billed_at: "2024-05-13T10:36:57.964Z" next_billed_at: "2024-06-10T12:01:46.293348Z" trial_dates: null price: id: pri_01gsz95g2zrkagg294kpstx54r product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Monthly (recurring addon) name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "25000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T13:59:52.159927Z" updated_at: "2024-04-09T07:27:48.018296Z" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" import_meta: null - status: active quantity: 20 recurring: true created_at: "2024-05-13T10:36:57.964Z" updated_at: "2024-05-13T10:36:57.964Z" previously_billed_at: "2024-05-13T10:36:57.964Z" next_billed_at: "2024-06-10T12:01:46.293348Z" trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hxh62z5zb2jeebtnrjfkk15b/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hxh62z5zb2jeebtnrjfkk15b/cancel discount: null update_summary: credit: amount: "-4927" currency_code: USD charge: amount: "83765" currency_code: USD result: action: charge amount: "78838" currency_code: USD import_meta: null consent_requirements: [] meta: request_id: d3d9d246-7adf-4f6f-a960-c17e0f314071 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/preview-subscription description: Preview an update to a subscription requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SubscriptionUpdate" examples: Preview an update to a subscription (200): summary: Preview an update to a subscription (200) value: items: - price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 20 - price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 - price_id: pri_01gsz95g2zrkagg294kpstx54r quantity: 1 proration_billing_mode: prorated_immediately x-permissions: - subscription.read /subscriptions/{subscription_id}/charge: post: operationId: create-subscription-charge summary: Create a one-time charge for a subscription description: |- Creates a new one-time charge for a subscription. Use to bill non-recurring items to a subscription. Non-recurring items are price entities where the `billing_cycle` is `null`. If successful, Paddle responds with the updated subscription entity. However, one-time charges aren't held against the subscription entity, so the charges billed aren't returned in the response. Once created, to get details of a one-time charge: * When created with `effective_from` as `next_billing_period`, get the subscription the charge was billed to and use the `include` query parameter with the `next_transaction` value. * When created with `effective_from` as `immediately`, list transactions and use the `subscription_id` query parameter with the subscription ID of the subscription the charge was billed to. When an update results in an immediate charge, responses may take longer than usual while a payment attempt is processed. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Subscription" meta: $ref: "#/components/schemas/Meta" examples: Create a one-time charge for a subscription (201): summary: Create a one-time charge for a subscription (201) value: data: id: sub_01hv8y5ehszzq0yv20ttx3166y status: active customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8y4jk511j9g2n9a2mexjbx business_id: null currency_code: USD created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:56:12.174Z" started_at: "2024-04-12T10:37:59.556997Z" first_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-04-12T10:37:59.556997Z" ends_at: "2024-05-12T10:37:59.556997Z" billing_cycle: frequency: 1 interval: month scheduled_change: null items: - status: active quantity: 20 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.76Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" trial_dates: null price: id: pri_01gsz8x8sawmvhz1pv30nge1ke product_id: pro_01gsz4t5hdjse780zja8vvr7jg type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 999 import_meta: null created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" next_billed_at: "2024-05-12T10:37:59.556997Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" - status: active quantity: 1 recurring: true created_at: "2024-04-12T10:49:38.765Z" updated_at: "2024-04-12T10:49:38.765Z" previously_billed_at: "2024-04-12T10:49:38.765Z" next_billed_at: "2024-05-12T10:37:59.556997Z" trial_dates: null price: id: pri_01gsz95g2zrkagg294kpstx54r product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Monthly (recurring addon) name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "25000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: null created_at: "2023-02-23T13:59:52.159927Z" updated_at: "2024-04-09T07:27:48.018296Z" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hv8y5ehszzq0yv20ttx3166y/cancel discount: null import_meta: null consent_requirements: [] meta: request_id: 53283483-dbd9-4987-9aa1-94656326dc58 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/create-one-time-charge description: Create a one-time charge for a subscription requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SubscriptionCharge" examples: Create a one-time charge for a subscription (201): summary: Create a one-time charge for a subscription (201) value: effective_from: immediately items: - price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 x-permissions: - subscription.write /subscriptions/{subscription_id}/charge/preview: post: operationId: preview-subscription-charge summary: Preview a one-time charge for a subscription description: |- Previews creating a one-time charge for a subscription without billing that charge. Typically used for previewing calculations before making changes to a subscription. One-time charges are non-recurring items. These are price entities where the `billing_cycle` is `null`. If successful, your response includes `immediate_transaction`, `next_transaction`, and `recurring_transaction_details` so you can see expected transactions for the changes. parameters: - $ref: "#/components/parameters/SubscriptionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/SubscriptionPreview" meta: $ref: "#/components/schemas/Meta" examples: Preview a one-time charge for a subscription (200): summary: Preview a one-time charge for a subscription (200) value: data: status: active customer_id: ctm_01hrffh7gvp29kc7xahm8wddwa address_id: add_01hxh60j19j6gj877cywv20g13 business_id: null currency_code: USD created_at: "2024-05-10T12:01:47.199Z" updated_at: "2024-05-13T10:40:04.576Z" started_at: "2024-05-10T12:01:46.293348Z" first_billed_at: "2024-05-10T12:01:46.293348Z" next_billed_at: "2024-06-10T12:01:46.293348Z" paused_at: null canceled_at: null collection_mode: automatic billing_details: null current_billing_period: starts_at: "2024-05-10T12:01:46.293348Z" ends_at: "2024-06-10T12:01:46.293348Z" billing_cycle: frequency: 1 interval: month recurring_transaction_details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "15000" discount: "0" tax: "1331" total: "16331" totals: subtotal: "15000" tax: "1331" discount: "0" total: "16331" fee: null credit: "0" credit_to_balance: "0" balance: "16331" grand_total: "16331" grand_total_tax: "1331" earnings: null currency_code: USD line_items: - price_id: pri_01gsz8ntc6z7npqqp6j4ys0w1w quantity: 5 totals: subtotal: "5000" tax: "444" discount: "0" total: "5444" product: id: pro_01gsz4s0w61y0pp88528f1wvvb name: AeroEdit Basic type: standard tax_category: standard description: Ideal for hobbyist pilots AeroEdit Basic offers flight log creation, editing, basic performance tracking, route planning, and export options. image_url: https://paddle.s3.amazonaws.com/user/165798/oi0r8qNmQzuNpj9pLHcT_basic.png custom_data: features: aircraft_performance: false compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: false sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2023-02-23T12:43:09.062Z" updated_at: "2024-04-05T15:56:39.477Z" tax_rate: "0.08875" unit_totals: subtotal: "1000" discount: "0" tax: "89" total: "1089" proration: rate: "1" billing_period: starts_at: "2024-05-10T12:01:46.293348Z" ends_at: "2024-06-10T12:01:46.293348Z" - price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" tax_rate: "0.08875" unit_totals: subtotal: "10000" discount: "0" tax: "887" total: "10887" proration: rate: "1" billing_period: starts_at: "2024-05-10T12:01:46.293348Z" ends_at: "2024-06-10T12:01:46.293348Z" next_transaction: billing_period: starts_at: "2024-06-10T12:01:46.293348Z" ends_at: "2024-07-10T12:01:46.293348Z" details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "15000" discount: "0" tax: "1331" total: "16331" totals: subtotal: "15000" tax: "1331" discount: "0" total: "16331" fee: null credit: "0" credit_to_balance: "0" balance: "16331" grand_total: "16331" grand_total_tax: "1331" earnings: null currency_code: USD line_items: - price_id: pri_01gsz8ntc6z7npqqp6j4ys0w1w quantity: 5 totals: subtotal: "5000" tax: "444" discount: "0" total: "5444" product: id: pro_01gsz4s0w61y0pp88528f1wvvb name: AeroEdit Basic type: standard tax_category: standard description: Ideal for hobbyist pilots AeroEdit Basic offers flight log creation, editing, basic performance tracking, route planning, and export options. image_url: https://paddle.s3.amazonaws.com/user/165798/oi0r8qNmQzuNpj9pLHcT_basic.png custom_data: features: aircraft_performance: false compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: false sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2023-02-23T12:43:09.062Z" updated_at: "2024-04-05T15:56:39.477Z" tax_rate: "0.08875" unit_totals: subtotal: "1000" discount: "0" tax: "89" total: "1089" proration: rate: "1" billing_period: starts_at: "2024-06-10T12:01:46.293348Z" ends_at: "2024-07-10T12:01:46.293348Z" - price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" tax_rate: "0.08875" unit_totals: subtotal: "10000" discount: "0" tax: "887" total: "10887" proration: rate: "1" billing_period: starts_at: "2024-06-10T12:01:46.293348Z" ends_at: "2024-07-10T12:01:46.293348Z" adjustments: [] immediate_transaction: billing_period: starts_at: "2024-05-13T10:40:05.929Z" ends_at: "2024-06-10T12:01:46.293348Z" details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "19900" discount: "0" tax: "1766" total: "21666" totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" fee: null credit: "0" credit_to_balance: "0" balance: "21666" grand_total: "21666" grand_total_tax: "1766" earnings: null currency_code: USD line_items: - price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard tax_category: standard description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active import_meta: null created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" tax_rate: "0.08875" unit_totals: subtotal: "19900" discount: "0" tax: "1766" total: "21666" proration: null adjustments: [] scheduled_change: null items: - status: active quantity: 5 recurring: true created_at: "2024-05-10T12:01:47.199Z" updated_at: "2024-05-10T12:01:47.199Z" previously_billed_at: "2024-05-10T12:01:46.293348Z" next_billed_at: "2024-06-10T12:01:46.293348Z" trial_dates: null price: id: pri_01gsz8ntc6z7npqqp6j4ys0w1w product_id: pro_01gsz4s0w61y0pp88528f1wvvb type: standard description: Monthly name: Monthly (per seat) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "1000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-02-23T13:51:18.406674Z" updated_at: "2024-04-05T14:29:40.000454Z" product: id: pro_01gsz4s0w61y0pp88528f1wvvb name: AeroEdit Basic type: standard tax_category: standard description: Ideal for hobbyist pilots AeroEdit Basic offers flight log creation, editing, basic performance tracking, route planning, and export options. image_url: https://paddle.s3.amazonaws.com/user/165798/oi0r8qNmQzuNpj9pLHcT_basic.png custom_data: null status: active import_meta: null created_at: "2023-02-23T12:43:09.062Z" updated_at: "2024-04-05T15:56:39.477Z" - status: active quantity: 1 recurring: true created_at: "2024-05-10T12:01:47.199Z" updated_at: "2024-05-10T12:01:47.199Z" previously_billed_at: "2024-05-10T12:01:46.293348Z" next_billed_at: "2024-06-10T12:01:46.293348Z" trial_dates: null price: id: pri_01h1vjfevh5etwq3rb416a23h2 product_id: pro_01h1vjes1y163xfj1rh1tkfb65 type: standard description: Monthly name: Monthly (recurring addon) tax_mode: account_setting billing_cycle: frequency: 1 interval: month trial_period: null unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 100 import_meta: null created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-12T10:42:45.476453Z" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null management_urls: update_payment_method: https://buyer-portal.paddle.com/subscriptions/sub_01hxh62z5zb2jeebtnrjfkk15b/update-payment-method cancel: https://buyer-portal.paddle.com/subscriptions/sub_01hxh62z5zb2jeebtnrjfkk15b/cancel discount: null update_summary: credit: amount: "0" currency_code: USD charge: amount: "21666" currency_code: USD result: action: charge amount: "21666" currency_code: USD import_meta: null consent_requirements: [] meta: request_id: 03130bfb-77f3-4fa9-b5a6-b31b06139377 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Subscriptions externalDocs: url: https://developer.paddle.com/api-reference/subscriptions/preview-subscription-charge description: Preview a one-time charge for a subscription requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SubscriptionCharge" examples: Preview a one-time charge for a subscription (200): summary: Preview a one-time charge for a subscription (200) value: effective_from: immediately items: - price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 x-permissions: - subscription.read /transactions: get: operationId: list-transactions summary: List transactions description: |- Returns a paginated list of transactions. Use the query parameters to page through results. Use the `include` parameter to include related entities in the response. parameters: - $ref: "#/components/parameters/BaseTransactionParams" - $ref: "#/components/parameters/FilterIdParam" - $ref: "#/components/parameters/PaginationParams.after" - $ref: "#/components/parameters/ListTransactionsQueryParams.billed_at" - $ref: "#/components/parameters/ListTransactionsQueryParams.collection_mode" - $ref: "#/components/parameters/ListTransactionsQueryParams.created_at" - $ref: "#/components/parameters/ListTransactionsQueryParams.customer_id" - $ref: "#/components/parameters/ListTransactionsQueryParams.invoice_number" - $ref: "#/components/parameters/ListTransactionsQueryParams.origin" - $ref: "#/components/parameters/ListTransactionsQueryParams.order_by" - $ref: "#/components/parameters/ListTransactionsQueryParams.status" - $ref: "#/components/parameters/ListTransactionsQueryParams.subscription_id" - $ref: "#/components/parameters/ListTransactionsQueryParams.per_page" - $ref: "#/components/parameters/ListTransactionsQueryParams.updated_at" - $ref: "#/components/parameters/SkipCountHeader" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: type: array items: $ref: "#/components/schemas/TransactionIncludes" meta: $ref: "#/components/schemas/PaginatedMeta" examples: List transactions (200): summary: List transactions (200) value: data: - id: txn_01hv8xxw3etar07vaxsqbyqasy status: draft customer_id: null address_id: null business_id: null custom_data: null origin: web collection_mode: automatic subscription_id: null invoice_id: null invoice_number: null billing_details: null billing_period: null currency_code: GBP discount_id: null created_at: "2024-04-12T10:33:52.610609Z" updated_at: "2024-04-12T10:33:52.610609Z" billed_at: null revised_at: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke description: Monthly type: standard name: Monthly (per seat) product_id: pro_01gsz4t5hdjse780zja8vvr7jg billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 999 status: active created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 description: Monthly type: standard name: Monthly (recurring addon) product_id: pro_01h1vjes1y163xfj1rh1tkfb65 billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null details: tax_rates_used: - tax_rate: "0.2" totals: subtotal: "47924" discount: "0" tax: "9585" total: "57509" totals: subtotal: "47924" tax: "9585" discount: "0" total: "57509" grand_total: "57509" grand_total_tax: "9585" fee: null credit: "0" credit_to_balance: "0" balance: "57509" earnings: null currency_code: GBP adjusted_totals: subtotal: "47924" tax: "9585" total: "57509" grand_total: "57509" grand_total_tax: "9585" fee: "0" earnings: "0" currency_code: GBP retained_fee: "0" payout_totals: null adjusted_payout_totals: null line_items: - id: txnitm_01hv8xxw6qxaypzmf81xqgcba9 price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 totals: subtotal: "24000" tax: "4800" discount: "0" total: "28800" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null tax_rate: "0.2" unit_totals: subtotal: "2400" tax: "480" discount: "0" total: "2880" proration: null - id: txnitm_01hv8xxw6qxaypzmf823nwmr95 price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "8001" tax: "1600" discount: "0" total: "9601" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null tax_rate: "0.2" unit_totals: subtotal: "8001" tax: "1600" discount: "0" total: "9601" proration: null - id: txnitm_01hv8xxw6qxaypzmf829vtr6tx price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "15923" tax: "3185" discount: "0" total: "19108" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0.2" unit_totals: subtotal: "15923" tax: "3185" discount: "0" total: "19108" proration: null payments: [] checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8xxw3etar07vaxsqbyqasy - id: txn_01hv8xbtmb6zc7c264ycteehth status: past_due customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8wt8ny8ms5vtm71bj8vcdd business_id: null custom_data: null origin: subscription_recurring collection_mode: automatic subscription_id: sub_01hv8x29kz0t586xy6zn1a62ny invoice_id: null invoice_number: null billing_details: null billing_period: starts_at: "2024-05-12T10:18:47.635628Z" ends_at: "2024-06-12T10:18:47.635628Z" currency_code: USD discount_id: null created_at: "2024-04-12T10:24:01.588479Z" updated_at: "2024-04-12T10:24:03.197001Z" billed_at: "2024-04-12T10:24:01.163479Z" revised_at: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke description: Monthly type: standard name: Monthly (per seat) product_id: pro_01gsz4t5hdjse780zja8vvr7jg billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 999 status: active created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" import_meta: null quantity: 10 proration: rate: "1" billing_period: starts_at: "2024-05-12T10:18:47.635628Z" ends_at: "2024-06-12T10:18:47.635628Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 description: Monthly type: standard name: Monthly (recurring addon) product_id: pro_01h1vjes1y163xfj1rh1tkfb65 billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" import_meta: null quantity: 1 proration: rate: "1" billing_period: starts_at: "2024-05-12T10:18:47.635628Z" ends_at: "2024-06-12T10:18:47.635628Z" details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "40000" discount: "0" tax: "3549" total: "43549" totals: subtotal: "40000" tax: "3549" discount: "0" total: "43549" grand_total: "43549" grand_total_tax: "3549" fee: null credit: "0" credit_to_balance: "0" balance: "43549" earnings: null currency_code: USD adjusted_totals: subtotal: "40000" tax: "3549" total: "43549" grand_total: "43549" grand_total_tax: "3549" fee: "0" earnings: "0" currency_code: USD retained_fee: "0" payout_totals: null adjusted_payout_totals: null line_items: - id: txnitm_01hv8xbv0wdggp4a9338b18ckn price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 totals: subtotal: "30000" tax: "2662" discount: "0" total: "32662" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "3000" tax: "266" discount: "0" total: "3266" proration: rate: "1" billing_period: starts_at: "2024-05-12T10:18:47.635628Z" ends_at: "2024-06-12T10:18:47.635628Z" - id: txnitm_01hv8xbv0wdggp4a933cx2m9qc price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" proration: rate: "1" billing_period: starts_at: "2024-05-12T10:18:47.635628Z" ends_at: "2024-06-12T10:18:47.635628Z" payments: - payment_attempt_id: ff8123f6-9cfc-4f04-9984-75e4ad04b169 stored_payment_method_id: 281ff2ca-8550-42b9-bf39-15948e7de62d payment_method_id: paymtd_01hv8x1tpjfnttxddw73xnqx6s amount: "43549" status: error error_code: authentication_failed method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "3184" expiry_month: 1 expiry_year: 2025 cardholder_name: Michael McGovern paypal: null created_at: "2024-04-12T10:24:01.692772Z" captured_at: null checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8xbtmb6zc7c264ycteehth - id: txn_01hv8wptq8987qeep44cyrewp9 status: completed customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8wt8ny8ms5vtm71bj8vcdd business_id: null custom_data: null origin: web collection_mode: automatic subscription_id: sub_01hv8x29kz0t586xy6zn1a62ny invoice_id: inv_01hv8x29nsh54c2pgt0hnq0zkx invoice_number: 325-10566 billing_details: null billing_period: starts_at: "2024-04-12T10:18:47.635628Z" ends_at: "2024-05-12T10:18:47.635628Z" currency_code: USD discount_id: null created_at: "2024-04-12T10:12:33.2014Z" updated_at: "2024-04-12T10:20:21.386946Z" billed_at: "2024-04-12T10:18:48.294633Z" revised_at: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke description: Monthly type: standard name: Monthly (per seat) product_id: pro_01gsz4t5hdjse780zja8vvr7jg billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 999 status: active created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 description: Monthly type: standard name: Monthly (recurring addon) product_id: pro_01h1vjes1y163xfj1rh1tkfb65 billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "59900" discount: "0" tax: "5315" total: "65215" totals: subtotal: "59900" tax: "5315" discount: "0" total: "65215" grand_total: "65215" grand_total_tax: "5315" fee: "3311" credit: "0" credit_to_balance: "0" balance: "0" earnings: "56589" currency_code: USD adjusted_totals: subtotal: "59900" tax: "5315" total: "65215" grand_total: "65215" grand_total_tax: "5315" fee: "3311" earnings: "56589" currency_code: USD retained_fee: "0" payout_totals: subtotal: "59900" discount: "0" tax: "5315" total: "65215" credit: "0" credit_to_balance: "0" balance: "0" grand_total: "65215" grand_total_tax: "5315" fee: "3311" earnings: "56589" currency_code: USD exchange_rate: "1" fee_rate: "0.05" adjusted_payout_totals: subtotal: "59900" tax: "5315" total: "65215" fee: "3311" retained_fee: "0" chargeback_fee: amount: "0" original: null earnings: "56589" currency_code: USD exchange_rate: "1" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 totals: subtotal: "30000" tax: "2662" discount: "0" total: "32662" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "3000" tax: "266" discount: "0" total: "3266" proration: null - id: txnitm_01hv8wt98jahpbm1t1v1sd067y price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" proration: null - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" proration: null payments: - payment_attempt_id: 937640dd-e3dc-40df-a16c-bb75aafd8f71 stored_payment_method_id: 281ff2ca-8550-42b9-bf39-15948e7de62d payment_method_id: paymtd_01hv8x1tpjfnttxddw73xnqx6s amount: "65215" status: captured error_code: null method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "3184" expiry_month: 1 expiry_year: 2025 cardholder_name: Michael McGovern paypal: null created_at: "2024-04-12T10:18:33.579142Z" captured_at: "2024-04-12T10:18:47.635628Z" - payment_attempt_id: 8f72cfa6-26b4-4a57-91dc-8f2708f7822d stored_payment_method_id: a78ece50-356f-4e0c-b72d-ad5368b0a0d9 payment_method_id: paymtd_01hv8wx2mka7dfsqjjsxh1ne7z amount: "65215" status: error error_code: declined method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "0002" expiry_month: 1 expiry_year: 2025 cardholder_name: Michael McGovern paypal: null created_at: "2024-04-12T10:15:57.888183Z" captured_at: null checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wptq8987qeep44cyrewp9 - id: txn_01hv8wnvvtedwjrhfhpr9vkq9w status: completed customer_id: ctm_01hchnxgrh0wcyngy8q9d1hpkz address_id: add_01hchnxgsa1v3791z2tvy0fc1t business_id: null custom_data: null origin: subscription_recurring collection_mode: automatic subscription_id: sub_01hchny8h8r5w9xtb514qs6rdy invoice_id: inv_01hv8wnzafnbv52m4zs73gghrq invoice_number: 325-10565 billing_details: null billing_period: starts_at: "2024-04-12T10:11:57.907988Z" ends_at: "2024-05-12T10:11:57.907988Z" currency_code: USD discount_id: null created_at: "2024-04-12T10:12:01.643104Z" updated_at: "2024-04-12T10:15:53.705103Z" billed_at: "2024-04-12T10:12:01.530736Z" revised_at: null items: - price: id: pri_01h1vjfevh5etwq3rb416a23h2 description: Monthly (recurring addon) type: standard name: null product_id: pro_01h1vjes1y163xfj1rh1tkfb65 billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2023-08-30T10:34:33.862679Z" import_meta: null quantity: 1 proration: rate: "1" billing_period: starts_at: "2024-04-12T10:11:57.907988Z" ends_at: "2024-05-12T10:11:57.907988Z" - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke description: Monthly (per seat) type: standard name: null product_id: pro_01gsz4t5hdjse780zja8vvr7jg billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 10 maximum: 999 status: active created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2023-08-16T12:37:28.60409Z" import_meta: null quantity: 10 proration: rate: "1" billing_period: starts_at: "2024-04-12T10:11:57.907988Z" ends_at: "2024-05-12T10:11:57.907988Z" details: tax_rates_used: - tax_rate: "0.19" totals: subtotal: "40000" discount: "0" tax: "7600" total: "47600" totals: subtotal: "40000" tax: "7600" discount: "0" total: "47600" grand_total: "47600" grand_total_tax: "7600" fee: "2430" credit: "0" credit_to_balance: "0" balance: "0" earnings: "37570" currency_code: USD adjusted_totals: subtotal: "40000" tax: "7600" total: "47600" grand_total: "47600" grand_total_tax: "7600" fee: "2430" earnings: "37570" currency_code: USD retained_fee: "0" payout_totals: subtotal: "40000" discount: "0" tax: "7600" total: "47600" credit: "0" credit_to_balance: "0" balance: "0" grand_total: "47600" grand_total_tax: "7600" fee: "2430" earnings: "37570" currency_code: USD exchange_rate: "1" fee_rate: "0.05" adjusted_payout_totals: subtotal: "40000" tax: "7600" total: "47600" fee: "2430" retained_fee: "0" chargeback_fee: amount: "0" original: null earnings: "37570" currency_code: USD exchange_rate: "1" line_items: - id: txnitm_01hv8wnvyfe1jtd0jczr9wed4s price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "1900" discount: "0" total: "11900" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null tax_rate: "0.19" unit_totals: subtotal: "10000" tax: "1900" discount: "0" total: "11900" proration: rate: "1" billing_period: starts_at: "2024-04-12T10:11:57.907988Z" ends_at: "2024-05-12T10:11:57.907988Z" - id: txnitm_01hv8wnvyfe1jtd0jczy8s3mtk price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 totals: subtotal: "30000" tax: "5700" discount: "0" total: "35700" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null tax_rate: "0.19" unit_totals: subtotal: "3000" tax: "570" discount: "0" total: "3570" proration: rate: "1" billing_period: starts_at: "2024-04-12T10:11:57.907988Z" ends_at: "2024-05-12T10:11:57.907988Z" payments: - payment_attempt_id: 37658fc8-5290-4384-a459-1e7a4e37174d stored_payment_method_id: 1fa1a6bb-d2cd-4af3-88ec-45b0d88a066a payment_method_id: paymtd_01hchny0jr4h5b7adktfdacmgy amount: "47600" status: captured error_code: null method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "5556" expiry_month: 6 expiry_year: 2026 cardholder_name: test paypal: null created_at: "2024-04-12T10:12:01.729257Z" captured_at: "2024-04-12T10:12:04.496216Z" checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wnvvtedwjrhfhpr9vkq9w - id: txn_01hv8m0mnx3sj85e7gxc6kga03 status: canceled customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01hv8gq3318ktkfengj2r75gfx business_id: null custom_data: null origin: api collection_mode: manual subscription_id: sub_01hv8xqmay5w5rfsnzkxzgy0yp invoice_id: inv_01hv8m0nn5nbvdejcvv9cpg8jf invoice_number: 325-10567 billing_details: enable_checkout: false payment_terms: interval: day frequency: 14 purchase_order_number: PO-123 additional_information: null billing_period: starts_at: "2024-04-12T00:00:00Z" ends_at: "2025-04-11T23:59:00Z" currency_code: USD discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 created_at: "2024-04-12T07:40:38.00704Z" updated_at: "2024-04-12T10:31:27.360716Z" billed_at: "2024-04-12T10:30:27.198043Z" revised_at: null items: - price: id: pri_01gsz91wy9k1yn7kx82aafwvea description: Annual type: standard name: Annual (per seat) product_id: pro_01gsz4vmqbjk3x4vvtafffd540 billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "50000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-02-23T13:57:54.249913Z" updated_at: "2024-04-05T14:32:00.471447Z" import_meta: null quantity: 50 proration: null - price: id: pri_01gsz96z29d88jrmsf2ztbfgjg description: Annual (recurring addon) type: standard name: Annual (recurring addon) product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "300000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:00:40.265185Z" updated_at: "2024-03-25T14:31:18.587603Z" import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "2819900" discount: "281990" tax: "225239" total: "2763149" totals: subtotal: "2819900" tax: "225239" discount: "281990" total: "2763149" grand_total: "2763149" grand_total_tax: "225239" fee: null credit: "0" credit_to_balance: "0" balance: "2763149" earnings: null currency_code: USD adjusted_totals: subtotal: "2537910" tax: "225239" total: "2763149" grand_total: "2763149" grand_total_tax: "225239" fee: "0" earnings: "0" currency_code: USD retained_fee: "0" payout_totals: null adjusted_payout_totals: null line_items: - id: txnitm_01hv8vzz0sjdj6grvpxyyjsmvf price_id: pri_01gsz91wy9k1yn7kx82aafwvea quantity: 50 totals: subtotal: "2500000" tax: "199687" discount: "250000" total: "2449687" product: id: pro_01gsz4vmqbjk3x4vvtafffd540 name: AeroEdit Enterprise description: The ultimate solution for organizations, featuring all Pro capabilities plus multi-user support, advanced data storage capabilities, plus personalized onboarding, dedicated account management, and the ability to pay via invoice. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/Ws808ziTS76a6YbnMkiK_enterprise.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: true route_planning: true sso: true suggested_addons: [] upgrade_description: Ready to reach new heights? Upgrade to enterprise to unlock single sign-on, payment by invoice, and dedicated account management. status: active created_at: "2023-02-23T12:44:34.923Z" updated_at: "2024-04-05T15:58:28.309Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "50000" tax: "3994" discount: "5000" total: "48994" proration: null - id: txnitm_01hv8vzz0sjdj6grvpy1fzm46f price_id: pri_01gsz96z29d88jrmsf2ztbfgjg quantity: 1 totals: subtotal: "300000" tax: "23962" discount: "30000" total: "293962" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "300000" tax: "23962" discount: "30000" total: "293962" proration: null - id: txnitm_01hv8vzz0sjdj6grvpy6g84gyw price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "1590" discount: "1990" total: "19500" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "19900" tax: "1590" discount: "1990" total: "19500" proration: null payments: [] checkout: url: null - id: txn_01hv8kxg3hxyxs9t471ms9kfsz status: ready customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01hv8gq3318ktkfengj2r75gfx business_id: null custom_data: null origin: api collection_mode: manual subscription_id: null invoice_id: inv_01hv8kxgy9cx5mps83eqrm0v9c invoice_number: null billing_details: enable_checkout: false payment_terms: interval: day frequency: 14 purchase_order_number: PO-123 additional_information: null billing_period: starts_at: "2023-08-01T00:00:00Z" ends_at: "2024-07-31T23:59:00Z" currency_code: USD discount_id: null created_at: "2024-04-12T07:38:54.904246Z" updated_at: "2024-04-12T07:38:57.079109Z" billed_at: null revised_at: null items: - price: id: pri_01gsz91wy9k1yn7kx82aafwvea description: Annual type: standard name: Annual (per seat) product_id: pro_01gsz4vmqbjk3x4vvtafffd540 billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "50000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-02-23T13:57:54.249913Z" updated_at: "2024-04-05T14:32:00.471447Z" import_meta: null quantity: 20 proration: null - price: id: pri_01gsz96z29d88jrmsf2ztbfgjg description: Annual (recurring addon) type: standard name: Annual (recurring addon) product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "300000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:00:40.265185Z" updated_at: "2024-03-25T14:31:18.587603Z" import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "1319900" discount: "0" tax: "117141" total: "1437041" totals: subtotal: "1319900" tax: "117141" discount: "0" total: "1437041" grand_total: "1437041" grand_total_tax: "117141" fee: null credit: "0" credit_to_balance: "0" balance: "1437041" earnings: null currency_code: USD adjusted_totals: subtotal: "1319900" tax: "117141" total: "1437041" grand_total: "1437041" grand_total_tax: "117141" fee: "0" earnings: "0" currency_code: USD retained_fee: "0" payout_totals: null adjusted_payout_totals: null line_items: - id: txnitm_01hv8kxghfn69z43wr13hy15dy price_id: pri_01gsz91wy9k1yn7kx82aafwvea quantity: 20 totals: subtotal: "1000000" tax: "88750" discount: "0" total: "1088750" product: id: pro_01gsz4vmqbjk3x4vvtafffd540 name: AeroEdit Enterprise description: The ultimate solution for organizations, featuring all Pro capabilities plus multi-user support, advanced data storage capabilities, plus personalized onboarding, dedicated account management, and the ability to pay via invoice. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/Ws808ziTS76a6YbnMkiK_enterprise.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: true route_planning: true sso: true suggested_addons: [] upgrade_description: Ready to reach new heights? Upgrade to enterprise to unlock single sign-on, payment by invoice, and dedicated account management. status: active created_at: "2023-02-23T12:44:34.923Z" updated_at: "2024-04-05T15:58:28.309Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "50000" tax: "4437" discount: "0" total: "54437" proration: null - id: txnitm_01hv8kxghfn69z43wr164x2bmd price_id: pri_01gsz96z29d88jrmsf2ztbfgjg quantity: 1 totals: subtotal: "300000" tax: "26625" discount: "0" total: "326625" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "300000" tax: "26625" discount: "0" total: "326625" proration: null - id: txnitm_01hv8kxghfn69z43wr16v81qhb price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" proration: null payments: [] checkout: url: null meta: request_id: b93d9c94-c28f-4e5d-af2e-044854d7afe8 pagination: per_page: 30 next: https://api.paddle.com/transactions?after=txn_01hv8kxg3hxyxs9t471ms9kfsz has_more: false estimated_total: 6 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Transactions externalDocs: url: https://developer.paddle.com/api-reference/transactions/list-transactions description: List transactions x-permissions: - transaction.read post: operationId: create-transaction summary: Create a transaction description: |- Creates a new transaction. Transactions are typically created with the status of `draft` or `ready` initially: * Draft transactions have `items` against them, but don't have all of the required fields for billing. Paddle creates draft transactions automatically when a checkout is opened. * Paddle automatically marks transactions as `ready` when all of the required fields are present for billing. This includes `customer_id` and `address_id` for automatically-collected transactions, and `billing_details` for manually-collected transactions. The `collection_mode` against a transaction determines how Paddle tries to collect for payment: * Manually-collected transactions are for sales-assisted billing. Paddle sends an invoice to your customer when a transaction is `billed`. Payment is often by wire transfer. * Automatically-collected transactions are for self-serve checkouts. You may pass the transaction to a checkout or use the returned `checkout.url` to collect for payment. When a manually-collected transaction is marked as `billed` or an automatically-collected transaction is `completed`, Paddle automatically creates a related subscription for the items on the transaction. If successful, your response includes a copy of the new transaction entity. Use the `include` parameter to include related entities in the response. parameters: - $ref: "#/components/parameters/BaseTransactionParams" responses: "201": description: The request has succeeded and a new resource has been created as a result. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/TransactionIncludes" meta: $ref: "#/components/schemas/Meta" examples: Create a transaction (201): summary: Create a transaction (201) value: data: id: txn_01hv8m0mnx3sj85e7gxc6kga03 status: ready customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01hv8gq3318ktkfengj2r75gfx business_id: null custom_data: null origin: api collection_mode: manual subscription_id: null invoice_id: null invoice_number: null discount_id: null billing_details: enable_checkout: false payment_terms: interval: day frequency: 14 purchase_order_number: PO-123 additional_information: null billing_period: starts_at: "2024-04-12T00:00:00Z" ends_at: "2025-04-11T23:59:00Z" currency_code: USD created_at: "2024-04-12T07:40:38.007040251Z" updated_at: "2024-04-12T07:40:38.007040251Z" billed_at: null revised_at: null items: - price: id: pri_01gsz91wy9k1yn7kx82aafwvea description: Annual type: standard name: Annual (per seat) product_id: pro_01gsz4vmqbjk3x4vvtafffd540 billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "50000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-02-23T13:57:54.249913Z" updated_at: "2024-04-05T14:32:00.471447Z" import_meta: null quantity: 20 proration: null - price: id: pri_01gsz96z29d88jrmsf2ztbfgjg description: Annual (recurring addon) type: standard name: Annual (recurring addon) product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "300000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:00:40.265185Z" updated_at: "2024-03-25T14:31:18.587603Z" import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "1319900" discount: "0" tax: "117141" total: "1437041" totals: subtotal: "1319900" tax: "117141" discount: "0" total: "1437041" grand_total: "1437041" grand_total_tax: "117141" fee: null credit: "0" credit_to_balance: "0" balance: "1437041" earnings: null currency_code: USD adjusted_totals: subtotal: "1319900" tax: "117141" total: "1437041" grand_total: "1437041" grand_total_tax: "117141" fee: "0" earnings: "0" currency_code: USD retained_fee: "0" payout_totals: null adjusted_payout_totals: null line_items: - id: txnitm_01hv8m0n6xqk32jsq5q6pv7mpk price_id: pri_01gsz91wy9k1yn7kx82aafwvea quantity: 20 totals: subtotal: "1000000" tax: "88750" discount: "0" total: "1088750" product: id: pro_01gsz4vmqbjk3x4vvtafffd540 name: AeroEdit Enterprise description: The ultimate solution for organizations, featuring all Pro capabilities plus multi-user support, advanced data storage capabilities, plus personalized onboarding, dedicated account management, and the ability to pay via invoice. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/Ws808ziTS76a6YbnMkiK_enterprise.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: true route_planning: true sso: true suggested_addons: [] upgrade_description: Ready to reach new heights? Upgrade to enterprise to unlock single sign-on, payment by invoice, and dedicated account management. status: active created_at: "2023-02-23T12:44:34.923Z" updated_at: "2024-04-05T15:58:28.309Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "50000" tax: "4437" discount: "0" total: "54437" proration: null - id: txnitm_01hv8m0n6yajavvy3q3297hd45 price_id: pri_01gsz96z29d88jrmsf2ztbfgjg quantity: 1 totals: subtotal: "300000" tax: "26625" discount: "0" total: "326625" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "300000" tax: "26625" discount: "0" total: "326625" proration: null - id: txnitm_01hv8m0n6yajavvy3q376fjpht price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" proration: null payments: [] checkout: url: null meta: request_id: c7db9b4e-da8c-4b05-871b-f7f47264fd72 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Transactions externalDocs: url: https://developer.paddle.com/api-reference/transactions/create-transaction description: Create a transaction requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TransactionCreate" examples: Create a transaction (201): summary: Create a transaction (201) value: items: - quantity: 20 price_id: pri_01gsz91wy9k1yn7kx82aafwvea - quantity: 1 price_id: pri_01gsz96z29d88jrmsf2ztbfgjg - quantity: 1 price_id: pri_01gsz98e27ak2tyhexptwc58yk customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01hv8gq3318ktkfengj2r75gfx 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: "2024-04-12T00:00:00Z" ends_at: "2025-04-11T23:59:00Z" x-permissions: - transaction.write /transactions/{transaction_id}: get: operationId: get-transaction summary: Get a transaction description: |- Returns a transaction using its ID. Use the `include` parameter to include related entities in the response. parameters: - $ref: "#/components/parameters/BaseTransactionParams" - $ref: "#/components/parameters/TransactionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/TransactionIncludes" meta: $ref: "#/components/schemas/Meta" examples: Get a transaction (200): summary: Get a transaction (200) value: data: id: txn_01hv8wptq8987qeep44cyrewp9 status: completed customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8wt8ny8ms5vtm71bj8vcdd business_id: null custom_data: null origin: web collection_mode: automatic subscription_id: sub_01hv8x29kz0t586xy6zn1a62ny invoice_id: inv_01hv8x29nsh54c2pgt0hnq0zkx invoice_number: 325-10566 billing_details: null billing_period: starts_at: "2024-04-12T10:18:47.635628Z" ends_at: "2024-05-12T10:18:47.635628Z" currency_code: USD discount_id: null created_at: "2024-04-12T10:12:33.2014Z" updated_at: "2024-04-12T10:20:21.386946Z" billed_at: "2024-04-12T10:18:48.294633Z" revised_at: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke description: Monthly type: standard name: Monthly (per seat) product_id: pro_01gsz4t5hdjse780zja8vvr7jg billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 999 status: active created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 description: Monthly type: standard name: Monthly (recurring addon) product_id: pro_01h1vjes1y163xfj1rh1tkfb65 billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "59900" discount: "0" tax: "5315" total: "65215" totals: subtotal: "59900" tax: "5315" discount: "0" total: "65215" grand_total: "65215" grand_total_tax: "5315" fee: "3311" credit: "0" credit_to_balance: "0" balance: "0" earnings: "56589" currency_code: USD adjusted_totals: subtotal: "59900" tax: "5315" total: "65215" grand_total: "65215" grand_total_tax: "5315" fee: "3311" earnings: "56589" currency_code: USD retained_fee: "0" payout_totals: subtotal: "59900" discount: "0" tax: "5315" total: "65215" credit: "0" credit_to_balance: "0" balance: "0" grand_total: "65215" grand_total_tax: "5315" fee: "3311" earnings: "56589" currency_code: USD exchange_rate: "1" fee_rate: "0.05" adjusted_payout_totals: subtotal: "59900" tax: "5315" total: "65215" fee: "3311" retained_fee: "0" chargeback_fee: amount: "0" original: null earnings: "56589" currency_code: USD exchange_rate: "1" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 totals: subtotal: "30000" tax: "2662" discount: "0" total: "32662" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "3000" tax: "266" discount: "0" total: "3266" proration: null - id: txnitm_01hv8wt98jahpbm1t1v1sd067y price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" proration: null - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" proration: null payments: - payment_attempt_id: 937640dd-e3dc-40df-a16c-bb75aafd8f71 stored_payment_method_id: 281ff2ca-8550-42b9-bf39-15948e7de62d payment_method_id: paymtd_01hv8x1tpjfnttxddw73xnqx6s amount: "65215" status: captured error_code: null method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "3184" expiry_month: 1 expiry_year: 2025 cardholder_name: Michael McGovern paypal: null created_at: "2024-04-12T10:18:33.579142Z" captured_at: "2024-04-12T10:18:47.635628Z" - payment_attempt_id: 8f72cfa6-26b4-4a57-91dc-8f2708f7822d stored_payment_method_id: a78ece50-356f-4e0c-b72d-ad5368b0a0d9 payment_method_id: paymtd_01hv8wx2mka7dfsqjjsxh1ne7z amount: "65215" status: error error_code: declined method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "0002" expiry_month: 1 expiry_year: 2025 cardholder_name: Michael McGovern paypal: null created_at: "2024-04-12T10:15:57.888183Z" captured_at: null checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wptq8987qeep44cyrewp9 meta: request_id: d6186f6a-70f7-4f1c-a65a-f790f940cf6e default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Transactions externalDocs: url: https://developer.paddle.com/api-reference/transactions/get-transaction description: Get a transaction x-permissions: - transaction.read patch: operationId: update-transaction summary: Update a transaction description: |- Updates a transaction using its ID. You can update transactions that are `draft` or `ready`. `billed` and `completed` transactions are considered records for tax and legal purposes, so they can't be changed. You can either: * Create [an adjustment](https://developer.paddle.com/api-reference/adjustments/overview) to record a refund or credit for a transaction. * Cancel a `billed` transaction by sending a PATCH request to set `status` to `canceled`. The transaction `status` may only be set to `billed` or `canceled`. Other statuses are set automatically by Paddle. Set a manually-collected transaction to `billed` to mark it as finalized. This is essentially issuing an invoice. At this point, it becomes a legal record so you can't make changes to it. Paddle automatically assigns an invoice number, creates [a related subscription](https://developer.paddle.com/api-reference/subscriptions/overview), and sends it to your customer. When making changes to items on a transaction, send the complete list of items that you'd like to be on a transaction — including existing items. For each item, send an object containing `price_id` and `quantity`. Paddle responds with the full `price` object for each item. See: [Work with lists](https://developer.paddle.com/api-reference/about/lists) If successful, your response includes a copy of the updated transaction entity. parameters: - $ref: "#/components/parameters/BaseTransactionParams" - $ref: "#/components/parameters/TransactionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/TransactionIncludes" meta: $ref: "#/components/schemas/Meta" examples: Update a transaction (200): summary: Update a transaction (200) value: data: id: txn_01hv8m0mnx3sj85e7gxc6kga03 status: ready customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01hv8gq3318ktkfengj2r75gfx business_id: null custom_data: null origin: api collection_mode: manual subscription_id: null invoice_id: inv_01hv8m0nn5nbvdejcvv9cpg8jf invoice_number: null billing_details: enable_checkout: false payment_terms: interval: day frequency: 14 purchase_order_number: PO-123 additional_information: null billing_period: starts_at: "2024-04-12T00:00:00Z" ends_at: "2025-04-11T23:59:00Z" currency_code: USD discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 created_at: "2024-04-12T07:40:38.00704Z" updated_at: "2024-04-12T10:00:03.871169408Z" billed_at: null revised_at: null items: - price: id: pri_01gsz91wy9k1yn7kx82aafwvea description: Annual type: standard name: Annual (per seat) product_id: pro_01gsz4vmqbjk3x4vvtafffd540 billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "50000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-02-23T13:57:54.249913Z" updated_at: "2024-04-05T14:32:00.471447Z" import_meta: null quantity: 50 proration: null - price: id: pri_01gsz96z29d88jrmsf2ztbfgjg description: Annual (recurring addon) type: standard name: Annual (recurring addon) product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz billing_cycle: interval: year frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "300000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:00:40.265185Z" updated_at: "2024-03-25T14:31:18.587603Z" import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "2819900" discount: "281990" tax: "225239" total: "2763149" totals: subtotal: "2819900" tax: "225239" discount: "281990" total: "2763149" grand_total: "2763149" grand_total_tax: "225239" fee: null credit: "0" credit_to_balance: "0" balance: "2763149" earnings: null currency_code: USD adjusted_totals: subtotal: "2537910" tax: "225239" total: "2763149" grand_total: "2763149" grand_total_tax: "225239" fee: "0" retained_fee: "0" earnings: "0" currency_code: USD payout_totals: null adjusted_payout_totals: null line_items: - id: txnitm_01hv8vzz0sjdj6grvpxyyjsmvf price_id: pri_01gsz91wy9k1yn7kx82aafwvea quantity: 50 totals: subtotal: "2500000" tax: "199687" discount: "250000" total: "2449687" product: id: pro_01gsz4vmqbjk3x4vvtafffd540 name: AeroEdit Enterprise description: The ultimate solution for organizations, featuring all Pro capabilities plus multi-user support, advanced data storage capabilities, plus personalized onboarding, dedicated account management, and the ability to pay via invoice. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/Ws808ziTS76a6YbnMkiK_enterprise.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: true route_planning: true sso: true suggested_addons: [] upgrade_description: Ready to reach new heights? Upgrade to enterprise to unlock single sign-on, payment by invoice, and dedicated account management. status: active created_at: "2023-02-23T12:44:34.923Z" updated_at: "2024-04-05T15:58:28.309Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "50000" tax: "3994" discount: "5000" total: "48994" proration: null - id: txnitm_01hv8vzz0sjdj6grvpy1fzm46f price_id: pri_01gsz96z29d88jrmsf2ztbfgjg quantity: 1 totals: subtotal: "300000" tax: "23962" discount: "30000" total: "293962" product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "300000" tax: "23962" discount: "30000" total: "293962" proration: null - id: txnitm_01hv8vzz0sjdj6grvpy6g84gyw price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "1590" discount: "1990" total: "19500" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "19900" tax: "1590" discount: "1990" total: "19500" proration: null payments: [] checkout: url: null meta: request_id: ba7c3eb9-e88d-4239-be61-a47b8aceab66 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Transactions externalDocs: url: https://developer.paddle.com/api-reference/transactions/update-transaction description: Update a transaction requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/UpdateTransaction" examples: Update a transaction (200): summary: Update a transaction (200) value: discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 items: - quantity: 50 price_id: pri_01gsz91wy9k1yn7kx82aafwvea - quantity: 1 price_id: pri_01gsz96z29d88jrmsf2ztbfgjg - quantity: 1 price_id: pri_01gsz98e27ak2tyhexptwc58yk x-permissions: - transaction.write /transactions/preview: post: operationId: preview-transaction-create summary: Preview a transaction description: |- Previews a transaction without creating a transaction entity. Typically used for creating more advanced, dynamic pricing pages where users can build their own plans. Consider using [the preview prices operation](https://developer.paddle.com/api-reference/pricing-preview/preview-prices) for simpler pricing pages. You can provide location information when previewing a transaction. You must provide this if you want Paddle to calculate tax or [automatically localize prices](https://developer.paddle.com/build/products/offer-localized-pricing). You can provide one of: * `customer_ip_address`: Paddle fetches location using the IP address to calculate totals. * `address`: Paddle uses the country and ZIP code (where supplied) to calculate totals. * `customer_id`, `address_id`, `business_id`: Paddle uses existing customer data to calculate totals. Typically used for logged-in customers. When supplying items, you can exclude items from the total calculation using the `include_in_totals` boolean. By default, recurring items with trials are considered to have a zero charge when previewing. Set `ignore_trials` to `true` to ignore trial periods against prices for transaction preview calculations. If successful, your response includes the data you sent with a `details` object that includes totals for the supplied prices. Transaction previews don't create transactions, so no `id` is returned. parameters: [] responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/TransactionPreview" meta: $ref: "#/components/schemas/Meta" examples: Preview a transaction (200): summary: Preview a transaction (200) value: data: customer_id: null address_id: null business_id: null currency_code: USD discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 address: postal_code: "" country_code: US customer_ip_address: null items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke description: Monthly type: standard name: Monthly (per seat) product_id: pro_01gsz4t5hdjse780zja8vvr7jg billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 999 status: active created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" import_meta: null quantity: 20 proration: null include_in_totals: true - price: id: pri_01h1vjfevh5etwq3rb416a23h2 description: Monthly type: standard name: Monthly (recurring addon) product_id: pro_01h1vjes1y163xfj1rh1tkfb65 billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" import_meta: null quantity: 1 proration: null include_in_totals: true - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null include_in_totals: false details: tax_rates_used: - tax_rate: "0" totals: subtotal: "70000" discount: "7000" tax: "0" total: "63000" totals: subtotal: "70000" tax: "0" discount: "7000" total: "63000" grand_total: "63000" grand_total_tax: "0" fee: null credit: "0" credit_to_balance: "0" balance: "63000" earnings: null currency_code: USD line_items: - price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 20 totals: subtotal: "60000" tax: "0" discount: "6000" total: "54000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null tax_rate: "0" unit_totals: subtotal: "3000" tax: "0" discount: "300" total: "2700" proration: null - price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "0" discount: "1000" total: "9000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null tax_rate: "0" unit_totals: subtotal: "10000" tax: "0" discount: "1000" total: "9000" proration: null - price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "0" discount: "1990" total: "17910" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0" unit_totals: subtotal: "19900" tax: "0" discount: "1990" total: "17910" proration: null ignore_trials: false available_payment_methods: - apple_pay - card - paypal - google_pay meta: request_id: eb3d6481-6799-4e30-8676-0dc96a356182 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Transactions externalDocs: url: https://developer.paddle.com/api-reference/transactions/preview-transaction description: Preview a transaction requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TransactionPreviewCreate" examples: Preview a transaction (200): summary: Preview a transaction (200) value: items: - quantity: 20 price_id: pri_01gsz8x8sawmvhz1pv30nge1ke - quantity: 1 price_id: pri_01h1vjfevh5etwq3rb416a23h2 - quantity: 1 price_id: pri_01gsz98e27ak2tyhexptwc58yk include_in_totals: false discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 address: country_code: US currency_code: USD x-permissions: - transaction.read /transactions/{transaction_id}/revise: post: operationId: revise-transaction summary: Revise customer information on a billed or completed transaction description: |- Revises customer information for a billed or completed transaction. Revise a transaction to rectify incorrect customer, address, or business information on invoice documents generated by Paddle. You can revise transaction details that don't impact the tax rates on a transaction. This includes: * Customer name * Business name and tax or VAT number (`tax_identifier`) * Address details, apart from the country You can't remove a valid tax or VAT number, only replace it with another valid one. If a valid tax or VAT number is added, Paddle automatically creates an adjustment to refund any tax where applicable. Transactions can only be revised once. If successful, your response includes a copy of the transaction entity. [Get a transaction](https://developer.paddle.com/api-reference/transactions/get-transaction) using the `include` parameter with the `customer`, `address`, and `business` values to see the revised customer information. Only the customer information for this transaction is updated. The related customer, address, and business entities aren't updated. parameters: - $ref: "#/components/parameters/TransactionIdPathParam" responses: "200": description: The request has succeeded. headers: Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: type: object required: - data - meta properties: data: $ref: "#/components/schemas/Transaction" meta: $ref: "#/components/schemas/Meta" examples: Revise a transaction (200): summary: Revise a transaction (200) value: data: id: txn_01hv8wptq8987qeep44cyrewp9 status: completed customer_id: ctm_01hv8wt8nffez4p2t6typn4a5j address_id: add_01hv8wt8ny8ms5vtm71bj8vcdd business_id: null custom_data: null origin: web collection_mode: automatic subscription_id: sub_01hv8x29kz0t586xy6zn1a62ny invoice_id: inv_01hv8x29nsh54c2pgt0hnq0zkx invoice_number: 325-10566 billing_details: null billing_period: starts_at: "2024-04-12T10:18:47.635628Z" ends_at: "2024-05-12T10:18:47.635628Z" currency_code: USD discount_id: null created_at: "2024-04-12T10:12:33.2014Z" updated_at: "2024-07-26T08:46:00.746349Z" billed_at: "2024-04-12T10:18:48.294633Z" revised_at: "2024-07-26T08:46:00.746349Z" items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke description: Monthly type: standard name: Monthly (per seat) product_id: pro_01gsz4t5hdjse780zja8vvr7jg billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "3000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 999 status: active created_at: "2023-02-23T13:55:22.538367Z" updated_at: "2024-04-11T13:54:52.254748Z" import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 description: Monthly type: standard name: Monthly (recurring addon) product_id: pro_01h1vjes1y163xfj1rh1tkfb65 billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "10000" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 100 status: active created_at: "2023-06-01T13:31:12.625056Z" updated_at: "2024-04-09T07:23:00.907834Z" import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk description: One-time addon type: standard name: One-time addon product_id: pro_01gsz97mq9pa4fkyy0wqenepkz billing_cycle: null trial_period: null tax_mode: account_setting unit_price: amount: "19900" currency_code: USD unit_price_overrides: [] custom_data: null quantity: minimum: 1 maximum: 1 status: active created_at: "2023-02-23T14:01:28.391712Z" updated_at: "2024-04-09T07:23:10.921392Z" import_meta: null quantity: 1 proration: null details: tax_rates_used: - tax_rate: "0.08875" totals: subtotal: "59900" discount: "0" tax: "5315" total: "65215" totals: subtotal: "59900" tax: "5315" discount: "0" total: "65215" grand_total: "65215" grand_total_tax: "5315" fee: "3311" credit: "0" credit_to_balance: "0" balance: "0" earnings: "56589" currency_code: USD adjusted_totals: subtotal: "59900" tax: "5315" total: "65215" grand_total: "65215" grand_total_tax: "5315" fee: "3311" earnings: "56589" currency_code: USD retained_fee: "0" payout_totals: subtotal: "59900" discount: "0" tax: "5315" total: "65215" credit: "0" credit_to_balance: "0" balance: "0" grand_total: "65215" grand_total_tax: "5315" fee: "3311" earnings: "56589" currency_code: USD exchange_rate: "1" fee_rate: "0.05" adjusted_payout_totals: subtotal: "59900" tax: "5315" total: "65215" fee: "3311" retained_fee: "0" chargeback_fee: amount: "0" original: null earnings: "56589" currency_code: USD exchange_rate: "1" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 totals: subtotal: "30000" tax: "2662" discount: "0" total: "32662" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "3000" tax: "266" discount: "0" total: "3266" proration: null - id: txnitm_01hv8wt98jahpbm1t1v1sd067y price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "10000" tax: "887" discount: "0" total: "10887" proration: null - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. type: standard tax_category: standard image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png custom_data: null status: active created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" import_meta: null tax_rate: "0.08875" unit_totals: subtotal: "19900" tax: "1766" discount: "0" total: "21666" proration: null payments: - payment_attempt_id: 937640dd-e3dc-40df-a16c-bb75aafd8f71 stored_payment_method_id: 281ff2ca-8550-42b9-bf39-15948e7de62d payment_method_id: paymtd_01hv8x1tpjfnttxddw73xnqx6s amount: "65215" status: captured error_code: null method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "3184" expiry_month: 1 expiry_year: 2025 cardholder_name: Michael McGovern paypal: null created_at: "2024-04-12T10:18:33.579142Z" captured_at: "2024-04-12T10:18:47.635628Z" - payment_attempt_id: 8f72cfa6-26b4-4a57-91dc-8f2708f7822d stored_payment_method_id: a78ece50-356f-4e0c-b72d-ad5368b0a0d9 payment_method_id: paymtd_01hv8wx2mka7dfsqjjsxh1ne7z amount: "65215" status: error error_code: declined method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "0002" expiry_month: 1 expiry_year: 2025 cardholder_name: Michael McGovern paypal: null created_at: "2024-04-12T10:15:57.888183Z" captured_at: null checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wptq8987qeep44cyrewp9 meta: request_id: d6186f6a-70f7-4f1c-a65a-f790f940cf6e default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Transactions externalDocs: url: https://developer.paddle.com/api-reference/transactions/revise-transaction description: Revise a transaction requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TransactionRevise" examples: Revise a transaction (200): summary: Revise a transaction (200) value: customer: name: Sam Miller business: tax_identifier: AB0123456789 address: first_line: 3811 Ditmars Blvd x-permissions: - transaction.write /transactions/{transaction_id}/invoice: get: operationId: get-transaction-invoice summary: Get a PDF invoice for a transaction description: |- Returns a link to an invoice PDF for a transaction. Invoice PDFs are available for both automatically and manually-collected transactions: * The PDF for manually-collected transactions includes payment terms, purchase order number, and notes for your customer. It's a demand for payment from your customer. It's available for transactions that are `billed` or `completed`. * The PDF for automatically-collected transactions lets your customer know that payment was taken successfully. Customers may require this for for tax-reporting purposes. It's available for transactions that are `completed`. Invoice PDFs aren't available for zero-value transactions. The link returned is not a permanent link. It expires after an hour. parameters: - $ref: "#/components/parameters/TransactionIdPathParam" - $ref: "#/components/parameters/GetInvoicePdfParams" responses: "200": description: The request has succeeded. headers: Expires: required: true description: Date and time when this resource expires. schema: type: string Request-Id: required: true schema: $ref: "#/components/schemas/RequestId" content: application/json: schema: $ref: "#/components/schemas/GetInvoicePdfResponse" examples: Get a PDF invoice for a transaction (200): summary: Get a PDF invoice for a transaction (200) value: data: url: https://paddle-production-invoice-service-pdfs.s3.amazonaws.com/invoices/10889/e01ae945-9e6d-4208-a0ba-83b107e06657/invoice_325-10650_DX-ChatApp.pdf meta: request_id: 126c131a-258a-482b-b4a9-9ffca5126539 default: description: An unexpected error response. content: application/json: schema: $ref: "#/components/schemas/ErrorResponse" tags: - Transactions externalDocs: url: https://developer.paddle.com/api-reference/transactions/get-invoice-pdf description: Get a PDF invoice for a transaction x-permissions: - transaction.read security: - BearerAuth: [] components: parameters: FilterIdParam: name: id in: query required: false description: Return only the IDs specified. Use a comma-separated list to get multiple entities. schema: type: array items: type: string explode: false PaginationParams.after: name: after in: query required: false description: Return entities after the specified Paddle ID when working with paginated endpoints. Used in the `meta.pagination.next` URL in responses for list operations. schema: type: string explode: false PaginationParams.per_page: name: per_page in: query required: false description: |- Set how many entities are returned per page. Paddle returns the maximum number of results if a number greater than the maximum is requested. Check `meta.pagination.per_page` in the response to see how many were returned. Default: `50`; Maximum: `200`. schema: type: integer maximum: 200 default: 50 explode: false ListAddressesQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false DefaultStatusQuery: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/StatusQuery" default: - active explode: false ListAddressesQueryParams.search: name: search in: query required: false description: Return entities that match a search query. Searches all fields except `status`, `created_at`, and `updated_at`. schema: type: string maxLength: 100 explode: false CustomerIdPathParam: name: customer_id in: path required: true description: Paddle ID of the customer entity to work with. schema: $ref: "#/components/schemas/CustomerId" SkipCountHeader: name: Skip-Count in: header required: false description: Set to `true` to skip the count query on list operations. When set, `meta.pagination.estimated_total` returns `-1` instead of an exact count. schema: type: string AddressIdPathParam: name: address_id in: path required: true description: Paddle ID of the address entity to work with. schema: type: string ListAdjustmentsQueryParams.action: name: action in: query required: false description: Return entities for the specified action. Use a comma-separated list to specify multiple action values. schema: type: array items: $ref: "#/components/schemas/AdjustmentActionQuery" title: AdjustmentActionQuery explode: false ListAdjustmentsQueryParams.customer_id: name: customer_id in: query required: false description: Return entities related to the specified customer. Use a comma-separated list to specify multiple customer IDs. schema: type: array items: type: string explode: false ListAdjustmentsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ListAdjustmentsQueryParams.per_page: name: per_page in: query required: false description: |- Set how many entities are returned per page. Paddle returns the maximum number of results if a number greater than the maximum is requested. Check `meta.pagination.per_page` in the response to see how many were returned. Default: `10`; Maximum: `50`. schema: type: integer maximum: 50 default: 10 explode: false ListAdjustmentsQueryParams.status: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/AdjustmentStatusQuery" explode: false ListAdjustmentsQueryParams.subscription_id: name: subscription_id in: query required: false description: Return entities related to the specified subscription. Use a comma-separated list to specify multiple subscription IDs. schema: type: array items: type: string explode: false ListAdjustmentsQueryParams.transaction_id: name: transaction_id in: query required: false description: Return entities related to the specified transaction. Use a comma-separated list to specify multiple transaction IDs. schema: type: array items: type: string explode: false AdjustmentIdPathParam: name: adjustment_id in: path required: true description: Paddle ID of the adjustment entity to work with. schema: type: string GetCreditNoteParams: name: disposition in: query required: false description: |- Determine whether the generated URL should download the PDF as an attachment saved locally, or open it inline in the browser. Default: `attachment`. schema: $ref: "#/components/schemas/Disposition" default: attachment explode: false ListBusinessesQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ListBusinessesQueryParams.search: name: search in: query required: false description: Return entities that match a search query. Searches all fields, including contacts, except `status`, `created_at`, and `updated_at`. schema: type: string maxLength: 100 explode: false BusinessIdPathParam: name: business_id in: path required: true description: Paddle ID of the business entity to work with. schema: type: string ListCheckoutDomainsQueryParams.domain: name: domain in: query required: false description: Filter results to include the specified fully qualified domain name (FQDN), its ancestors, and any of its subdomains. For example, if you provide `app.example.com`, the results include `app.example.com`, `example.com` and any subdomains such as `cool.app.example.com`. schema: type: string explode: false ListCheckoutDomainsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`, `created_at`, and `updated_at`. schema: type: string default: id[DESC] explode: false ListCheckoutDomainsQueryParams.status: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/CheckoutDomainApprovalStatusQuery" explode: false DomainIdPathParam: name: domain_id in: path required: true description: Paddle ID of the checkout domain entity to work with. schema: type: string ListClientTokensQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ListClientTokensQueryParams.status: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/ClientTokensStatusQuery" default: - active explode: false ClientTokenIdPathParam: name: client_token_id in: path required: true description: Paddle ID of the client-side token entity. schema: type: string ListCustomersQueryParams.email: name: email in: query required: false description: Return entities that exactly match the specified email address. Use a comma-separated list to specify multiple email addresses. Recommended for precise matching of email addresses. schema: type: array items: type: string maxItems: 100 explode: false ListCustomersQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ListCustomersQueryParams.search: name: search in: query required: false description: Return entities that match a search query. Searches `id`, `name`, and `email` fields. Use the `email` query parameter for precise matching of email addresses. schema: type: string maxLength: 100 explode: false ListCreditBalancesQueryParams: name: currency_code in: query required: false description: Return entities that match the currency code. Use a comma-separated list to specify multiple currency codes. schema: type: array items: type: string explode: false ListDiscountGroupsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `created_at` and `id`. schema: type: string default: id[DESC] explode: false DiscountGroupIdPathParam: name: discount_group_id in: path required: true description: Paddle ID of the discount group entity to work with. schema: type: string pattern: ^dsg_[a-z\d]{26}$ DiscountIncludeQuery: name: include in: query required: false description: Include related entities in the response. Use a comma-separated list to specify multiple entities. schema: type: array items: $ref: "#/components/schemas/DiscountIncludeEnum" explode: false ListDiscountsQueryParams.code: name: code in: query required: false description: Return entities that match the discount code. Use a comma-separated list to specify multiple discount codes. schema: type: array items: type: string explode: false ListDiscountsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `created_at` and `id`. schema: type: string default: id[DESC] explode: false DiscountStatusQuery: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/DiscountStatusQueryEnum" default: - active explode: false DiscountModeQuery: name: mode in: query required: false description: Return entities that match the specified mode. schema: $ref: "#/components/schemas/DiscountModeQueryEnum" explode: false ListDiscountsQueryParams.discount_group_id: name: discount_group_id in: query required: false description: Return entities related to the specified discount group. Use a comma-separated list to specify multiple discount group IDs. schema: type: array items: type: string explode: false DiscountIdPathParam: name: discount_id in: path required: true description: Paddle ID of the discount entity to work with. schema: type: string pattern: ^dsc_[a-z\d]{26}(?:@dscrev_[a-z\d]{26})?$ ListEventsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id` (for `event_id`). schema: type: string default: id[DESC] explode: false ListEventsQueryParams.event_type: name: event_type in: query required: false description: Return events that match the specified event type. Use a comma-separated list to specify multiple event types. schema: type: array items: $ref: "#/components/schemas/EventTypeName" explode: false MetricsQueryParams.from: name: from in: query required: true description: Return data from a specific date. Pass an RFC 3339 full-date string. Interpreted at 00:00 UTC. Must be before or the same as `to`. schema: type: string format: date explode: false MetricsQueryParams.to: name: to in: query required: true description: Return data up to a specific date. Pass an RFC 3339 full-date string. Interpreted as 00:00 UTC. Must be after or the same as `from`. schema: type: string format: date explode: false ListNotificationSettingsQueryParams.per_page: name: per_page in: query required: false description: |- Set how many entities are returned per page. Paddle returns the maximum number of results if a number greater than the maximum is requested. Check `meta.pagination.per_page` in the response to see how many were returned. Default: `200`; Maximum: `200`. schema: type: integer maximum: 200 default: 200 explode: false ListNotificationSettingsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ListNotificationSettingsQueryParams.active: name: active in: query required: false description: Determine whether returned entities are active (`true`) or not (`false`). schema: type: boolean explode: false ListNotificationSettingsQueryParams.traffic_source: name: traffic_source in: query required: false description: Return entities that match the specified traffic source. schema: $ref: "#/components/schemas/NotificationSettingTrafficSource" explode: false NotificationSettingIdPathParam: name: notification_setting_id in: path required: true description: Paddle ID of the notification setting entity (notification destination) to work with. schema: type: string ListNotificationsQueryParams.notification_setting_id: name: notification_setting_id in: query required: false description: Return entities related to the specified notification destination. Use a comma-separated list to specify multiple notification destination IDs. schema: type: array items: type: string explode: false ListNotificationsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ListNotificationsQueryParams.search: name: search in: query required: false description: Return entities that match a search query. Searches `id` and `type` fields. schema: type: string maxLength: 100 explode: false NotificationStatusQuery: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/NotificationStatusQueryEnum" explode: false ListNotificationsQueryParams.filter: name: filter in: query required: false description: Return entities that contain the Paddle ID specified. Pass a transaction, customer, or subscription ID. schema: type: string explode: false ListNotificationsQueryParams.to: name: to in: query required: false description: Return entities up to a specific time. Pass an RFC 3339 datetime string. schema: type: string explode: false ListNotificationsQueryParams.from: name: from in: query required: false description: Return entities from a specific time. Pass an RFC 3339 datetime string. schema: type: string explode: false NotificationIdPathParam: name: notification_id in: path required: true description: Paddle ID of the notification entity to work with. schema: type: string ListCustomerPaymentMethodsQueryParams.address_id: name: address_id in: query required: false description: Return entities related to the specified address. Use a comma-separated list to specify multiple address IDs. schema: type: array items: type: string explode: false ListCustomerPaymentMethodsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ListCustomerPaymentMethodsQueryParams.supports_checkout: name: supports_checkout in: query required: false description: Return entities that support being presented at checkout (`true`) or not (`false`). schema: type: boolean explode: false PaymentMethodIdPathParam: name: payment_method_id in: path required: true description: Paddle ID of the payment method entity to work with. schema: type: string PriceListIncludeQuery: name: include in: query required: false description: Include related entities in the response. schema: type: array items: $ref: "#/components/schemas/PriceListIncludeEnum" explode: false ListPricesQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `billing_cycle.frequency`, `billing_cycle.interval`, `id`, `product_id`, `quantity.maximum`, `quantity.minimum`, `status`, `tax_mode`, `unit_price.amount`, and `unit_price.currency_code`. schema: type: string default: id[DESC] explode: false ListPricesQueryParams.product_id: name: product_id in: query required: false description: Return entities related to the specified product. Use a comma-separated list to specify multiple product IDs. schema: type: array items: type: string explode: false ListPricesQueryParams.recurring: name: recurring in: query required: false description: Determine whether returned entities are for recurring prices (`true`) or one-time prices (`false`). schema: type: boolean explode: false ListPricesQueryParams.price_billing_cycle_interval: name: billing_cycle.interval in: query required: false description: Return entities where the price billing cycle interval matches this value. schema: $ref: "#/components/schemas/DurationInterval" explode: false ListPricesQueryParams.price_billing_cycle_frequency: name: billing_cycle.frequency in: query required: false description: Return entities where the price billing cycle frequency matches this value. schema: type: integer minimum: 1 explode: false CatalogTypeQuery: name: type in: query required: false description: Return items that match the specified type. schema: $ref: "#/components/schemas/CatalogTypeQueryEnum" explode: false PriceIncludeQuery: name: include in: query required: false description: Include related entities in the response. schema: type: array items: $ref: "#/components/schemas/PriceIncludeEnum" explode: false PriceIdPathParam: name: price_id in: path required: true description: Paddle ID of the price entity to work with. schema: type: string ProductIncludeQuery: name: include in: query required: false description: Include related entities in the response. Use a comma-separated list to specify multiple entities. schema: type: array items: $ref: "#/components/schemas/ProductIncludeEnum" explode: false ListProductsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `created_at`, `custom_data`, `description`, `id`, `image_url`, `name`, `status`, `tax_category`, and `updated_at`. schema: type: string default: id[DESC] explode: false TaxCategoryQuery: name: tax_category in: query required: false description: Return entities that match the specified tax category. Use a comma-separated list to specify multiple tax categories. schema: type: array items: $ref: "#/components/schemas/TaxCategoryQueryEnum" explode: false ProductIdPathParam: name: product_id in: path required: true description: Paddle ID of the product entity to work with. schema: type: string ListReportsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ReportStatusQuery: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/ReportStatusQueryEnum" explode: false ReportIdPathParam: name: report_id in: path required: true description: Paddle ID of the report entity. schema: type: string ListSimulationsQueryParams.notification_setting_id: name: notification_setting_id in: query required: false description: Return entities related to the specified notification destination. Use a comma-separated list to specify multiple notification destination IDs. schema: type: array items: type: string explode: false ListSimulationsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false SimulationIdPathParam: name: simulation_id in: path required: true description: Paddle ID of the simulation entity to work with. schema: type: string SimulationsRunIncludeQuery: name: include in: query required: false description: Include related entities in the response. schema: type: array items: $ref: "#/components/schemas/SimulationsRunIncludeEnum" explode: false ListSimulationRunsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false SimulationRunIdPathParam: name: simulation_run_id in: path required: true description: Paddle ID of the simulation run entity to work with. schema: type: string ListSimulationEventsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false SimulationEventIdPathParam: name: simulation_event_id in: path required: true description: Paddle ID of the simulation event entity to work with. schema: type: string ListSubscriptionHistoryQueryParams.action: name: action in: query required: false description: Return history entries that match the specified action. Use a comma-separated list to specify multiple action values. schema: type: array items: $ref: "#/components/schemas/SubscriptionHistoryActionQuery" explode: false ListSubscriptionHistoryQueryParams.source: name: source in: query required: false description: Return history entries that match the specified source. Use a comma-separated list to specify multiple source values. schema: type: array items: $ref: "#/components/schemas/SubscriptionHistorySourceQuery" explode: false ListSubscriptionHistoryQueryParams.actor_type: name: actor_type in: query required: false description: Return history entries that match the specified actor type. Use a comma-separated list to specify multiple actor type values. schema: type: array items: $ref: "#/components/schemas/SubscriptionHistoryActorTypeQuery" explode: false ListSubscriptionHistoryQueryParams.actor_id: name: actor_id in: query required: false description: Return history entries that match the specified actor ID. Use a comma-separated list to specify multiple actor ID values. Only applicable if `actor_type` is also selected. schema: type: array items: type: string explode: false ListSubscriptionHistoryQueryParams.reason: name: reason in: query required: false description: Return history entries that match the specified reason. Use a comma-separated list to specify multiple reason values. schema: type: array items: $ref: "#/components/schemas/SubscriptionHistoryReasonQuery" explode: false ListSubscriptionHistoryQueryParams.occurred_at: name: occurred_at in: query required: false description: Return entities that occurred at a specific time. Use `[LTE]` (less than or equal to) or `[GTE]` (greater than or equal to) operators with an RFC 3339 datetime string. For example, `occurred_at[LTE]=2023-04-18T17:03:26` or `occurred_at[GTE]=2023-04-18T17:03:26`. schema: type: string explode: false ListSubscriptionHistoryQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=occurred_at[DESC]`. Valid fields for ordering: `occurred_at`. schema: type: string default: occurred_at[DESC] explode: false ListSubscriptionsQueryParams.address_id: name: address_id in: query required: false description: Return entities related to the specified address. Use a comma-separated list to specify multiple address IDs. schema: type: array items: type: string explode: false ListSubscriptionsQueryParams.collection_mode: name: collection_mode in: query required: false description: Return entities that match the specified collection mode. schema: $ref: "#/components/schemas/CollectionModeQuery" explode: false ListSubscriptionsQueryParams.customer_id: name: customer_id in: query required: false description: Return entities related to the specified customer. Use a comma-separated list to specify multiple customer IDs. schema: type: array items: type: string explode: false ListSubscriptionsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `id`. schema: type: string default: id[DESC] explode: false ListSubscriptionsQueryParams.price_id: name: price_id in: query required: false description: Return entities related to the specified price. Use a comma-separated list to specify multiple price IDs. schema: type: array items: type: string explode: false ListSubscriptionsQueryParams.scheduled_change_action: name: scheduled_change_action in: query required: false description: Return subscriptions that have a scheduled change. Use a comma-separated list to specify multiple scheduled change actions. schema: type: array items: $ref: "#/components/schemas/ScheduledChangeActionQuery" explode: false ListSubscriptionsQueryParams.next_billed_at: name: next_billed_at in: query required: false description: | Return entities next billed at a specific time. Pass `null` to return entities with no next billing date. schema: anyOf: - type: array items: type: string - type: "null" explode: false ListSubscriptionsQueryParams.status: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/SubscriptionStatusQuery" explode: false SubscriptionIncludeQuery: name: include in: query required: false description: Include related entities in the response. Use a comma-separated list to specify multiple entities. schema: type: array items: $ref: "#/components/schemas/SubscriptionIncludeEnum" explode: false SubscriptionIdPathParam: name: subscription_id in: path required: true description: Paddle ID of the subscription entity to work with. schema: type: string TransactionIdPathParam: name: transaction_id in: path required: true description: Paddle ID of the transaction entity to work with. schema: type: string BaseTransactionParams: name: include in: query required: false description: Include related entities in the response. Use a comma-separated list to specify multiple entities. schema: type: array items: $ref: "#/components/schemas/TransactionIncludeQuery" explode: false ListTransactionsQueryParams.billed_at: name: billed_at in: query required: false description: Return entities billed at a specific time. Pass an RFC 3339 datetime string, or use `[LT]` (less than), `[LTE]` (less than or equal to), `[GT]` (greater than), or `[GTE]` (greater than or equal to) operators. For example, `billed_at=2023-04-18T17:03:26` or `billed_at[LT]=2023-04-18T17:03:26`. schema: type: string explode: false ListTransactionsQueryParams.collection_mode: name: collection_mode in: query required: false description: Return entities that match the specified collection mode. schema: $ref: "#/components/schemas/CollectionMode" x-enum-descriptions: automatic: description: Return entities where payment is collected automatically using a checkout or saved payment method. manual: description: Return entities where payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. x-enum-descriptions: automatic: description: Return entities where payment is collected automatically using a checkout or saved payment method. manual: description: Return entities where payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. explode: false ListTransactionsQueryParams.created_at: name: created_at in: query required: false description: Return entities created at a specific time. Pass an RFC 3339 datetime string, or use `[LT]` (less than), `[LTE]` (less than or equal to), `[GT]` (greater than), or `[GTE]` (greater than or equal to) operators. For example, `created_at=2023-04-18T17:03:26` or `created_at[LT]=2023-04-18T17:03:26`. schema: type: string explode: false ListTransactionsQueryParams.customer_id: name: customer_id in: query required: false description: Return entities related to the specified customer. Use a comma-separated list to specify multiple customer IDs. schema: type: array items: type: string explode: false ListTransactionsQueryParams.invoice_number: name: invoice_number in: query required: false description: Return entities that match the invoice number. Use a comma-separated list to specify multiple invoice numbers. schema: type: array items: type: string explode: false ListTransactionsQueryParams.origin: name: origin in: query required: false description: Return entities related to the specified origin. Use a comma-separated list to specify multiple origins. schema: type: array items: $ref: "#/components/schemas/TransactionOriginQuery" explode: false ListTransactionsQueryParams.order_by: name: order_by in: query required: false description: |- Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`. Valid fields for ordering: `billed_at`, `created_at`, `id`, and `updated_at`. schema: type: string default: id[DESC] explode: false ListTransactionsQueryParams.status: name: status in: query required: false description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. schema: type: array items: $ref: "#/components/schemas/TransactionStatusQuery" explode: false ListTransactionsQueryParams.subscription_id: name: subscription_id in: query required: false description: Return entities related to the specified subscription. Use a comma-separated list to specify multiple subscription IDs. Pass `null` to return entities that aren't related to any subscription. schema: anyOf: - type: array items: type: string - type: "null" explode: false ListTransactionsQueryParams.per_page: name: per_page in: query required: false description: |- Set how many entities are returned per page. Paddle returns the maximum number of results if a number greater than the maximum is requested. Check `meta.pagination.per_page` in the response to see how many were returned. Default: `30`; Maximum: `30`. schema: type: integer maximum: 30 default: 30 explode: false ListTransactionsQueryParams.updated_at: name: updated_at in: query required: false description: Return entities updated at a specific time. Pass an RFC 3339 datetime string, or use `[LT]` (less than), `[LTE]` (less than or equal to), `[GT]` (greater than), or `[GTE]` (greater than or equal to) operators. For example, `updated_at=2023-04-18T17:03:26` or `updated_at[LT]=2023-04-18T17:03:26`. schema: type: string explode: false GetInvoicePdfParams: name: disposition in: query required: false description: |- Determine whether the generated URL should download the PDF as an attachment saved locally, or open it inline in the browser. Default: `attachment`. schema: $ref: "#/components/schemas/Disposition" default: attachment explode: false PaddleSignatureHeader: name: paddle_signature in: header required: true description: Signature for this request. Use to verify that webhooks come from Paddle. schema: type: string title: Paddle Signature schemas: RequestId: type: string description: Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request. examples: - b15ec92e-8688-40d4-a04d-f44cbec93355 CreatedAt: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" readOnly: true UpdatedAt: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" readOnly: true CountryCodeSupported: type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia CountryCode: oneOf: - $ref: "#/components/schemas/CountryCodeSupported" Meta: type: object required: - request_id properties: request_id: type: string description: Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request. examples: - b15ec92e-8688-40d4-a04d-f44cbec93355 readOnly: true description: Information about this response. ErrorResponseType: type: string enum: - request_error - api_error description: Represents an error. x-enum-descriptions: request_error: description: Typically means there's a problem with the request that you made. api_error: description: Typically means there's a problem with the Paddle API. ErrorItem: type: object required: - field - message properties: field: type: string description: Field where validation error occurred. examples: - image_url - name message: type: string description: Information about how the field failed validation. examples: - must be a valid image - max length of 200 exceeded, provided value length 220 additionalProperties: false ApiError: type: object required: - type - code - detail - documentation_url properties: type: allOf: - $ref: "#/components/schemas/ErrorResponseType" description: Type of error encountered. code: type: string description: Short snake case string that describes this error. Use to search the error reference. examples: - not_found detail: type: string description: Some information about what went wrong as a human-readable string. examples: - Entity pro_01gsz97mq9pa4fkyy0wqenepkz not found documentation_url: type: string format: uri description: Link to a page in the error reference for this specific error. examples: - https://developer.paddle.com/errors/shared/not_found errors: type: array items: $ref: "#/components/schemas/ErrorItem" description: List of validation errors. Only returned when there's a validation error. description: Represents an error. title: Error additionalProperties: false ErrorResponse: type: object required: - error - meta properties: error: allOf: - $ref: "#/components/schemas/ApiError" description: Represents an error. meta: $ref: "#/components/schemas/Meta" description: |- An error occurred. Check the `type`, `code`, and `detail` in the returned error object for more information. Validation errors include an array of `errors` with information about which fields failed validation. title: ErrorResponse Name: type: string maxLength: 1024 description: Full name. title: Name Email: type: string minLength: 1 maxLength: 320 format: email description: Email address for this entity. title: Email address examples: - test@paddle.com AddressId: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf CustomData: type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 ExternalId: type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab readOnly: true ImportMeta: type: object required: - imported_from properties: external_id: anyOf: - $ref: "#/components/schemas/ExternalId" - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta AddressCreate: type: object required: - country_code properties: id: allOf: - $ref: "#/components/schemas/AddressId" readOnly: true description: anyOf: - type: string - type: "null" maxLength: 1024 description: Memorable description for this address. examples: - Paddle.com first_line: anyOf: - type: string - type: "null" maxLength: 1024 description: First line of this address. examples: - 3811 Ditmars Blvd second_line: anyOf: - type: string - type: "null" maxLength: 1024 description: Second line of this address. city: anyOf: - type: string - type: "null" maxLength: 200 description: City of this address. examples: - Astoria postal_code: anyOf: - type: string - type: "null" maxLength: 200 description: ZIP or postal code of this address. Required for some countries. examples: - 11105-1803 region: anyOf: - type: string - type: "null" maxLength: 200 description: State, county, or region of this address. examples: - NY country_code: allOf: - $ref: "#/components/schemas/CountryCode" description: Supported two-letter ISO 3166-1 alpha-2 country code for this address. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents an address entity when creating addresses. title: AddressCreate additionalProperties: false CustomerId: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys AddressDescription: type: string maxLength: 1024 description: Memorable description for this address. title: Description examples: - Paddle.com AddressFirstLine: type: string maxLength: 1024 description: First line of this address. title: First line examples: - 3811 Ditmars Blvd AddressSecondLine: type: string maxLength: 1024 description: Second line of this address. title: Second line AddressCity: type: string maxLength: 200 description: City of this address. title: City examples: - Astoria AddressPostalCode: type: string maxLength: 200 description: ZIP or postal code of this address. Required for some countries. title: Postal Code examples: - 11105-1803 AddressRegion: type: string maxLength: 200 description: State, county, or region of this address. title: Region examples: - NY Status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. Address: type: object required: - id - customer_id - description - first_line - second_line - city - postal_code - region - country_code - custom_data - status - created_at - updated_at - import_meta properties: id: allOf: - $ref: "#/components/schemas/AddressId" readOnly: true customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID for the customer related to this address, prefixed with `cus_`. readOnly: true description: anyOf: - $ref: "#/components/schemas/AddressDescription" - type: "null" first_line: anyOf: - $ref: "#/components/schemas/AddressFirstLine" - type: "null" second_line: anyOf: - $ref: "#/components/schemas/AddressSecondLine" - type: "null" city: anyOf: - $ref: "#/components/schemas/AddressCity" - type: "null" postal_code: anyOf: - $ref: "#/components/schemas/AddressPostalCode" - type: "null" region: anyOf: - $ref: "#/components/schemas/AddressRegion" - type: "null" country_code: allOf: - $ref: "#/components/schemas/CountryCode" description: Supported two-letter ISO 3166-1 alpha-2 country code for this address. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. status: allOf: - $ref: "#/components/schemas/Status" default: active created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" x-external-readOnly: true description: Represents an address entity. title: Address StatusQuery: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Return entities where the status is `active`. Returned entities can be used in Paddle and are returned when listing entities. archived: description: Return entities where the status is `archived`. Returned entities can't be used for billing and aren't returned when listing entities. Pagination: type: object required: - per_page - next - has_more properties: per_page: type: integer description: Number of entities per page for this response. May differ from the number requested if the requested number is greater than the maximum. readOnly: true next: type: string format: uri description: URL containing the query parameters of the original request, along with the `after` parameter that marks the starting point of the next page. Always returned, even if `has_more` is `false`. readOnly: true has_more: type: boolean description: Whether this response has another page. readOnly: true estimated_total: type: integer description: |- Estimated number of entities for this response. For datasets with 100,000 or fewer matches, returns the exact count. For datasets with more than 100,000 matches, returns `100001` to indicate that more than 100,000 entities match. Returns `-1` when counting is skipped or couldn't be calculated. Use `has_more` and `next` to page through all results rather than relying on `estimated_total` for an exact count. examples: - 999 readOnly: true description: Keys used for working with paginated results. PaginatedMeta: type: object required: - request_id - pagination properties: request_id: type: string description: Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request. examples: - b15ec92e-8688-40d4-a04d-f44cbec93355 readOnly: true pagination: $ref: "#/components/schemas/Pagination" description: Information about this response. AddressUpdate: type: object properties: description: anyOf: - type: string - type: "null" maxLength: 1024 description: Memorable description for this address. examples: - Paddle.com first_line: anyOf: - type: string - type: "null" maxLength: 1024 description: First line of this address. examples: - 3811 Ditmars Blvd second_line: anyOf: - type: string - type: "null" maxLength: 1024 description: Second line of this address. city: anyOf: - type: string - type: "null" maxLength: 200 description: City of this address. examples: - Astoria postal_code: anyOf: - type: string - type: "null" maxLength: 200 description: ZIP or postal code of this address. Required for some countries. examples: - 11105-1803 region: anyOf: - type: string - type: "null" maxLength: 200 description: State, county, or region of this address. examples: - NY country_code: allOf: - $ref: "#/components/schemas/CountryCode" description: Supported two-letter ISO 3166-1 alpha-2 country code for this address. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. status: $ref: "#/components/schemas/Status" description: Represents an address entity when updating addresses. title: AddressUpdate additionalProperties: false AdjustmentId: type: string pattern: ^adj_[a-z\d]{26}$ description: Unique Paddle ID for this adjustment entity, prefixed with `adj_`. title: Adjustment ID examples: - adj_01gya6twkp8y0tv1e19rsgst9m AdjustmentAction: type: string enum: - credit - refund - chargeback - chargeback_reverse - chargeback_warning - chargeback_warning_reverse - credit_reverse description: How this adjustment impacts the related transaction. title: AdjustmentAction x-enum-descriptions: credit: description: Credits some or all the related transaction. refund: description: Refunds some or all the related transaction. Must be approved by Paddle in most cases. chargeback: description: Chargeback for the related transaction. Automatically created by Paddle when a customer successfully disputes a charge. readOnly: true chargeback_reverse: description: Reversal of a chargeback for the related transaction. Automatically created by Paddle when Paddle contests a chargeback successfully. readOnly: true chargeback_warning: description: Warning of an upcoming chargeback for the related transaction. Automatically created by Paddle. readOnly: true chargeback_warning_reverse: description: Reversal of a chargeback warning for the related transaction. Automatically created by Paddle. readOnly: true credit_reverse: description: Reversal of a credit for the related transaction. Automatically created by Paddle. readOnly: true AdjustmentType: type: string enum: - full - partial description: Type of adjustment. Use `full` to adjust the grand total for the related transaction. Include an `items` array when creating a `partial` adjustment. If omitted, defaults to `partial`. title: AdjustmentType examples: - partial x-enum-descriptions: full: description: The grand total for the related transaction is adjusted. partial: description: Some line items for the related transaction are adjusted. Requires `items`. TransactionId: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c SubscriptionId: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 CurrencyCode: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand AdjustmentStatus: type: string enum: - pending_approval - approved - rejected - reversed description: |- Status of this adjustment. Set automatically by Paddle. Most refunds for live accounts are created with the status of `pending_approval` until reviewed by Paddle, but some are automatically approved. For sandbox accounts, Paddle automatically approves refunds every ten minutes. Credit adjustments don't require approval from Paddle, so they're created as `approved`. x-enum-descriptions: pending_approval: description: Adjustment is pending approval by Paddle. Most refunds for live accounts must be approved by Paddle. approved: description: Adjustment is approved. Default for credits. Set when Paddle approves a refund that was `pending_approval`. rejected: description: Adjustment has been rejected. Set when Paddle rejects a refund that was `pending_approval`. reversed: description: Adjustment has been reversed. Set by Paddle when a `chargeback_reversal` or `credit_reversal` adjustment is created for this adjustment. AdjustmentItemId: type: string pattern: ^adjitm_[a-z\d]{26}$ description: Unique Paddle ID for this adjustment item, prefixed with `adjitm_`. title: Adjustment item ID examples: - adjitm_01gw4rs4kex0prncwfne87ft8x TransactionItemId: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf AdjustmentItemType: type: string enum: - full - partial - tax - proration description: |- Type of adjustment for this transaction item. `tax` adjustments are automatically created by Paddle. Include `amount` when creating a `partial` adjustment. title: AdjustmentItemType examples: - full x-enum-descriptions: full: description: Full total for this transaction item is adjusted. partial: description: Part of this transaction item is adjusted. Include `amount` to specify the partial amount adjusted. tax: description: Tax for this transaction item is adjusted. Created automatically by Paddle. readOnly: true proration: description: A prorated amount for this transaction item is adjusted. Created automatically by Paddle in some cases when making changes to a subscription. deprecated: true readOnly: true Timestamp: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" TimePeriod: type: object required: - starts_at - ends_at properties: starts_at: allOf: - $ref: "#/components/schemas/Timestamp" format: date-time description: RFC 3339 datetime string of when this period starts. ends_at: allOf: - $ref: "#/components/schemas/Timestamp" format: date-time description: RFC 3339 datetime string of when this period ends. title: Time period TransactionItemProration: type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: allOf: - $ref: "#/components/schemas/TimePeriod" description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration readOnly: true AdjustmentItemTotals: type: object required: - subtotal - tax - total properties: subtotal: type: string description: Amount multiplied by quantity. examples: - "15000" readOnly: true tax: type: string description: Total tax on the subtotal. examples: - "1500" readOnly: true total: type: string description: Total after tax. examples: - "16500" readOnly: true description: Breakdown of the total for an adjustment item. title: Adjustment item totals readOnly: true AdjustmentTotals: type: object required: - subtotal - tax - total - fee - earnings - currency_code properties: subtotal: type: string description: Total before tax. For tax adjustments, the value is 0. examples: - "15000" readOnly: true tax: type: string description: Total tax on the subtotal. examples: - "1500" readOnly: true total: type: string description: Total after tax. examples: - "16500" readOnly: true fee: type: string description: Total fee taken by Paddle for this adjustment. examples: - "300" readOnly: true retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" readOnly: true earnings: type: string description: |- Total earnings. This is the subtotal minus the Paddle fee. For tax adjustments, this value is negative, which means a positive effect in the transaction earnings. This is because the fee is originally calculated from the transaction total, so if a tax adjustment is made, then the fee portion of it is returned. examples: - "14700" readOnly: true currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Three-letter ISO 4217 currency code used for this adjustment. examples: - USD readOnly: true description: Breakdown of the total for an adjustment. title: AdjustmentTotals readOnly: true CurrencyCodeChargeback: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for chargeback fees. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar AdjustmentPayoutTotalsChargebackFeeOriginal: type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: allOf: - $ref: "#/components/schemas/CurrencyCodeChargeback" description: Three-letter ISO 4217 currency code for the original chargeback fee. examples: - USD AdjustmentPayoutTotalsChargebackFee: type: object required: - amount - original properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - $ref: "#/components/schemas/AdjustmentPayoutTotalsChargebackFeeOriginal" - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. CurrencyCodePayout: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Supported three-letter ISO 4217 currency code for payouts from Paddle. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand AdjustmentPayoutTotals: type: object required: - subtotal - tax - total - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Adjustment total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the adjustment subtotal. examples: - "1500" total: type: string description: Adjustment total after tax. examples: - "16500" fee: type: string description: Adjusted Paddle fee. examples: - "300" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" readOnly: true chargeback_fee: allOf: - $ref: "#/components/schemas/AdjustmentPayoutTotalsChargebackFee" description: Chargeback fees incurred for this adjustment. Only returned when the adjustment `action` is `chargeback` or `chargeback_warning`. earnings: type: string description: Adjusted payout earnings. This is the adjustment total plus adjusted Paddle fees, excluding chargeback fees. examples: - "15120" currency_code: allOf: - $ref: "#/components/schemas/CurrencyCodePayout" description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. description: Breakdown of how this adjustment affects your payout balance. title: Payout totals (adjustment) AdjustmentTaxRatesUsedItemTotals: type: object required: - subtotal - tax - total properties: subtotal: type: string description: Total before tax. For tax adjustments, the value is 0. examples: - "15000" readOnly: true tax: type: string description: Total tax on the subtotal. examples: - "1500" readOnly: true total: type: string description: Total after tax. examples: - "16500" readOnly: true description: Calculated totals for the tax applied to this adjustment. title: AdjustmentTaxRateUsedTotals readOnly: true AdjustmentTaxRatesUsed: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this adjustment. examples: - "0.2" readOnly: true totals: allOf: - $ref: "#/components/schemas/AdjustmentTaxRatesUsedItemTotals" description: Calculated totals for the tax applied to this adjustment. title: AdjustmentTaxRateUsedTotals readOnly: true description: List of tax rates applied for this adjustment. title: AdjustmentTaxRateUsed Adjustment: type: object required: - id - action - type - transaction_id - subscription_id - customer_id - reason - currency_code - status - items - totals - payout_totals - tax_rates_used - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/AdjustmentId" readOnly: true action: $ref: "#/components/schemas/AdjustmentAction" type: allOf: - $ref: "#/components/schemas/AdjustmentType" default: partial transaction_id: allOf: - $ref: "#/components/schemas/TransactionId" description: Paddle ID of the transaction that this adjustment is for, prefixed with `txn_`. subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: |- Paddle ID for the subscription related to this adjustment, prefixed with `sub_`. Set automatically by Paddle based on the `subscription_id` of the related transaction. readOnly: true customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: |- Paddle ID for the customer related to this adjustment, prefixed with `ctm_`. Set automatically by Paddle based on the `customer_id` of the related transaction. readOnly: true reason: type: string description: Why this adjustment was created. Appears in the Paddle dashboard. Retained for record-keeping purposes. credit_applied_to_balance: anyOf: - type: boolean - type: "null" description: Whether this adjustment was applied to the related customer's credit balance. Only returned for `credit` adjustments. readOnly: true currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Three-letter ISO 4217 currency code for this adjustment. Set automatically by Paddle based on the `currency_code` of the related transaction. readOnly: true status: allOf: - $ref: "#/components/schemas/AdjustmentStatus" readOnly: true items: type: array items: type: object properties: id: allOf: - $ref: "#/components/schemas/AdjustmentItemId" description: Unique Paddle ID for this adjustment item, prefixed with `adjitm_`. readOnly: true item_id: allOf: - $ref: "#/components/schemas/TransactionItemId" description: Paddle ID for the transaction item that this adjustment item relates to, prefixed with `txnitm_`. type: allOf: - $ref: "#/components/schemas/AdjustmentItemType" description: |- Type of adjustment for this transaction item. `tax` adjustments are automatically created by Paddle. Include `amount` when creating a `partial` adjustment. amount: anyOf: - type: string - type: "null" description: Amount adjusted for this transaction item. Required when item `type` is `partial`. proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this adjustment item. readOnly: true totals: allOf: - $ref: "#/components/schemas/AdjustmentItemTotals" readOnly: true required: - id - item_id - type - amount - proration - totals minItems: 1 maxItems: 100 description: List of items on this adjustment. Required if `type` is not populated or set to `partial`. totals: allOf: - $ref: "#/components/schemas/AdjustmentTotals" readOnly: true payout_totals: anyOf: - $ref: "#/components/schemas/AdjustmentPayoutTotals" - type: "null" description: Breakdown of how this adjustment affects your payout balance. readOnly: true tax_rates_used: type: array items: $ref: "#/components/schemas/AdjustmentTaxRatesUsed" readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents an adjustment entity. title: Adjustment AdjustmentItem: type: object required: - item_id - type - amount - proration - totals properties: item_id: allOf: - $ref: "#/components/schemas/TransactionItemId" description: Paddle ID for the transaction item that this adjustment item relates to, prefixed with `txnitm_`. type: allOf: - $ref: "#/components/schemas/AdjustmentItemType" description: |- Type of adjustment for this transaction item. `tax` adjustments are automatically created by Paddle. Include `amount` when creating a `partial` adjustment. amount: anyOf: - type: string - type: "null" description: Amount adjusted for this transaction item. Required when item `type` is `partial`. proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this adjustment item. readOnly: true totals: allOf: - $ref: "#/components/schemas/AdjustmentItemTotals" readOnly: true title: Adjustment item AdjustmentActionQuery: type: string enum: - credit - refund - chargeback - chargeback_reverse - chargeback_warning - chargeback_warning_reverse - credit_reverse description: How this adjustment impacts the related transaction. title: AdjustmentActionQuery x-enum-descriptions: credit: description: Return adjustments where the action is `credit`. Returned adjustments are credits for some or all the related transaction. refund: description: Return adjustments where the action is `refund`. Returned adjustments are refunds for some or all the related transaction. chargeback: description: Return adjustments where the action is `chargeback`. Returned adjustments are chargebacks for their related transactions. chargeback_reverse: description: Return adjustments where the action is `chargeback_reverse`. chargeback_warning: description: Return adjustments where the action is `chargeback_warning`. Returned adjustments are warnings of upcoming chargebacks for their related transactions. chargeback_warning_reverse: description: Return adjustments where the action is `chargeback_warning_reverse`. Returned adjustments are reversals of chargeback warnings for their related transactions. credit_reverse: description: Return adjustments where the action is `credit_reverse`. AdjustmentStatusQuery: type: string enum: - pending_approval - approved - rejected - reversed description: Return entities that match the specified status. Use a comma-separated list to specify multiple status values. x-enum-descriptions: pending_approval: description: Return adjustments where the status is `pending_approval`. Returned adjustments are refunds that are pending approval by Paddle. approved: description: Return adjustments where the status is `approved`. Returned adjustments are credits or refunds that have been approved by Paddle. rejected: description: Return adjustments where the status is `rejected`. Returned adjustments are rejected refunds. reversed: description: Return adjustments where the status is `reversed`. AdjustmentTaxMode: type: string enum: - external - internal description: |- Whether the amounts to be adjusted are inclusive or exclusive of tax. If `internal`, adjusted amounts are considered to be inclusive of tax. If `external`, Paddle calculates the tax and adds it to the amounts provided. Only valid for adjustments where the `type` is `partial`. If omitted, defaults to `internal`. title: Adjustment Tax mode writeOnly: true x-enum-descriptions: external: description: Amounts are exclusive of tax. internal: description: Amounts are inclusive of tax. AdjustmentItemCreate: type: object required: - item_id - type properties: item_id: allOf: - $ref: "#/components/schemas/TransactionItemId" description: Paddle ID for the transaction item that this adjustment item relates to, prefixed with `txnitm_`. type: allOf: - $ref: "#/components/schemas/AdjustmentItemType" description: |- Type of adjustment for this transaction item. `tax` adjustments are automatically created by Paddle. Include `amount` when creating a `partial` adjustment. title: AdjustmentItemCreateType amount: anyOf: - type: string - type: "null" description: Amount adjusted for this transaction item. Required when item `type` is `partial`. title: Adjustment item create AdjustmentCreate: type: object required: - action - transaction_id - reason properties: action: $ref: "#/components/schemas/AdjustmentAction" type: allOf: - $ref: "#/components/schemas/AdjustmentType" default: partial tax_mode: allOf: - $ref: "#/components/schemas/AdjustmentTaxMode" writeOnly: true default: internal transaction_id: allOf: - $ref: "#/components/schemas/TransactionId" description: |- Paddle ID of the transaction that this adjustment is for, prefixed with `txn_`. Automatically-collected transactions must be `completed`; manually-collected transactions must have a status of `billed` or `past_due` You can't create an adjustment for a transaction that has a refund that's pending approval. reason: type: string pattern: .*\S.* description: Why this adjustment was created. Appears in the Paddle dashboard. Retained for recordkeeping purposes. items: anyOf: - type: array items: $ref: "#/components/schemas/AdjustmentItemCreate" - type: "null" description: List of transaction items to adjust. Required if `type` is not populated or set to `partial`. minItems: 1 maxItems: 100 description: Represents an adjustment entity when creating adjustments. title: AdjustmentCreate Disposition: type: string enum: - attachment - inline title: Disposition x-enum-descriptions: attachment: description: Generated URL downloads the PDF as an attachment. Browsers typically automatically save the PDF. inline: description: Generated URL displays the PDF inline in the browser. Browsers typically open the PDF in the current tab. AdjustmentCreditNotePdf: type: object required: - url properties: url: type: string description: URL of the requested resource. title: Adjustment credit note PDF ImageUrl: type: string minLength: 1 format: uri description: A URL to an image. title: Image Url BusinessId: type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj ContactsCreate: type: object required: - email properties: name: allOf: - $ref: "#/components/schemas/Name" description: Full name of this contact. email: allOf: - $ref: "#/components/schemas/Email" description: Email address for this contact. BusinessCreate: type: object required: - name properties: id: allOf: - $ref: "#/components/schemas/BusinessId" readOnly: true name: allOf: - $ref: "#/components/schemas/Name" minLength: 1 description: Name of this business. company_number: anyOf: - type: string - type: "null" maxLength: 1024 description: Company number for this business. examples: - "123456789" tax_identifier: anyOf: - type: string - type: "null" maxLength: 1024 description: Tax or VAT Number for this business. examples: - AB0123456789 contacts: anyOf: - type: array items: $ref: "#/components/schemas/ContactsCreate" - type: "null" description: List of contacts related to this business, typically used for sending invoices. uniqueItems: true maxItems: 100 custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a business entity when creating businesses. title: BusinessCreate additionalProperties: false BusinessContactsItem: type: object required: - name - email properties: name: allOf: - $ref: "#/components/schemas/Name" description: Full name of this contact. email: allOf: - $ref: "#/components/schemas/Email" description: Email address for this contact. Business: type: object required: - id - customer_id - name - company_number - tax_identifier - status - contacts - created_at - updated_at - custom_data - import_meta properties: id: allOf: - $ref: "#/components/schemas/BusinessId" readOnly: true customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID for the customer related to this business, prefixed with `cus_`. readOnly: true name: allOf: - $ref: "#/components/schemas/Name" minLength: 1 description: Name of this business. company_number: anyOf: - type: string - type: "null" maxLength: 1024 description: Company number for this business. examples: - "123456789" tax_identifier: anyOf: - type: string - type: "null" maxLength: 1024 description: Tax or VAT Number for this business. examples: - AB0123456789 status: allOf: - $ref: "#/components/schemas/Status" default: active contacts: type: array items: $ref: "#/components/schemas/BusinessContactsItem" maxItems: 100 description: List of contacts related to this business, typically used for sending invoices. uniqueItems: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a business entity. title: Business BusinessUpdate: type: object properties: name: allOf: - $ref: "#/components/schemas/Name" minLength: 1 description: Name of this business. company_number: anyOf: - type: string - type: "null" maxLength: 1024 description: Company number for this business. examples: - "123456789" tax_identifier: anyOf: - type: string - type: "null" maxLength: 1024 description: Tax or VAT Number for this business. examples: - AB0123456789 status: $ref: "#/components/schemas/Status" contacts: anyOf: - type: array items: $ref: "#/components/schemas/ContactsCreate" - type: "null" description: List of contacts related to this business, typically used for sending invoices. uniqueItems: true maxItems: 100 custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. description: Represents a business entity when updating businesses. title: BusinessUpdate additionalProperties: false CheckoutDomainApprovalStatusQuery: type: string enum: - pending_review - approved - rejected - in_review - action_required description: Status filter for listing checkout domains. x-enum-descriptions: pending_review: description: Return the checkout domains that are newly added and pending review. approved: description: Return the checkout domains that have been approved and can be used for checkouts. rejected: description: Return the checkout domains that have been rejected and cannot be used for checkouts. in_review: description: Return the checkout domains that are currently under review by Paddle. action_required: description: Return the checkout domains that were soft-declined and can be resubmitted by the seller. CheckoutDomainId: type: string pattern: ^chedom_[a-z\d]{26}$ description: Unique Paddle ID for this checkout domain entity, prefixed with `chedom_`. title: Checkout Domain ID examples: - chedom_01kkertpke0gv2t61p1pq8v23x CheckoutDomainHost: type: string format: hostname description: Checkout domain name. examples: - example.com CheckoutDomainApprovalStatus: type: string enum: - pending_review - approved - rejected - in_review - action_required description: Approval status of this checkout domain. Checkout domains are created as `pending_review`. It can be `pending_review`, `approved`, `rejected`, `in_review`, or `action_required`. x-enum-descriptions: pending_review: description: Domain is newly added and is pending review. readOnly: true approved: description: Domain has been approved and can be used for checkouts. readOnly: true rejected: description: Domain has been rejected and cannot be used for checkouts. readOnly: true in_review: description: Domain is currently under review by Paddle. readOnly: true action_required: description: Domain was soft-declined during review. The seller can resolve the issue and resubmit the domain. readOnly: true CheckoutDomainPaymentMethodVerificationStatus: type: string enum: - verified - unverified description: Payment method verification status for this checkout domain. x-enum-descriptions: verified: description: Payment method is verified for this checkout domain. unverified: description: Payment method isn't verified for this checkout domain. CheckoutDomainApplePayVerification: type: object required: - status properties: status: $ref: "#/components/schemas/CheckoutDomainPaymentMethodVerificationStatus" description: Apple Pay verification status for this checkout domain. CheckoutDomainPaymentMethodVerification: type: object required: - apple_pay properties: apple_pay: $ref: "#/components/schemas/CheckoutDomainApplePayVerification" description: Payment method verification status for this checkout domain. CheckoutDomain: type: object required: - id - domain - status - payment_method_verification - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/CheckoutDomainId" readOnly: true domain: $ref: "#/components/schemas/CheckoutDomainHost" status: allOf: - $ref: "#/components/schemas/CheckoutDomainApprovalStatus" x-external-readOnly: true payment_method_verification: allOf: - $ref: "#/components/schemas/CheckoutDomainPaymentMethodVerification" readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents a checkout domain entity. title: Checkout Domain CheckoutDomainPaymentMethod: type: string enum: - apple_pay description: Payment method to verify. Currently only apple_pay is supported. x-enum-descriptions: apple_pay: description: Verify this checkout domain for Apple Pay. CheckoutDomainVerifyPaymentMethod: type: object required: - payment_method properties: payment_method: $ref: "#/components/schemas/CheckoutDomainPaymentMethod" description: Represents a request to verify a payment method for a checkout domain. title: CheckoutDomainVerifyPaymentMethod additionalProperties: false ClientTokensStatusQuery: type: string enum: - active - revoked ClientTokenId: type: string pattern: ^ctkn_[a-z\d]{26}$ description: Unique Paddle ID for this client-side token entity, prefixed with `ctkn_`. title: ClientTokenID examples: - ctkn_01ghbkd0frb9k95cnhwd1bxpvk ClientTokenToken: type: string description: A client-side token, prefixed with `test` or `live` depending on the environment of your account. Pass as the `token` parameter when initializing Paddle.js to authenticate. title: ClientTokenToken ClientTokenName: type: string minLength: 1 maxLength: 150 description: Short name of this client-side token. Typically unique and human-identifiable. title: ClientTokenName ClientTokenDescription: type: string minLength: 1 maxLength: 500 description: Short description of this client-side token. Typically gives details about what the token is used for and where it's used. title: ClientTokenDescription ClientTokenStatus: type: string enum: - active - revoked description: Status of this client-side token. title: ClientTokenStatus x-enum-descriptions: active: description: Client-side token is active. The token can be used to authenticate Paddle.js. revoked: description: Client-side token is revoked. The token can't be used to authenticate Paddle.js. ClientToken: type: object required: - id - token - name - description - status - revoked_at - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/ClientTokenId" description: Unique Paddle ID for this client-side token entity, prefixed with `ctkn_`. Not used for Paddle.js authentication; use `token` for authentication. readOnly: true token: allOf: - $ref: "#/components/schemas/ClientTokenToken" readOnly: true name: $ref: "#/components/schemas/ClientTokenName" description: anyOf: - $ref: "#/components/schemas/ClientTokenDescription" - type: "null" status: allOf: - $ref: "#/components/schemas/ClientTokenStatus" default: active revoked_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this client-side token was revoked. `null` if not revoked. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents a client-side token entity. title: ClientSideToken additionalProperties: false ClientTokenCreate: type: object required: - name properties: name: $ref: "#/components/schemas/ClientTokenName" description: anyOf: - $ref: "#/components/schemas/ClientTokenDescription" - type: "null" description: Represents a client-side token entity. title: ClientSideTokenCreate additionalProperties: false ClientTokenUpdate: type: object required: - status properties: status: allOf: - $ref: "#/components/schemas/ClientTokenStatus" default: active description: Represents a client-side token entity. title: UpdateClientToken additionalProperties: false EventId: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x readOnly: true PublicTransactionOrigin: type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. TransactionOrigin: oneOf: - $ref: "#/components/schemas/PublicTransactionOrigin" CollectionMode: type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. DiscountId: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf DiscountCode: type: string minLength: 1 maxLength: 32 pattern: ^[a-zA-Z0-9]{1,32}$ description: Unique code that customers can use to apply this discount at checkout. Use letters and numbers only, up to 32 characters. Not case-sensitive. title: Discount code DurationInterval: type: string enum: - day - week - month - year Duration: type: object required: - interval - frequency properties: interval: allOf: - $ref: "#/components/schemas/DurationInterval" description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration BillingDetails: type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: allOf: - $ref: "#/components/schemas/Duration" description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details PriceId: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh ProductId: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz CatalogType: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. PriceName: type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name PriceRequiresPaymentMethod: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method MoneyOptionalCurrency: type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: $ref: "#/components/schemas/CurrencyCode" description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency PriceTrialUnitPriceOverride: type: object required: - country_codes - unit_price properties: country_codes: type: array items: $ref: "#/components/schemas/CountryCode" minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: allOf: - $ref: "#/components/schemas/MoneyOptionalCurrency" description: Override price. This price applies to customers located in the countries for this unit price override. description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false PriceTrialDuration: type: object required: - interval - frequency - requires_payment_method properties: interval: allOf: - $ref: "#/components/schemas/DurationInterval" description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: allOf: - $ref: "#/components/schemas/PriceRequiresPaymentMethod" default: true unit_price: anyOf: - $ref: "#/components/schemas/MoneyOptionalCurrency" - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: $ref: "#/components/schemas/PriceTrialUnitPriceOverride" maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration TaxMode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. Money: type: object required: - amount - currency_code properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: $ref: "#/components/schemas/CurrencyCode" description: A base representation of monetary value unformatted in the lowest denomination with currency code. title: Money UnitPriceOverride: type: object required: - country_codes - unit_price properties: country_codes: type: array items: $ref: "#/components/schemas/CountryCode" minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: allOf: - $ref: "#/components/schemas/Money" description: Override price. This price applies to customers located in the countries for this unit price override. title: Unit price override additionalProperties: false PriceQuantity: type: object required: - minimum - maximum properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 title: price_quantity examples: - minimum: 1 maximum: 100 Totals: type: object required: - subtotal - discount - tax - total properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" readOnly: true discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" readOnly: true tax: type: string description: Total tax on the subtotal. examples: - "1500" readOnly: true total: type: string description: Total after discount and tax. examples: - "16500" readOnly: true description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals readOnly: true TransactionDetailsTaxRatesUsedItem: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" readOnly: true totals: allOf: - $ref: "#/components/schemas/Totals" description: Calculated totals for the tax applied to this transaction. TransactionTotals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" readOnly: true discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" readOnly: true tax: type: string description: Total tax on the subtotal. examples: - "1500" readOnly: true total: type: string description: Total after discount and tax. examples: - "16500" readOnly: true credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" readOnly: true fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Three-letter ISO 4217 currency code of the currency used for this transaction. description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. TransactionTotalsAdjusted: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" readOnly: true fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" readOnly: true earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Three-letter ISO 4217 currency code of the currency used for this transaction. description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) readOnly: true CurrencyExchangeRate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" TransactionPayoutTotals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" readOnly: true fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: allOf: - $ref: "#/components/schemas/CurrencyCodePayout" description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. exchange_rate: allOf: - $ref: "#/components/schemas/CurrencyExchangeRate" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals readOnly: true TransactionPayoutTotalsAdjustedChargebackFeeOriginal: type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: allOf: - $ref: "#/components/schemas/CurrencyCodeChargeback" description: Three-letter ISO 4217 currency code for the original chargeback fee. examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. TransactionPayoutTotalsAdjustedChargebackFee: type: object required: - amount - original properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - $ref: "#/components/schemas/TransactionPayoutTotalsAdjustedChargebackFeeOriginal" - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. description: Details of any chargeback fees incurred for this transaction. TransactionPayoutTotalsAdjusted: type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" readOnly: true chargeback_fee: allOf: - $ref: "#/components/schemas/TransactionPayoutTotalsAdjustedChargebackFee" description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: allOf: - $ref: "#/components/schemas/CurrencyCodePayout" description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. exchange_rate: $ref: "#/components/schemas/CurrencyExchangeRate" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) readOnly: true ProductName: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name TaxCategory: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. EmptyString: type: string minLength: 0 maxLength: 0 title: Empty String Product: type: object required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/ProductId" readOnly: true name: $ref: "#/components/schemas/ProductName" description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard tax_category: $ref: "#/components/schemas/TaxCategory" image_url: anyOf: - $ref: "#/components/schemas/ImageUrl" - type: "null" - $ref: "#/components/schemas/EmptyString" description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. status: allOf: - $ref: "#/components/schemas/Status" default: active import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents a product entity. title: Product PaymentMethodId: type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 PaymentAttemptStatus: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. readOnly: true x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. ErrorCode: type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. TransactionPaymentMethodType: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. KoreaLocalUnderlyingPaymentMethodType: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type readOnly: true x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) KoreaLocalUnderlyingDetails: type: object required: - type properties: type: allOf: - $ref: "#/components/schemas/KoreaLocalUnderlyingPaymentMethodType" readOnly: true description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details UnderlyingDetails: type: object required: - korea_local properties: korea_local: anyOf: - $ref: "#/components/schemas/KoreaLocalUnderlyingDetails" - type: "null" readOnly: true description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true SouthKoreaLocalCardType: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). CardLast4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" SouthKoreaLocalCard: type: object properties: type: $ref: "#/components/schemas/SouthKoreaLocalCardType" last4: $ref: "#/components/schemas/CardLast4" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard CardType: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa CardExpiryMonth: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 CardExpiryYear: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 CardCardholderName: type: string description: The name on the card used to pay. title: Cardholder Name Card: type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: $ref: "#/components/schemas/CardType" last4: $ref: "#/components/schemas/CardLast4" expiry_month: $ref: "#/components/schemas/CardExpiryMonth" expiry_year: $ref: "#/components/schemas/CardExpiryYear" cardholder_name: $ref: "#/components/schemas/CardCardholderName" description: Card metadata title: Card TransactionPaypal: type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) MethodDetails: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: $ref: "#/components/schemas/TransactionPaymentMethodType" underlying_details: anyOf: - $ref: "#/components/schemas/UnderlyingDetails" - type: "null" deprecated: true readOnly: true south_korea_local_card: anyOf: - $ref: "#/components/schemas/SouthKoreaLocalCard" - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - $ref: "#/components/schemas/Card" - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - $ref: "#/components/schemas/TransactionPaypal" - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details TransactionPaymentAttempt: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - $ref: "#/components/schemas/PaymentMethodId" - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: $ref: "#/components/schemas/PaymentAttemptStatus" error_code: anyOf: - $ref: "#/components/schemas/ErrorCode" - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: $ref: "#/components/schemas/MethodDetails" created_at: $ref: "#/components/schemas/CreatedAt" captured_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt readOnly: true TransactionCheckout: type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout DiscountStatus: type: string enum: - active - archived description: Whether this entity can be used in Paddle. x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. expired: description: |- Discount has expired. Automatically set by Paddle when the `expires_at` date elapses. Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. readOnly: true used: description: |- Discount has reached the maximum amount of redemptions. Automatically set by Paddle when the `usage_limit` is reached. Used discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. readOnly: true DiscountType: type: string enum: - flat - flat_per_seat - percentage description: Type of discount. Determines how this discount impacts the checkout or transaction total. title: DiscountType x-enum-descriptions: flat: description: Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`. flat_per_seat: description: Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`. percentage: description: Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%. DiscountRestrictTo: type: string pattern: ^(pri|pro)_[a-z\d]{26}$ DiscountMode: type: string enum: - standard - custom description: Discount mode. Standard discounts are considered part of your catalog and are shown in the Paddle dashboard. title: DiscountMode x-enum-descriptions: custom: description: Non-catalog discount. Can be created via the API, or by Paddle for checkout recovery discounts. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard discount. Can be considered part of your catalog and reused across transactions and subscriptions easily. DiscountGroupId: type: string pattern: ^dsg_[a-z\d]{26}$ description: Unique Paddle ID for this discount group, prefixed with `dsg_`. title: Discount Group ID examples: - dsg_01js2gqehzccfkywgx1jk2mtsp CustomerPaymentMethodType: type: string enum: - alipay - apple_pay - blik - card - google_pay - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - payco - paypal - pix - samsung_pay - upi - wechat_pay description: Type of payment method saved. title: SavedPaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. kakao_pay: description: Kakao Pay, a popular payment method in South Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in South Korea. payco: description: Payco, a popular payment method in South Korea. paypal: description: PayPal. pix: description: Pix, popular in Brazil. samsung_pay: description: Samsung Pay, a popular payment method in South Korea. upi: description: Unified Payments Interface (UPI), popular in India. wechat_pay: description: WeChat Pay, a popular payment method in China. CustomerPaymentMethodOrigin: type: string enum: - saved_during_purchase - subscription - subscription_saved_during_purchase description: Describes how this payment method was saved. title: PaymentMethodOrigin x-enum-descriptions: saved_during_purchase: description: The customer chose to save this payment method while purchasing a one-time item. subscription: description: The customer purchased a subscription, so this payment method was saved for future purchases. subscription_saved_during_purchase: description: The customer chose to save the payment method when purchasing a subscription. SavedAt: type: string format: date-time description: RFC 3339 datetime string of when this entity was saved. Set automatically by Paddle. title: Saved at examples: - "2024-10-12T07:20:50.52Z" readOnly: true PaddleId: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this entity. title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf ReportStatus: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus readOnly: true x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. SubscriptionDiscountType: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. SubscriptionDiscount: type: object required: - id - starts_at - ends_at - type properties: id: $ref: "#/components/schemas/DiscountId" starts_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: $ref: "#/components/schemas/SubscriptionDiscountType" description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod SubscriptionScheduledChangeAction: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction readOnly: true x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. SubscriptionScheduledChange: type: object required: - action - effective_at - resume_at properties: action: allOf: - $ref: "#/components/schemas/SubscriptionScheduledChangeAction" description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction readOnly: true effective_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when this scheduled change takes effect. readOnly: true resume_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. readOnly: true description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change SubscriptionManagementUrls: type: object required: - update_payment_method - cancel properties: update_payment_method: anyOf: - type: string - type: "null" format: uri description: Link to the page for this subscription in the customer portal with the payment method update form pre-opened. Use as part of workflows to let customers update their payment details. `null` for manually-collected subscriptions. examples: - https://buyer-portal.paddle.com/subscriptions/sub_01gtewvbsyeqyhtp2vtc2mctq8/update-payment-method?token= cancel: type: string format: uri description: Link to the page for this subscription in the customer portal with the subscription cancellation form pre-opened. Use as part of cancel subscription workflows. examples: - https://buyer-portal.paddle.com/subscriptions/sub_01gtewvbsyeqyhtp2vtc2mctq8/cancel?token= description: |- Customer portal deep links for this subscription. Authenticated links are only returned when your API key has Customer portal session (Write) permission. For security, the `token` appended to authenticated links is temporary. You shouldn't store them. title: Subscription Management Urls readOnly: true ItemSubscriptionStatus: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus readOnly: true x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. Price: type: object required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/PriceId" readOnly: true product_id: allOf: - $ref: "#/components/schemas/ProductId" description: Paddle ID for the product that this price is for, prefixed with `pro_`. description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard name: anyOf: - $ref: "#/components/schemas/PriceName" - type: "null" billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - $ref: "#/components/schemas/PriceTrialDuration" - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: allOf: - $ref: "#/components/schemas/Status" default: active custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents a price entity. title: Price ItemSubscription: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: allOf: - $ref: "#/components/schemas/ItemSubscriptionStatus" description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus readOnly: true quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" description: RFC 3339 datetime string of when this item was added to this subscription. readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of when this item was last updated on this subscription. readOnly: true previously_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this item was last billed. readOnly: true next_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. readOnly: true trial_dates: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Trial dates for this item. readOnly: true price: allOf: - $ref: "#/components/schemas/Price" description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. readOnly: true product: allOf: - $ref: "#/components/schemas/Product" description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. readOnly: true description: Represents a subscription item. title: Subscription item TransactionPreviewDetailsTaxRatesUsedItem: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction preview. examples: - "0.2" readOnly: true totals: allOf: - $ref: "#/components/schemas/Totals" description: Calculated totals for the tax applied to this transaction preview. ProductPreview: type: object required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at properties: id: anyOf: - $ref: "#/components/schemas/ProductId" - type: "null" description: |- Unique Paddle ID for this product, prefixed with `pro_`. The value is null for custom products being previewed. readOnly: true name: $ref: "#/components/schemas/ProductName" description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard tax_category: $ref: "#/components/schemas/TaxCategory" image_url: anyOf: - $ref: "#/components/schemas/ImageUrl" - type: "null" - $ref: "#/components/schemas/EmptyString" description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. status: allOf: - $ref: "#/components/schemas/Status" default: active import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents a product (preview) entity. title: Product preview TransactionPreviewLineItem: type: object required: - price_id - quantity - tax_rate - unit_totals - totals - product - proration properties: price_id: anyOf: - $ref: "#/components/schemas/PriceId" - type: "null" description: |- Paddle ID for the price related to this transaction line item, prefixed with `pri_`. The value is null for custom prices being previewed. readOnly: true quantity: type: integer description: Quantity of this transaction line item. readOnly: true tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" readOnly: true unit_totals: allOf: - $ref: "#/components/schemas/Totals" description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). readOnly: true totals: allOf: - $ref: "#/components/schemas/Totals" readOnly: true product: allOf: - $ref: "#/components/schemas/ProductPreview" description: Related product entity for this transaction line item price. readOnly: true proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. description: Information about line items for this transaction preview. Different from transaction preview `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. title: Transaction line item (preview) TransactionPreviewDetails: type: object required: - tax_rates_used - totals - line_items properties: tax_rates_used: type: array items: $ref: "#/components/schemas/TransactionPreviewDetailsTaxRatesUsedItem" description: List of tax rates applied to this transaction preview. readOnly: true totals: allOf: - $ref: "#/components/schemas/TransactionTotals" description: Breakdown of the total for a transaction preview. `fee` and `earnings` always return `null` for transaction previews. line_items: type: array items: $ref: "#/components/schemas/TransactionPreviewLineItem" description: Information about line items for this transaction preview. Different from transaction preview `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction preview, including discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction preview. title: Transaction details (preview) readOnly: true AdjustmentPreview: type: object required: - transaction_id - items - totals properties: transaction_id: allOf: - $ref: "#/components/schemas/TransactionId" description: Paddle ID for this transaction entity that this adjustment relates to, prefixed with `txn_`. items: type: array items: $ref: "#/components/schemas/AdjustmentItem" maxItems: 100 description: List of transaction items that this adjustment is for. totals: allOf: - $ref: "#/components/schemas/AdjustmentTotals" description: Calculated totals for this adjustment. description: Represents an adjustment entity when previewing adjustments. title: AdjustmentPreview SubscriptionNextTransaction: type: object required: - billing_period - details - adjustments properties: billing_period: allOf: - $ref: "#/components/schemas/TimePeriod" description: Billing period for the next transaction. details: $ref: "#/components/schemas/TransactionPreviewDetails" adjustments: type: array items: $ref: "#/components/schemas/AdjustmentPreview" description: Preview of adjustments for the next transaction. description: Preview of the next transaction for this subscription. May include prorated charges that aren't yet billed and one-time charges. `null` if the subscription is scheduled to cancel or pause. title: Next transaction readOnly: true ImportMetaSubscription: type: object required: - imported_from properties: external_id: anyOf: - $ref: "#/components/schemas/ExternalId" - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for the subscription entity. `null` if this entity is not imported. title: ImportMetaSubscription SubscriptionConsentRequirementId: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf SubscriptionConsentRequirementType: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. SubscriptionConsentRequirementStatus: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. SubscriptionConsentRequirement: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: $ref: "#/components/schemas/SubscriptionConsentRequirementId" requirement: allOf: - $ref: "#/components/schemas/SubscriptionConsentRequirementType" description: Type of consent required for successful renewal. status: allOf: - $ref: "#/components/schemas/SubscriptionConsentRequirementStatus" description: Status of this consent requirement. created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true consent_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement CustomerCreate: type: object required: - email properties: id: allOf: - $ref: "#/components/schemas/CustomerId" readOnly: true name: anyOf: - $ref: "#/components/schemas/Name" - type: "null" description: Full name of this customer. Required when creating transactions where `collection_mode` is `manual` (invoices). email: allOf: - $ref: "#/components/schemas/Email" description: Email address for this customer. marketing_consent: type: boolean description: |- Whether this customer opted into marketing from you. `false` unless customers check the marketing consent box when using Paddle Checkout. Set automatically by Paddle. x-external-readOnly: true default: false custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. locale: type: string description: Valid IETF BCP 47 short form locale tag. If omitted, defaults to `en`. default: en import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a customer entity when creating customers. title: CustomerCreate additionalProperties: false Customer: type: object required: - id - name - email - marketing_consent - status - custom_data - locale - created_at - updated_at - import_meta properties: id: allOf: - $ref: "#/components/schemas/CustomerId" readOnly: true name: anyOf: - $ref: "#/components/schemas/Name" - type: "null" description: Full name of this customer. Required when creating transactions where `collection_mode` is `manual` (invoices). email: allOf: - $ref: "#/components/schemas/Email" description: Email address for this customer. marketing_consent: type: boolean description: |- Whether this customer opted into marketing from you. `false` unless customers check the marketing consent box when using Paddle Checkout. Set automatically by Paddle. x-external-readOnly: true default: false status: allOf: - $ref: "#/components/schemas/Status" default: active custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. locale: type: string description: Valid IETF BCP 47 short form locale tag. If omitted, defaults to `en`. default: en created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a customer entity. title: Customer TransactionStatus: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. readOnly: true ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. readOnly: true billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. readOnly: true completed: description: Transaction is fully paid and processed. readOnly: true canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. readOnly: true DocumentNumber: type: string description: Document number that is automatically generated by Paddle. examples: - 123-45678 readOnly: true TransactionItem: type: object required: - price - quantity - proration properties: price: allOf: - $ref: "#/components/schemas/Price" readOnly: true quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. readOnly: true title: TransactionItem TransactionDetailsLineItem: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: allOf: - $ref: "#/components/schemas/PriceId" description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. readOnly: true quantity: type: integer description: Quantity of this transaction line item. readOnly: true proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. readOnly: true tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" readOnly: true unit_totals: allOf: - $ref: "#/components/schemas/Totals" description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). readOnly: true totals: allOf: - $ref: "#/components/schemas/Totals" readOnly: true product: allOf: - $ref: "#/components/schemas/Product" description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. readOnly: true id: allOf: - $ref: "#/components/schemas/TransactionItemId" readOnly: true TransactionDetails: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: $ref: "#/components/schemas/TransactionDetailsTaxRatesUsedItem" description: List of tax rates applied for this transaction. readOnly: true totals: $ref: "#/components/schemas/TransactionTotals" adjusted_totals: $ref: "#/components/schemas/TransactionTotalsAdjusted" payout_totals: anyOf: - $ref: "#/components/schemas/TransactionPayoutTotals" - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - $ref: "#/components/schemas/TransactionPayoutTotalsAdjusted" - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: $ref: "#/components/schemas/TransactionDetailsLineItem" description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails readOnly: true Transaction: type: object required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at properties: id: allOf: - $ref: "#/components/schemas/TransactionId" readOnly: true status: $ref: "#/components/schemas/TransactionStatus" customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. origin: allOf: - $ref: "#/components/schemas/TransactionOrigin" description: Describes how this transaction was created. x-external-readOnly: true subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. x-external-readOnly: true invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 readOnly: true invoice_number: anyOf: - $ref: "#/components/schemas/DocumentNumber" - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. default: automatic discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - $ref: "#/components/schemas/BillingDetails" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: $ref: "#/components/schemas/TransactionItem" minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: allOf: - $ref: "#/components/schemas/TransactionDetails" readOnly: true payments: type: array items: $ref: "#/components/schemas/TransactionPaymentAttempt" description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. readOnly: true checkout: anyOf: - $ref: "#/components/schemas/TransactionCheckout" - type: "null" created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. readOnly: true revised_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. readOnly: true description: Represents a transaction entity. title: Transaction CustomerIncludes: type: object required: - id - name - email - marketing_consent - status - custom_data - locale - created_at - updated_at - import_meta properties: id: allOf: - $ref: "#/components/schemas/CustomerId" readOnly: true name: anyOf: - $ref: "#/components/schemas/Name" - type: "null" description: Full name of this customer. Required when creating transactions where `collection_mode` is `manual` (invoices). email: allOf: - $ref: "#/components/schemas/Email" description: Email address for this customer. marketing_consent: type: boolean description: |- Whether this customer opted into marketing from you. `false` unless customers check the marketing consent box when using Paddle Checkout. Set automatically by Paddle. x-external-readOnly: true default: false status: allOf: - $ref: "#/components/schemas/Status" default: active custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. locale: type: string description: Valid IETF BCP 47 short form locale tag. If omitted, defaults to `en`. default: en created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a customer entity with included entities. title: CustomerIncludes CustomerUpdate: type: object properties: name: anyOf: - $ref: "#/components/schemas/Name" - type: "null" description: Full name of this customer. Required when creating transactions where `collection_mode` is `manual` (invoices). email: allOf: - $ref: "#/components/schemas/Email" description: Email address for this customer. marketing_consent: type: boolean description: |- Whether this customer opted into marketing from you. `false` unless customers check the marketing consent box when using Paddle Checkout. Set automatically by Paddle. x-external-readOnly: true default: false status: $ref: "#/components/schemas/Status" custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. locale: type: string description: Valid IETF BCP 47 short form locale tag. default: en import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a customer entity when updating customers. title: CustomerUpdate additionalProperties: false CustomerBalance: type: object required: - available - reserved - used properties: available: type: string description: Total amount of credit available to use. examples: - "200" reserved: type: string description: Total amount of credit temporarily reserved for `billed` transactions. examples: - "400" used: type: string description: Total amount of credit used. examples: - "600" title: customer_balance CreditBalance: type: object required: - customer_id - currency_code - balance properties: customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID of the customer that this credit balance is for, prefixed with `ctm_`. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Three-letter ISO 4217 currency code for this credit balance. balance: allOf: - $ref: "#/components/schemas/CustomerBalance" description: Totals for this credit balance. Where a customer has more than one subscription in this currency with a credit balance, includes totals for all subscriptions. description: Represents a credit balance for a customer. title: credit_balance CustomerAuthToken: type: string description: Authentication token generated by Paddle for this customer. Pass to Paddle.js when opening a checkout to let customers work with saved payment methods. title: Customer Auth Token examples: - pca_01hstrngzv6v4ard25jgvywwqq_01hsgrwf0ev6gxm74bp0gebxas_o7scuiadqtvbtspkmbwfnyrvyrq3zig6 CustomerAuthenticationToken: type: object required: - customer_auth_token - expires_at properties: customer_auth_token: $ref: "#/components/schemas/CustomerAuthToken" expires_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when this customer authentication token expires. The token is no longer valid after this date. description: Represents a customer authentication token. title: Customer Authentication Token CustomerPortalSessionId: type: string pattern: ^cpls_[a-z\d]{26}$ description: Unique Paddle ID for this customer portal session entity, prefixed with `cpls_`. title: Customer Portal Session ID examples: - cpls_01h4ge9r64c22exjsx0fy8b48b CustomerPortalSessionUrlsGeneral: type: object required: - overview properties: overview: type: string description: Link to the overview page in the customer portal. examples: - https://customer-portal.paddle.com/cpl_01j7zbyqs3vah3aafp4jf62qaw?action=overview&token= description: Authenticated customer portal deep links that aren't associated with a specific entity. title: CustomerPortalSessionGeneralUrls additionalProperties: false CustomerPortalSessionUrlsSubscriptionsItem: type: object required: - id - cancel_subscription - update_subscription_payment_method properties: id: allOf: - $ref: "#/components/schemas/SubscriptionId" description: Paddle ID of the subscription that the authenticated customer portal deep links are for. cancel_subscription: type: string description: Link to the page for this subscription in the customer portal with the subscription cancellation form pre-opened. Use as part of cancel subscription workflows. examples: - https://customer-portal.paddle.com/cpl_01j7zbyqs3vah3aafp4jf62qaw?action=cancel_subscription&subscription_id=sub_01h04vsc0qhwtsbsxh3422wjs4&token= update_subscription_payment_method: type: string description: |- Link to the page for this subscription in the customer portal with the payment method update form pre-opened. Use as part of workflows to let customers update their payment details. If a manually-collected subscription, opens the overview page for this subscription. examples: - https://customer-portal.paddle.com/cpl_01j7zbyqs3vah3aafp4jf62qaw?action=update_subscription_payment_method&subscription_id=sub_01h04vsc0qhwtsbsxh3422wjs4&token= title: CustomerPortalSessionSubscriptionUrls additionalProperties: false CustomerPortalSessionUrls: type: object required: - general properties: general: allOf: - $ref: "#/components/schemas/CustomerPortalSessionUrlsGeneral" description: Authenticated customer portal deep links that aren't associated with a specific entity. title: CustomerPortalSessionGeneralUrls subscriptions: type: array items: $ref: "#/components/schemas/CustomerPortalSessionUrlsSubscriptionsItem" maxItems: 25 description: |- List of generated authenticated customer portal deep links for the subscriptions passed in the `subscription_ids` array in the request. If subscriptions are paused or canceled, links open the overview page for a subscription. Empty if no subscriptions passed in the request. description: Authenticated customer portal deep links. For security, the `token` appended to each link is temporary. You shouldn't store these links. title: CustomerPortalSessionUrls additionalProperties: false CustomerPortalSession: type: object required: - id - customer_id - urls - created_at properties: id: allOf: - $ref: "#/components/schemas/CustomerPortalSessionId" readOnly: true customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID of the customer that this customer portal sessions is for, prefixed with `ctm_`. urls: allOf: - $ref: "#/components/schemas/CustomerPortalSessionUrls" description: Authenticated customer portal deep links. For security, the `token` appended to each link is temporary. You shouldn't store these links. title: CustomerPortalSessionUrls created_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when this customer portal session was created. description: Represents a customer portal session. title: Customer Portal Session additionalProperties: false CustomerPortalSessionCreate: type: object properties: subscription_ids: type: array items: $ref: "#/components/schemas/SubscriptionId" maxItems: 25 description: List of subscriptions to create authenticated customer portal deep links for. uniqueItems: true description: Represents a customer portal session creation request. title: CustomerPortalSessionCreate additionalProperties: false DiscountGroup: type: object required: - id - name - status - created_at - updated_at - import_meta properties: id: allOf: - $ref: "#/components/schemas/DiscountGroupId" readOnly: true name: type: string minLength: 1 maxLength: 500 description: Unique name of this discount group, typically something short and memorable for categorization. Not shown to customers. status: $ref: "#/components/schemas/Status" created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a discount group entity. title: Discount Group DiscountGroupCreate: type: object required: - name properties: name: type: string minLength: 1 maxLength: 500 description: Name of this discount group, typically something short and memorable for categorization. Not shown to customers. description: Represents a discount group entity when creating discount groups. title: DiscountGroupCreate additionalProperties: false DiscountGroupUpdate: type: object properties: status: $ref: "#/components/schemas/Status" name: type: string minLength: 1 maxLength: 500 description: Name of this discount group, typically something short and memorable for categorization. Not shown to customers. description: Represents a discount group entity when updating discount groups. title: DiscountGroupUpdate additionalProperties: false DiscountCreate: type: object required: - description - type - amount properties: id: allOf: - $ref: "#/components/schemas/DiscountId" readOnly: true status: allOf: - $ref: "#/components/schemas/DiscountStatus" readOnly: true default: active description: type: string minLength: 1 maxLength: 500 description: Short description for this discount for your reference. Not shown to customers. enabled_for_checkout: type: boolean description: Whether this discount can be redeemed by customers at checkout (`true`) or not (`false`). default: true code: anyOf: - $ref: "#/components/schemas/DiscountCode" - type: "null" description: |- Unique code that customers can use to redeem this discount at checkout. Use letters and numbers only, up to 32 characters. Not case-sensitive. If omitted and `enabled_for_checkout` is `true`, Paddle generates a random 10-character code. type: allOf: - $ref: "#/components/schemas/DiscountType" description: Type of discount. Determines how this discount impacts the checkout or transaction total. title: DiscountType mode: allOf: - $ref: "#/components/schemas/DiscountMode" description: Discount mode. Standard discounts are considered part of your catalog and are shown in the Paddle dashboard. If omitted, defaults to `standard`. default: standard amount: type: string description: Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. Required where discount type is `flat` or `flat_per_seat`. recur: type: boolean description: Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). If omitted, defaults to `false`. default: false maximum_recurring_intervals: anyOf: - type: integer - type: "null" minimum: 1 description: |- Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever. Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. usage_limit: anyOf: - type: integer - type: "null" minimum: 1 description: |- Maximum number of times this discount can be redeemed. This is an overall limit for this discount, rather than a per-customer limit. `null` if this discount can be redeemed an unlimited amount of times. Paddle counts a usage as a redemption on a checkout, transaction, or the initial application against a subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. restrict_to: anyOf: - type: array items: $ref: "#/components/schemas/DiscountRestrictTo" - type: "null" description: Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. uniqueItems: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: |- RFC 3339 datetime string of when this discount expires. Discount can no longer be redeemed after this date has elapsed. `null` if this discount can be redeemed forever. Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. times_used: type: integer description: |- How many times this discount has been redeemed. Automatically incremented by Paddle. Paddle counts a usage as a redemption on a checkout, transaction, or subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true discount_group_id: anyOf: - $ref: "#/components/schemas/DiscountGroupId" - type: "null" description: Paddle ID for the discount group related to this discount, prefixed with `dsg_`. `null` if not in a discount group. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a discount entity when creating discounts. title: DiscountCreate additionalProperties: false DiscountIncludeEnum: type: string enum: - discount_group x-enum-permissions: discount_group: - discount.read x-enum-descriptions: discount_group: description: Include an object for the discount group entity related to this discount. DiscountStatusQueryEnum: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Return discounts where the status is `active`. Returned discounts are active and can be used. archived: description: Return discounts where the status is `archived`. Returned discounts are archived, so can't be used. DiscountModeQueryEnum: type: string enum: - standard - custom title: DiscountMode x-enum-descriptions: custom: description: Return entities where the mode is `custom`. Returned entities can be considered non-catalog. They can be created via the API, or by Paddle for checkout recovery discounts. Not shown in the Paddle dashboard. standard: description: Return entities where the mode is `standard`. Returned entities can be considered part of your catalog and reused across transactions and subscriptions easily. DiscountIncludes: type: object required: - id - status - description - enabled_for_checkout - code - type - mode - amount - currency_code - recur - maximum_recurring_intervals - usage_limit - restrict_to - expires_at - custom_data - times_used - discount_group_id - created_at - updated_at - import_meta properties: id: allOf: - $ref: "#/components/schemas/DiscountId" readOnly: true status: allOf: - $ref: "#/components/schemas/DiscountStatus" default: active description: type: string minLength: 1 maxLength: 500 description: Short description for this discount for your reference. Not shown to customers. enabled_for_checkout: type: boolean description: Whether this discount can be redeemed by customers at checkout (`true`) or not (`false`). default: true code: anyOf: - $ref: "#/components/schemas/DiscountCode" - type: "null" description: Unique code that customers can use to redeem this discount at checkout. Not case-sensitive. type: $ref: "#/components/schemas/DiscountType" mode: allOf: - $ref: "#/components/schemas/DiscountMode" default: standard amount: type: string description: Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. Required where discount type is `flat` or `flat_per_seat`. recur: type: boolean description: Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). default: false maximum_recurring_intervals: anyOf: - type: integer - type: "null" minimum: 1 description: |- Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever. Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. usage_limit: anyOf: - type: integer - type: "null" minimum: 1 description: |- Maximum number of times this discount can be redeemed. This is an overall limit for this discount, rather than a per-customer limit. `null` if this discount can be redeemed an unlimited amount of times. Paddle counts a usage as a redemption on a checkout, transaction, or the initial application against a subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. restrict_to: anyOf: - type: array items: $ref: "#/components/schemas/DiscountRestrictTo" - type: "null" description: Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. uniqueItems: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: |- RFC 3339 datetime string of when this discount expires. Discount can no longer be redeemed after this date has elapsed. `null` if this discount can be redeemed forever. Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" times_used: type: integer description: |- How many times this discount has been redeemed. Automatically incremented by Paddle. Paddle counts a usage as a redemption on a checkout, transaction, or subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. readOnly: true discount_group_id: anyOf: - $ref: "#/components/schemas/DiscountGroupId" - type: "null" description: Paddle ID for the discount group related to this discount, prefixed with `dsg_`. `null` if not in a discount group. created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true discount_group: allOf: - $ref: "#/components/schemas/DiscountGroup" description: Discount group for this discount. Returned when the `include` parameter is used with the `discount_group` value and the discount has a `discount_group_id`. x-included: true description: Represents a discount entity with included entities. title: DiscountIncludes Discount: type: object required: - id - status - description - enabled_for_checkout - code - type - mode - amount - currency_code - recur - maximum_recurring_intervals - usage_limit - restrict_to - expires_at - custom_data - times_used - discount_group_id - created_at - updated_at - import_meta properties: id: allOf: - $ref: "#/components/schemas/DiscountId" readOnly: true status: allOf: - $ref: "#/components/schemas/DiscountStatus" default: active description: type: string minLength: 1 maxLength: 500 description: Short description for this discount for your reference. Not shown to customers. enabled_for_checkout: type: boolean description: Whether this discount can be redeemed by customers at checkout (`true`) or not (`false`). default: true code: anyOf: - $ref: "#/components/schemas/DiscountCode" - type: "null" description: Unique code that customers can use to redeem this discount at checkout. Not case-sensitive. type: $ref: "#/components/schemas/DiscountType" mode: allOf: - $ref: "#/components/schemas/DiscountMode" default: standard amount: type: string description: Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. Required where discount type is `flat` or `flat_per_seat`. recur: type: boolean description: Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). default: false maximum_recurring_intervals: anyOf: - type: integer - type: "null" minimum: 1 description: |- Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever. Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. usage_limit: anyOf: - type: integer - type: "null" minimum: 1 description: |- Maximum number of times this discount can be redeemed. This is an overall limit for this discount, rather than a per-customer limit. `null` if this discount can be redeemed an unlimited amount of times. Paddle counts a usage as a redemption on a checkout, transaction, or the initial application against a subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. restrict_to: anyOf: - type: array items: $ref: "#/components/schemas/DiscountRestrictTo" - type: "null" description: Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. uniqueItems: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: |- RFC 3339 datetime string of when this discount expires. Discount can no longer be redeemed after this date has elapsed. `null` if this discount can be redeemed forever. Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" times_used: type: integer description: |- How many times this discount has been redeemed. Automatically incremented by Paddle. Paddle counts a usage as a redemption on a checkout, transaction, or subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. readOnly: true discount_group_id: anyOf: - $ref: "#/components/schemas/DiscountGroupId" - type: "null" description: Paddle ID for the discount group related to this discount, prefixed with `dsg_`. `null` if not in a discount group. created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a discount entity. title: Discount DiscountUpdate: type: object properties: id: allOf: - $ref: "#/components/schemas/DiscountId" readOnly: true status: $ref: "#/components/schemas/DiscountStatus" description: type: string minLength: 1 maxLength: 500 description: Short description for this discount for your reference. Not shown to customers. enabled_for_checkout: type: boolean description: Whether this discount can be redeemed by customers at checkout (`true`) or not (`false`). default: true code: anyOf: - $ref: "#/components/schemas/DiscountCode" - type: "null" description: Unique code that customers can use to redeem this discount at checkout. Not case-sensitive. type: allOf: - $ref: "#/components/schemas/DiscountType" description: Type of discount. Determines how this discount impacts the checkout or transaction total. title: DiscountType mode: allOf: - $ref: "#/components/schemas/DiscountMode" description: Discount mode. Standard discounts are considered part of your catalog and are shown in the Paddle dashboard. default: standard amount: type: string description: Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. Required where discount type is `flat` or `flat_per_seat`. recur: type: boolean description: Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). default: false maximum_recurring_intervals: anyOf: - type: integer - type: "null" minimum: 1 description: |- Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever. Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. usage_limit: anyOf: - type: integer - type: "null" minimum: 1 description: |- Maximum number of times this discount can be redeemed. This is an overall limit for this discount, rather than a per-customer limit. `null` if this discount can be redeemed an unlimited amount of times. Paddle counts a usage as a redemption on a checkout, transaction, or the initial application against a subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. restrict_to: anyOf: - type: array items: $ref: "#/components/schemas/DiscountRestrictTo" - type: "null" description: Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. uniqueItems: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: |- RFC 3339 datetime string of when this discount expires. Discount can no longer be redeemed after this date has elapsed. `null` if this discount can be redeemed forever. Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. times_used: type: integer description: |- How many times this discount has been redeemed. Automatically incremented by Paddle. Paddle counts a usage as a redemption on a checkout, transaction, or subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true discount_group_id: anyOf: - $ref: "#/components/schemas/DiscountGroupId" - type: "null" description: Paddle ID for the discount group related to this discount, prefixed with `dsg_`. `null` if not in a discount group. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a discount entity when updating discounts. title: UpdateDiscount additionalProperties: false EventTypeName: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. EventType: type: object required: - name - description - group - available_versions properties: name: allOf: - $ref: "#/components/schemas/EventTypeName" readOnly: true description: type: string description: Short description of this event type. examples: - The subscription.created alert is fired when a new subscription is created. readOnly: true group: type: string description: Group for this event type. Typically the entity that this event relates to. examples: - Subscriptions readOnly: true available_versions: type: array items: type: integer description: List of API versions that this event type supports. readOnly: true description: Represents an event type. title: Event type EventData: type: object unevaluatedProperties: {} description: New or changed entity. readOnly: true Event: type: object required: - event_id - event_type - occurred_at - data properties: event_id: allOf: - $ref: "#/components/schemas/EventId" readOnly: true event_type: allOf: - $ref: "#/components/schemas/EventTypeName" readOnly: true occurred_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when this event occurred. readOnly: true data: allOf: - $ref: "#/components/schemas/EventData" description: New or changed entity. readOnly: true description: Represents an event entity. title: Event AddressPreview: type: object required: - postal_code - country_code properties: postal_code: anyOf: - type: string - type: "null" maxLength: 200 description: ZIP or postal code of this address. Include for more accurate tax calculations. examples: - 11105-1803 country_code: allOf: - $ref: "#/components/schemas/CountryCode" description: Supported two-letter ISO 3166-1 alpha-2 country code for this address. description: Represents an address entity when previewing addresses. title: AddressPreview TransactionPriceCreateWithProductId: type: object required: - description - unit_price - product_id properties: description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. name: anyOf: - type: string - type: "null" minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. If omitted, defaults to 1-100. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. product_id: allOf: - $ref: "#/components/schemas/ProductId" description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: TransactionPriceCreateWithProductID IpAddressResponseData: type: object required: - ipv4_cidrs properties: ipv4_cidrs: type: array items: type: string description: List of Paddle IPv4 CIDRs. title: IPAddress IpAddressResponse: type: object required: - data - meta properties: data: $ref: "#/components/schemas/IpAddressResponseData" meta: $ref: "#/components/schemas/Meta" MetricsInterval: type: string enum: - day description: Time granularity for the datapoints. MetricsTimeseriesMonthlyRecurringRevenueDatapoint: type: object required: - timestamp - amount properties: timestamp: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for this datapoint. amount: type: string description: Amount for this datapoint in the lowest denomination for a currency. examples: - "391308" description: A single datapoint in a monthly recurring revenue metrics timeseries. Used by both MRR and MRR change endpoints. title: MetricsTimeseriesMonthlyRecurringRevenueDatapoint MetricsTimeseriesMonthlyRecurringRevenue: type: object required: - currency_code - timeseries - starts_at - ends_at - interval - updated_at properties: currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code for this metric. Returned in your primary balance currency, converted using the exchange rate at the time of each transaction. If your primary balance currency changes, amounts continue to be returned in the previous currency until the next payout period begins. timeseries: type: array items: $ref: "#/components/schemas/MetricsTimeseriesMonthlyRecurringRevenueDatapoint" description: Array of datapoints. Empty if `to` and `from` are the same. starts_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries starts (inclusive). ends_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries ends (exclusive). interval: allOf: - $ref: "#/components/schemas/MetricsInterval" description: Granularity for this timeseries. updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of the last successful data refresh for this metric. description: Monthly recurring revenue metrics timeseries with amount for each datapoint. title: MetricsTimeseriesMonthlyRecurringRevenue MetricsTimeseriesActiveSubscribersDatapoint: type: object required: - timestamp - count properties: timestamp: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for this datapoint. count: type: integer description: Number of active subscribers for this datapoint. examples: - 20 description: A single datapoint in an active subscribers metrics timeseries. title: MetricsTimeseriesActiveSubscribersDatapoint MetricsTimeseriesActiveSubscribers: type: object required: - timeseries - starts_at - ends_at - interval - updated_at properties: timeseries: type: array items: $ref: "#/components/schemas/MetricsTimeseriesActiveSubscribersDatapoint" description: Array of datapoints. Empty if `to` and `from` are the same. starts_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries starts (inclusive). ends_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries ends (exclusive). interval: allOf: - $ref: "#/components/schemas/MetricsInterval" description: Granularity for this timeseries. updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of the last successful data refresh for this metric. description: Active subscribers metrics timeseries with count for each datapoint. title: MetricsTimeseriesActiveSubscribers MetricsTimeseriesMonthlyRecurringRevenueChange: type: object required: - currency_code - timeseries - starts_at - ends_at - interval - updated_at properties: currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code for this metric. Returned in your primary balance currency, converted using the exchange rate at the time of each transaction. If your primary balance currency changes, amounts continue to be returned in the previous currency until the next payout period begins. timeseries: type: array items: $ref: "#/components/schemas/MetricsTimeseriesMonthlyRecurringRevenueDatapoint" description: Array of datapoints. Empty if `to` and `from` are the same. starts_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries starts (inclusive). ends_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries ends (exclusive). interval: allOf: - $ref: "#/components/schemas/MetricsInterval" description: Granularity for this timeseries. updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of the last successful data refresh for this metric. description: Monthly recurring revenue change metrics timeseries with amount for each datapoint. title: MetricsTimeseriesMonthlyRecurringRevenueChange MetricsTimeseriesRevenueDatapoint: type: object required: - timestamp - amount - count properties: timestamp: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for this datapoint. amount: type: string description: Amount for this datapoint in the lowest denomination for a currency. examples: - "391308" count: type: integer description: Number of transactions for this datapoint. examples: - 65 description: A single datapoint in a revenue metrics timeseries. title: MetricsTimeseriesRevenueDatapoint MetricsTimeseriesRevenue: type: object required: - currency_code - timeseries - starts_at - ends_at - interval - updated_at properties: currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code for this metric. Returned in your primary balance currency, converted using the current exchange rate. timeseries: type: array items: $ref: "#/components/schemas/MetricsTimeseriesRevenueDatapoint" description: Array of datapoints. Empty if `to` and `from` are the same. starts_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries starts (inclusive). ends_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries ends (exclusive). interval: allOf: - $ref: "#/components/schemas/MetricsInterval" description: Granularity for this timeseries. updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of the last successful data refresh for this metric. description: Revenue metrics timeseries with amount and transaction count for each datapoint. title: MetricsTimeseriesRevenue MetricsTimeseriesRefundsDatapoint: type: object required: - timestamp - amount properties: timestamp: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for this datapoint. amount: type: string description: Amount for this datapoint in the lowest denomination for a currency. examples: - "0" description: A single datapoint in a refund metrics timeseries. title: MetricsTimeseriesRefundsDatapoint MetricsTimeseriesRefunds: type: object required: - currency_code - timeseries - starts_at - ends_at - interval - updated_at properties: currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code for this metric. Returned in your primary balance currency, converted using the current exchange rate. timeseries: type: array items: $ref: "#/components/schemas/MetricsTimeseriesRefundsDatapoint" description: Array of datapoints. Empty if `to` and `from` are the same. starts_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries starts (inclusive). ends_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries ends (exclusive). interval: allOf: - $ref: "#/components/schemas/MetricsInterval" description: Granularity for this timeseries. updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of the last successful data refresh for this metric. description: Refund metrics timeseries with amount for each datapoint. title: MetricsTimeseriesRefunds MetricsTimeseriesChargebacksDatapoint: type: object required: - timestamp - count properties: timestamp: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for this datapoint. count: type: integer description: Number of chargebacks for this datapoint. examples: - 0 description: A single datapoint in a chargeback metrics timeseries. title: MetricsTimeseriesChargebacksDatapoint MetricsTimeseriesChargebacks: type: object required: - timeseries - starts_at - ends_at - interval - updated_at properties: timeseries: type: array items: $ref: "#/components/schemas/MetricsTimeseriesChargebacksDatapoint" description: Array of datapoints. Empty if `to` and `from` are the same. starts_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries starts (inclusive). ends_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries ends (exclusive). interval: allOf: - $ref: "#/components/schemas/MetricsInterval" description: Granularity for this timeseries. updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of the last successful data refresh for this metric. description: Chargeback metrics timeseries with count for each datapoint. title: MetricsTimeseriesChargebacks MetricsTimeseriesCheckoutConversionDatapoint: type: object required: - timestamp - count - completed_count - rate properties: timestamp: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for this datapoint. count: type: integer description: Total number of checkouts in this period. examples: - 151 completed_count: type: integer description: Number of checkouts completed in this period. examples: - 5 rate: type: string description: Conversion rate for this period. Calculated by dividing `completed_count` by `count`. examples: - "0.033113" description: A single datapoint in a checkout conversion metrics timeseries. title: MetricsTimeseriesCheckoutConversionDatapoint MetricsTimeseriesCheckoutConversion: type: object required: - timeseries - starts_at - ends_at - interval - updated_at properties: timeseries: type: array items: $ref: "#/components/schemas/MetricsTimeseriesCheckoutConversionDatapoint" description: Array of datapoints. Empty if `to` and `from` are the same. starts_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries starts (inclusive). ends_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string for when this timeseries ends (exclusive). interval: allOf: - $ref: "#/components/schemas/MetricsInterval" description: Granularity for this timeseries. updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of the last successful data refresh for this metric. description: Checkout conversion metrics timeseries with count, completed count, and rate for each datapoint. title: MetricsTimeseriesCheckoutConversion NotificationSettingTrafficSource: type: string enum: - platform - simulation - all description: Whether Paddle should deliver real platform events, simulation events or both to this notification destination. x-enum-descriptions: platform: description: Deliver real platform events to this notification destination. simulation: description: Deliver simulation events to this notification destination. all: description: Deliver platform and simulation events to this notification destination. NotificationSettingId: type: string pattern: ^ntfset_[a-z\d]{26}$ description: Unique Paddle ID for this notification setting, prefixed with `ntfset_`. title: Notification setting ID examples: - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 readOnly: true NotificationSettingType: type: string enum: - email - url description: Where notifications should be sent for this destination. title: NotificationSettingType x-enum-descriptions: email: description: Deliver to an email address. url: description: Deliver to a webhook endpoint. NotificationSetting: type: object required: - id - description - type - destination - active - api_version - include_sensitive_fields - subscribed_events - endpoint_secret_key - traffic_source properties: id: allOf: - $ref: "#/components/schemas/NotificationSettingId" readOnly: true description: type: string minLength: 1 maxLength: 500 description: Short description for this notification destination. Shown in the Paddle dashboard. type: allOf: - $ref: "#/components/schemas/NotificationSettingType" description: Where notifications should be sent for this destination. title: NotificationSettingType destination: type: string minLength: 1 maxLength: 2048 description: Webhook endpoint URL or email address. active: type: boolean description: Whether Paddle should try to deliver events to this notification destination. default: true api_version: type: integer minimum: 1 description: API version that returned objects for events should conform to. Must be a valid version of the Paddle API. Can't be a version older than your account default. include_sensitive_fields: type: boolean description: Whether potentially sensitive fields should be sent to this notification destination. default: false subscribed_events: type: array items: $ref: "#/components/schemas/EventType" description: Subscribed events for this notification destination. endpoint_secret_key: type: string pattern: ^pdl_ntfset_[a-zA-Z0-9]{26}_[a-zA-Z0-9]{32}$ description: Webhook destination secret key, prefixed with `pdl_ntfset_`. Used for signature verification. readOnly: true traffic_source: allOf: - $ref: "#/components/schemas/NotificationSettingTrafficSource" description: Whether Paddle should deliver real platform events, simulation events or both to this notification destination. description: Represents a notification destination. title: NotificationSetting NotificationSettingCreate: type: object required: - description - type - destination - subscribed_events properties: id: allOf: - $ref: "#/components/schemas/NotificationSettingId" readOnly: true description: type: string minLength: 1 maxLength: 500 description: Short description for this notification destination. Shown in the Paddle Dashboard. type: allOf: - $ref: "#/components/schemas/NotificationSettingType" description: Where notifications should be sent for this destination. title: NotificationSettingType destination: type: string minLength: 1 maxLength: 2048 description: Webhook endpoint URL or email address. active: type: boolean description: Whether Paddle should try to deliver events to this notification destination. readOnly: true default: true api_version: type: integer minimum: 1 description: API version that returned objects for events should conform to. Must be a valid version of the Paddle API. Can't be a version older than your account default. If omitted, defaults to your account default version. include_sensitive_fields: type: boolean description: Whether potentially sensitive fields should be sent to this notification destination. If omitted, defaults to `false`. default: false subscribed_events: type: array items: $ref: "#/components/schemas/EventTypeName" description: Subscribed events for this notification destination. When creating or updating a notification destination, pass an array of event type names only. Paddle returns the complete event type object. endpoint_secret_key: type: string pattern: ^pdl_ntfset_[a-zA-Z0-9]{26}_[a-zA-Z0-9]{32}$ description: Webhook destination secret key, prefixed with `pdl_ntfset_`. Used for signature verification. readOnly: true traffic_source: allOf: - $ref: "#/components/schemas/NotificationSettingTrafficSource" description: Whether Paddle should deliver real platform events, simulation events or both to this notification destination. If omitted, defaults to `platform`. default: platform description: Represents a notification destination when creating notification destinations. title: NotificationSettingCreate NotificationSettingUpdate: type: object properties: description: type: string minLength: 1 maxLength: 500 description: Short description for this notification destination. Shown in the Paddle Dashboard. destination: type: string minLength: 1 maxLength: 2048 description: Webhook endpoint URL or email address. active: type: boolean description: Whether Paddle should try to deliver events to this notification destination. default: true api_version: type: integer minimum: 1 description: API version that returned objects for events should conform to. Must be a valid version of the Paddle API. Can't be a version older than your account default. Defaults to your account default if omitted. include_sensitive_fields: type: boolean description: Whether potentially sensitive fields should be sent to this notification destination. default: false subscribed_events: type: array items: $ref: "#/components/schemas/EventTypeName" description: Subscribed events for this notification destination. When creating or updating a notification destination, pass an array of event type names only. Paddle returns the complete event type object. traffic_source: allOf: - $ref: "#/components/schemas/NotificationSettingTrafficSource" description: Whether Paddle should deliver real platform events, simulation events or both to this notification destination. description: Represents a notification destination when updating notification destinations. title: NotificationSettingUpdate NotificationStatusQueryEnum: type: string enum: - delivered - failed - needs_retry - not_attempted title: Status x-enum-descriptions: delivered: description: Return notifications where the status is `delivered`. Returned notifications were delivered successfully. failed: description: Return notifications where the status is `failed`. Returned notifications were not delivered successfully and they're not scheduled to be retried. needs_retry: description: Return notifications where the status is `needs_retry`. Returned notifications have not been delivered successfully, but Paddle is scheduled to try to deliver it again. not_attempted: description: Return notifications where the status is `not_attempted`. Returned notifications have not been delivered because Paddle hasn't yet tried to deliver them. NotificationId: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk readOnly: true NotificationStatus: type: string enum: - not_attempted - needs_retry - delivered - failed description: Status of this notification. title: notification_status readOnly: true x-enum-descriptions: not_attempted: description: Paddle hasn't yet tried to deliver this notification. needs_retry: description: Paddle tried to deliver this notification, but it failed. It's scheduled to be retried. delivered: description: Paddle delivered this notification successfully. failed: description: Paddle tried to deliver this notification, but all attempts failed. It's not scheduled to be retried. NotificationPayload: type: object required: - event_id - event_type - occurred_at - data properties: event_id: allOf: - $ref: "#/components/schemas/EventId" readOnly: true event_type: allOf: - $ref: "#/components/schemas/EventTypeName" readOnly: true occurred_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when this event occurred. readOnly: true data: allOf: - $ref: "#/components/schemas/EventData" description: New or changed entity. readOnly: true notification_id: $ref: "#/components/schemas/NotificationId" description: Notification payload. Includes the new or changed event. NotificationOrigin: type: string enum: - event - replay description: Describes how this notification was created. title: NotificationOrigin readOnly: true x-enum-descriptions: event: description: Notification created when a subscribed event occurred. replay: description: Notification created when a notification with the origin `event` was replayed. Notification: type: object required: - id - type - status - payload - occurred_at - delivered_at - replayed_at - origin - last_attempt_at - retry_at - times_attempted - notification_setting_id properties: id: allOf: - $ref: "#/components/schemas/NotificationId" readOnly: true type: allOf: - $ref: "#/components/schemas/EventTypeName" readOnly: true status: allOf: - $ref: "#/components/schemas/NotificationStatus" readOnly: true payload: allOf: - $ref: "#/components/schemas/NotificationPayload" description: Notification payload. Includes the new or changed event. readOnly: true occurred_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when this notification occurred. readOnly: true delivered_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this notification was delivered. `null` if not yet delivered successfully. readOnly: true replayed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this notification was replayed. `null` if not replayed. readOnly: true origin: allOf: - $ref: "#/components/schemas/NotificationOrigin" readOnly: true last_attempt_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this notification was last attempted. readOnly: true retry_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this notification is scheduled to be retried. readOnly: true times_attempted: type: integer description: How many times delivery of this notification has been attempted. Automatically incremented by Paddle after an attempt. readOnly: true notification_setting_id: allOf: - $ref: "#/components/schemas/NotificationSettingId" readOnly: true description: Represents a notification entity. title: Notification NotificationLogId: type: string pattern: ^ntflog_[a-z\d]{26}$ description: Unique Paddle ID for this notification log, prefixed with `ntflog_`. title: Notification log ID examples: - ntflog_01gyfq570sy1nsv2123sbs68kv readOnly: true NotificationLog: type: object required: - id - response_code - response_content_type - response_body - attempted_at properties: id: allOf: - $ref: "#/components/schemas/NotificationLogId" readOnly: true response_code: type: integer description: HTTP code sent by the responding server. examples: - 200 readOnly: true response_content_type: anyOf: - type: string - type: "null" description: Content-Type sent by the responding server. examples: - text/plain; charset=UTF-8 readOnly: true response_body: type: string description: Response body sent by the responding server. Typically empty for success responses. readOnly: true attempted_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when Paddle attempted to deliver the related notification. readOnly: true description: Represents a notification log entity. title: NotificationLog NotificationReplay: type: object required: - notification_id properties: notification_id: $ref: "#/components/schemas/NotificationId" description: Represents a notification replay entity. title: NotificationReplay Paypal: type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: type: string description: PayPal payment method identifier. description: PayPal metadata title: PayPal CustomerPaymentMethod: type: object required: - id - customer_id - address_id - type - card - paypal - south_korea_local_card - origin - saved_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/PaymentMethodId" readOnly: true customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID of the customer that this payment method is saved for, prefixed with `ctm_`. readOnly: true address_id: allOf: - $ref: "#/components/schemas/AddressId" description: Paddle ID of the address for this payment method, prefixed with `add_`. readOnly: true type: allOf: - $ref: "#/components/schemas/CustomerPaymentMethodType" description: Type of payment method saved. readOnly: true card: anyOf: - $ref: "#/components/schemas/Card" - type: "null" description: Information about the credit or debit card saved. `null` unless `type` is `card`. readOnly: true paypal: anyOf: - $ref: "#/components/schemas/Paypal" - type: "null" description: Information about the PayPal payment method saved. `null` unless `type` is `paypal`. readOnly: true underlying_details: anyOf: - $ref: "#/components/schemas/UnderlyingDetails" - type: "null" readOnly: true south_korea_local_card: anyOf: - $ref: "#/components/schemas/SouthKoreaLocalCard" - type: "null" description: Information about the Korean payment method used to pay. `null` unless `type` is `south_korea_local_card`. readOnly: true origin: allOf: - $ref: "#/components/schemas/CustomerPaymentMethodOrigin" description: Describes how this payment method was saved. readOnly: true saved_at: allOf: - $ref: "#/components/schemas/SavedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents a customer payment method entity. title: Payment Method PriceTrialDurationCreate: type: object required: - interval - frequency properties: interval: allOf: - $ref: "#/components/schemas/DurationInterval" description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: allOf: - $ref: "#/components/schemas/PriceRequiresPaymentMethod" default: true unit_price: anyOf: - $ref: "#/components/schemas/MoneyOptionalCurrency" - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: $ref: "#/components/schemas/PriceTrialUnitPriceOverride" maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration PriceCreate: type: object required: - description - product_id - unit_price properties: id: allOf: - $ref: "#/components/schemas/PriceId" x-external-readOnly: true description: type: string minLength: 2 maxLength: 500 pattern: .*\S.* description: Internal description for this price, not shown to customers. Typically notes for your team. type: allOf: - $ref: "#/components/schemas/CatalogType" description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. If omitted, defaults to `standard`. default: standard name: anyOf: - $ref: "#/components/schemas/PriceName" - type: "null" product_id: allOf: - $ref: "#/components/schemas/ProductId" description: Paddle ID for the product that this price is for, prefixed with `pro_`. billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). If omitted, defaults to `null`. trial_period: anyOf: - $ref: "#/components/schemas/PriceTrialDurationCreate" - type: "null" description: |- Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. If omitted, defaults to `null`. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" description: How tax is calculated for this price. If omitted, defaults to `account_setting`. default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. If omitted, defaults to 1-100. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a price entity when creating prices. title: PriceCreate additionalProperties: false ProductCreate: type: object required: - name - tax_category properties: id: allOf: - $ref: "#/components/schemas/ProductId" x-external-readOnly: true name: type: string minLength: 1 maxLength: 200 pattern: .*\S.* description: Name of this product. description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: allOf: - $ref: "#/components/schemas/CatalogType" description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. If omitted, defaults to `standard`. default: standard tax_category: $ref: "#/components/schemas/TaxCategory" image_url: anyOf: - $ref: "#/components/schemas/ImageUrl" - type: "null" - $ref: "#/components/schemas/EmptyString" description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true description: Represents a product entity when creating products. title: ProductCreate additionalProperties: false PriceListIncludeEnum: type: string enum: - product x-enum-permissions: product: - product.read x-enum-descriptions: product: description: Include an object with the product related to this price. CatalogTypeQueryEnum: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Return items where the type is `custom`. Returned items can be considered non-catalog items. They're typically created for a specific transaction or subscription. Not returned when listing via API or shown in the Paddle dashboard. standard: description: Return items where the type is `standard`. Returned items can be considered part of your catalog and reused across transactions and subscriptions easily. PriceIncludes: type: object required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/PriceId" readOnly: true product_id: allOf: - $ref: "#/components/schemas/ProductId" description: Paddle ID for the product that this price is for, prefixed with `pro_`. description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard name: anyOf: - $ref: "#/components/schemas/PriceName" - type: "null" billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - $ref: "#/components/schemas/PriceTrialDuration" - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: allOf: - $ref: "#/components/schemas/Status" default: active custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true product: allOf: - $ref: "#/components/schemas/Product" description: Related product for this price. Returned when the `include` parameter is used with the `product` value. x-included: true description: Represents a price entity with included entities. title: PriceIncludes PriceIncludeEnum: type: string enum: - product x-enum-permissions: product: - product.read x-enum-descriptions: product: description: Include an object with the product related to this price. PriceWithProductCollectionIncludes: type: object required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/PriceId" readOnly: true product_id: allOf: - $ref: "#/components/schemas/ProductId" description: Paddle ID for the product that this price is for, prefixed with `pro_`. description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard name: anyOf: - $ref: "#/components/schemas/PriceName" - type: "null" billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - $ref: "#/components/schemas/PriceTrialDuration" - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: allOf: - $ref: "#/components/schemas/Status" default: active custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true product: allOf: - $ref: "#/components/schemas/Product" description: Related product for this price. Returned when the `include` parameter is used with the `product` value. x-included: true description: Represents a price entity with included entities, including product collections. title: PriceWithProductCollectionIncludes PriceTrialDurationUpdate: type: object properties: interval: allOf: - $ref: "#/components/schemas/DurationInterval" description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: allOf: - $ref: "#/components/schemas/PriceRequiresPaymentMethod" default: true unit_price: anyOf: - $ref: "#/components/schemas/MoneyOptionalCurrency" - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: $ref: "#/components/schemas/PriceTrialUnitPriceOverride" maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration PriceUpdate: type: object properties: description: type: string minLength: 2 maxLength: 500 pattern: .*\S.* description: Internal description for this price, not shown to customers. Typically notes for your team. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard name: anyOf: - $ref: "#/components/schemas/PriceName" - type: "null" billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - $ref: "#/components/schemas/PriceTrialDurationUpdate" - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: $ref: "#/components/schemas/Status" custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. description: Represents a price entity when updating prices. title: PriceUpdate additionalProperties: false TransactionPricingPreviewLineItemDiscount: type: object required: - discount - total - formatted_total properties: discount: allOf: - $ref: "#/components/schemas/Discount" description: Related discount entity for this preview line item. total: type: string description: Total amount discounted as a result of this discount. examples: - "0" formatted_total: type: string description: Total amount discounted as a result of this discount in the format of a given currency. ' examples: - $0 description: Array of discounts applied to this preview line item. Empty if no discounts applied. title: Price preview discounts TransactionPricingPreviewLineItem: type: object required: - price - quantity - tax_rate - unit_totals - formatted_unit_totals - totals - formatted_totals - product - discounts properties: price: allOf: - $ref: "#/components/schemas/Price" description: Related price entity for this preview line item. quantity: type: integer description: Quantity of this preview line item. tax_rate: type: string description: Rate used to calculate tax for this preview line item. examples: - "0.2" unit_totals: allOf: - $ref: "#/components/schemas/Totals" description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). formatted_unit_totals: allOf: - $ref: "#/components/schemas/Totals" description: Breakdown of the charge for one unit in the format of a given currency. totals: $ref: "#/components/schemas/Totals" formatted_totals: allOf: - $ref: "#/components/schemas/Totals" description: The financial breakdown of a charge in the format of a given currency. product: allOf: - $ref: "#/components/schemas/Product" description: Related product entity for this preview line item price. discounts: type: array items: $ref: "#/components/schemas/TransactionPricingPreviewLineItemDiscount" description: Information about line items for this preview. Includes totals calculated by Paddle. Considered the source of truth for line item totals. title: Price preview line item TransactionPricingPreviewDetails: type: object required: - line_items properties: line_items: type: array items: $ref: "#/components/schemas/TransactionPricingPreviewLineItem" description: Calculated totals for a price preview, including discounts, tax, and currency conversion. title: Price preview details readOnly: true PaymentMethodType: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - naver_pay - payco - samsung_pay - south_korea_local_card - mb_way - paypal - pix - upi - wechat_pay description: Type of payment method available for use in the checkout. title: payment_method_type x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in South Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. deprecated: true mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in South Korea. payco: description: Payco, a popular payment method in South Korea. paypal: description: PayPal. pix: description: Pix, popular in Brazil. samsung_pay: description: Samsung Pay, a popular payment method in South Korea. south_korea_local_card: description: Korean local credit or debit card. upi: description: Unified Payments Interface (UPI), popular in India. wechat_pay: description: WeChat Pay, a popular payment method in China. TransactionPricingPreviewResponse: type: object required: - customer_id - address_id - business_id - currency_code - discount_id - address - customer_ip_address - details - available_payment_methods properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this preview is for, prefixed with `ctm_`. address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of the address that this preview is for, prefixed with `add_`. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this preview is for, prefixed with `biz_`. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount applied to this preview, prefixed with `dsc_`. address: anyOf: - $ref: "#/components/schemas/AddressPreview" - type: "null" description: Address for this preview. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. customer_ip_address: anyOf: - type: string - type: "null" description: IP address for this transaction preview. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. details: allOf: - $ref: "#/components/schemas/TransactionPricingPreviewDetails" readOnly: true available_payment_methods: type: array items: $ref: "#/components/schemas/PaymentMethodType" readOnly: true TransactionPricingPreviewItem: type: object required: - quantity properties: price_id: allOf: - $ref: "#/components/schemas/PriceId" description: Paddle ID for the price to add to this transaction, prefixed with `pri_`. quantity: type: integer minimum: 1 description: Quantity of the item to preview. title: Price preview item writeOnly: true TransactionPricingPreviewRequest: type: object required: - items properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this preview is for, prefixed with `ctm_`. address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of the address that this preview is for, prefixed with `add_`. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this preview is for, prefixed with `biz_`. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount applied to this preview, prefixed with `dsc_`. address: anyOf: - $ref: "#/components/schemas/AddressPreview" - type: "null" description: Address for this preview. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. customer_ip_address: anyOf: - type: string - type: "null" description: IP address for this transaction preview. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. items: type: array items: $ref: "#/components/schemas/TransactionPricingPreviewItem" minItems: 1 maxItems: 100 description: List of items to preview price calculations for. writeOnly: true title: Price preview request ProductIncludeEnum: type: string enum: - prices x-enum-permissions: prices: - price.read x-enum-descriptions: prices: description: Include an array of prices related to this product. TaxCategoryQueryEnum: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting title: Tax category x-enum-descriptions: digital-goods: description: Return entities with the tax category of `digital-goods`. Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Return entities with the tax category of `ebooks`. Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Return entities with the tax category of `implementation-services`. Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Return entities with the tax category of `professional-services`. Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Return entities with the tax category of `saas`. Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programming-services: description: Return entities with the tax category of `software-programming-services`. Services that can be used to customize and white label software products. standard: description: Return entities with the tax category of `standard`. Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Return entities with the tax category of `training-services`. Training and education services related to software products. website-hosting: description: Return entities with the tax category of `website-hosting`. Cloud storage service for personal or corporate information, assets, or intellectual property. ProductIncludes: type: object required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/ProductId" readOnly: true name: $ref: "#/components/schemas/ProductName" description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard tax_category: $ref: "#/components/schemas/TaxCategory" image_url: anyOf: - $ref: "#/components/schemas/ImageUrl" - type: "null" - $ref: "#/components/schemas/EmptyString" description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. status: allOf: - $ref: "#/components/schemas/Status" default: active import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true prices: type: array items: $ref: "#/components/schemas/Price" description: Prices for this product. Returned when the `include` parameter is used with the `prices` value. x-included: true description: Represents a product entity with included entities. title: Product with includes ProductUpdate: type: object properties: name: type: string minLength: 1 maxLength: 200 pattern: .*\S.* description: Name of this product. description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard tax_category: $ref: "#/components/schemas/TaxCategory" image_url: anyOf: - $ref: "#/components/schemas/ImageUrl" - type: "null" - $ref: "#/components/schemas/EmptyString" description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. status: $ref: "#/components/schemas/Status" description: Represents a product entity when updating products. title: ProductUpdate additionalProperties: false ReportStatusQueryEnum: type: string enum: - pending - ready - failed - expired x-enum-descriptions: pending: description: Return reports where the status is `pending`. Returned reports are created, but Paddle is processing them. ready: description: Return reports where the status is `ready`. Returned reports are fully processed and are ready for download. failed: description: Return reports where the status is `failed`. Returned reports encountered problems in processing. expired: description: Return reports where the status is `expired`. Returned reports are no longer accessible. ReportTypeAdjustments: type: string enum: - adjustments - adjustment_line_items description: Type of report. title: AdjustmentsReportType examples: - adjustments x-enum-descriptions: adjustments: description: Adjustments reports contain information about refunds, credits, and chargebacks. adjustment_line_items: description: Adjustments reports contain information about refunds, credits, and chargebacks. The report is broken down by line item level. ReportFilterAdjustmentsName: type: string enum: - action - currency_code - status - updated_at x-enum-descriptions: action: description: Filter by adjustment action. Pass an array of strings containing any valid value for the `action` field against an adjustment. currency_code: description: Filter by transaction or adjustment currency. Pass an array of strings containing any valid supported three-letter ISO 4217 currency code. status: description: Filter by transaction or adjustment status. Pass an array of strings containing any valid value for the `status` field against a transaction or an adjustment. updated_at: description: Filter by transaction or adjustment updated date. Pass an RFC 3339 datetime string. Operator: type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. ReportFilterAdjustments: type: object required: - name - operator - value properties: name: allOf: - $ref: "#/components/schemas/ReportFilterAdjustmentsName" description: Field name to filter by. title: AdjustmentsReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: $ref: "#/components/schemas/AdjustmentStatus" - type: array items: $ref: "#/components/schemas/AdjustmentAction" - $ref: "#/components/schemas/Timestamp" - type: string format: date - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: Filter criteria for this report. If omitted when creating, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. title: AdjustmentsReportFilters ReportAdjustmentsModel: type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: allOf: - $ref: "#/components/schemas/PaddleId" description: Unique Paddle ID for this report, prefixed with `rep_` readOnly: true status: allOf: - $ref: "#/components/schemas/ReportStatus" readOnly: true default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. readOnly: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of when this report was last updated. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" description: RFC 3339 datetime string of when this report was created. readOnly: true type: allOf: - $ref: "#/components/schemas/ReportTypeAdjustments" description: Type of report to create. filters: type: array items: $ref: "#/components/schemas/ReportFilterAdjustments" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with reports for adjustments or adjustment line items. title: Adjustments reports ReportTypeTransactions: type: string enum: - transactions - transaction_line_items description: Type of report. title: TransactionsReportType examples: - transactions x-enum-descriptions: transactions: description: Transactions reports contain information about revenue received, past due invoices, draft and issued invoices, and canceled transactions. transaction_line_items: description: Transactions reports contain information about revenue received, past due invoices, draft and issued invoices, and canceled transactions. The report is broken down by line item level. ReportFilterTransactionsItemName: type: string enum: - collection_mode - currency_code - origin - status - updated_at description: Field name to filter by. title: TransactionsReportFilterName x-enum-descriptions: collection_mode: description: Filter by collection mode. Pass an array of strings containing any valid value for the `collection_mode` field against a transaction. currency_code: description: Filter by transaction or adjustment currency. Pass an array of strings containing any valid supported three-letter ISO 4217 currency code. origin: description: Filter by transaction origin. Pass an array of strings containing any valid value for the origin field against a transaction. status: description: Filter by transaction or adjustment status. Pass an array of strings containing any valid value for the `status` field against a transaction or an adjustment. updated_at: description: Filter by transaction or adjustment updated date. Pass an RFC 3339 datetime string. ReportFilterTransactions: type: object required: - name - operator - value properties: name: allOf: - $ref: "#/components/schemas/ReportFilterTransactionsItemName" description: Field name to filter by. title: TransactionsReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. title: TransactionsReportFilters ReportTransactionsModel: type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: allOf: - $ref: "#/components/schemas/PaddleId" description: Unique Paddle ID for this report, prefixed with `rep_` readOnly: true status: allOf: - $ref: "#/components/schemas/ReportStatus" readOnly: true default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. readOnly: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of when this report was last updated. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" description: RFC 3339 datetime string of when this report was created. readOnly: true type: allOf: - $ref: "#/components/schemas/ReportTypeTransactions" description: Type of report to create. filters: type: array items: $ref: "#/components/schemas/ReportFilterTransactions" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with reports for transaction or transaction line items. title: Transactions reports ReportTypeProductsPrices: type: string enum: - products_prices description: Type of report. title: ProductsPricesReportType examples: - products_prices x-enum-descriptions: products_prices: description: Products and prices reports contain information about your products and prices. May include non-catalog products and prices. ReportFilterProductsPricesName: type: string enum: - product_status - price_status - product_type - price_type - product_updated_at - price_updated_at description: Field name to filter by. title: ProductPricesReportFilterName x-enum-descriptions: product_status: description: Filter by product status. Pass an array of strings containing any valid value for the `status` field against a product. price_status: description: Filter by price status. Pass an array of strings containing any valid value for the `status` field against a price. product_type: description: Filter by product type. Pass an array of strings containing any valid value for the `type` field against a product. price_type: description: Filter by price type. Pass an array of strings containing any valid value for the `type` field against a price. product_updated_at: description: Filter by product `updated_at` date. Pass an RFC 3339 datetime string. price_updated_at: description: Filter by price `updated_at` date. Pass an RFC 3339 datetime string. ReportFilterProductsPrices: type: object required: - name - operator - value properties: name: allOf: - $ref: "#/components/schemas/ReportFilterProductsPricesName" description: Field name to filter by. title: ProductPricesReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. description: List of filters applied to this report. title: ProductPricesReportFilters ReportProductsPricesModel: type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: allOf: - $ref: "#/components/schemas/PaddleId" description: Unique Paddle ID for this report, prefixed with `rep_` readOnly: true status: allOf: - $ref: "#/components/schemas/ReportStatus" readOnly: true default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. readOnly: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of when this report was last updated. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" description: RFC 3339 datetime string of when this report was created. readOnly: true type: allOf: - $ref: "#/components/schemas/ReportTypeProductsPrices" description: Type of report to create. title: ProductsPricesReportType examples: - products_prices filters: type: array items: $ref: "#/components/schemas/ReportFilterProductsPrices" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `product_updated_at` and `price_updated_at` are greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with a products and prices report. title: Products and prices report ReportTypeDiscounts: type: string enum: - discounts description: Type of report. title: DiscountsReportType examples: - discounts x-enum-descriptions: discounts: description: Discounts reports contain information about your product and checkout discounts. ReportFilterDiscountsItemName: type: string enum: - type - status - updated_at description: Field name to filter by. title: DiscountsReportFilterName x-enum-descriptions: type: description: Filter by discount type. Pass an array of strings containing any valid value for the `type` field against a discount. status: description: Filter by discount status. Pass an array of strings containing any valid value for the `status` field against a discount. updated_at: description: Filter by discount updated date. Pass an RFC 3339 datetime string. ReportFilterDiscounts: type: object required: - name - operator - value properties: name: allOf: - $ref: "#/components/schemas/ReportFilterDiscountsItemName" description: Field name to filter by. title: DiscountsReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. title: DiscountsReportFilters ReportDiscountsModel: type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: allOf: - $ref: "#/components/schemas/PaddleId" description: Unique Paddle ID for this report, prefixed with `rep_` readOnly: true status: allOf: - $ref: "#/components/schemas/ReportStatus" readOnly: true default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. readOnly: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of when this report was last updated. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" description: RFC 3339 datetime string of when this report was created. readOnly: true type: allOf: - $ref: "#/components/schemas/ReportTypeDiscounts" description: Type of report to create. title: DiscountsReportType examples: - discounts filters: type: array items: $ref: "#/components/schemas/ReportFilterDiscounts" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with a discounts report. title: Discounts report ReportTypeBalance: type: string enum: - balance description: Type of report. title: BalanceReportType deprecated: true examples: - balance x-enum-descriptions: balance: description: Balance reports contain information about your account balance activity, including all movements of funds in and out of your balance. Deprecated. deprecated: true ReportFilterBalanceName: type: string enum: - updated_at description: Field name to filter by. title: BalanceReportFilterName x-enum-descriptions: updated_at: description: Filter by balance change updated date. Pass an RFC 3339 datetime string. ReportFilterBalance: type: object required: - name - operator - value properties: name: allOf: - $ref: "#/components/schemas/ReportFilterBalanceName" description: Field name to filter by. title: BalanceReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. title: BalanceReportFilters ReportBalanceModel: type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: allOf: - $ref: "#/components/schemas/PaddleId" description: Unique Paddle ID for this report, prefixed with `rep_` readOnly: true status: allOf: - $ref: "#/components/schemas/ReportStatus" readOnly: true default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. readOnly: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of when this report was last updated. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" description: RFC 3339 datetime string of when this report was created. readOnly: true type: allOf: - $ref: "#/components/schemas/ReportTypeBalance" description: Type of report to create. title: BalanceReportType examples: - balance filters: type: array items: $ref: "#/components/schemas/ReportFilterBalance" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with a balance report. Deprecated. title: Balance report deprecated: true ReportTypePayoutReconciliation: type: string enum: - payout_reconciliation description: Type of report. title: PayoutReconciliationReportType examples: - payout_reconciliation x-enum-descriptions: payout_reconciliation: description: Payout reconciliation reports contain information about your payout activity, including all transactions and adjustments that make up specific payouts. ReportFilterReconciliationName: type: string enum: - remittance_reference - transaction_updated_at - balance_movement_date - balance_movement_type description: Field name to filter by. title: ReconciliationReportFilterName x-enum-descriptions: remittance_reference: description: Filter by remittance reference. Pass an array with one string containing a remittance reference. transaction_updated_at: description: Filter by transaction updated date. Pass an RFC 3339 datetime string. balance_movement_date: description: Filter by the date the balance movement occurred. Pass an RFC 3339 datetime string. balance_movement_type: description: Filter by balance movement type. Pass one or more values from the `BalanceMovementType` enum. BalanceMovementType: type: string enum: - rebate - swift_fee - sale - refund - chargeback_warning - chargeback_warning_reverse - chargeback - chargeback_reverse - credit description: Type of balance movement to filter by. title: BalanceMovementType x-enum-descriptions: rebate: description: A manual adjustment to your balance that isn't tied to a specific transaction. swift_fee: description: A SWIFT or wire-transfer fee deducted when your payout is made. It isn't tied to a specific transaction. sale: description: Your earnings from a paid transaction. This is the most common balance movement. refund: description: Refunds some or all the related transaction. Must be approved by Paddle in most cases. chargeback_warning: description: Warning of an upcoming chargeback for the related transaction. Automatically created by Paddle. chargeback_warning_reverse: description: Reversal of a chargeback warning for the related transaction. Automatically created by Paddle. chargeback: description: Chargeback for the related transaction. Automatically created by Paddle when a customer successfully disputes a charge. chargeback_reverse: description: Reversal of a chargeback for the related transaction. Automatically created by Paddle when Paddle contests a chargeback successfully. credit: description: Credits some or all the related transaction. ReportFilterReconciliation: type: object required: - name - operator - value properties: name: allOf: - $ref: "#/components/schemas/ReportFilterReconciliationName" description: Field name to filter by. title: ReconciliationReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `transaction_updated_at` or `balance_movement_date`, must be `null` otherwise. value: anyOf: - type: array items: type: string - type: string - type: array items: $ref: "#/components/schemas/BalanceMovementType" description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. ReportPayoutReconciliationModel: type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: allOf: - $ref: "#/components/schemas/PaddleId" description: Unique Paddle ID for this report, prefixed with `rep_` readOnly: true status: allOf: - $ref: "#/components/schemas/ReportStatus" readOnly: true default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. readOnly: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of when this report was last updated. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" description: RFC 3339 datetime string of when this report was created. readOnly: true type: allOf: - $ref: "#/components/schemas/ReportTypePayoutReconciliation" description: Type of report to create. title: PayoutReconciliationReportType examples: - payout_reconciliation filters: type: array items: $ref: "#/components/schemas/ReportFilterReconciliation" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `transaction_updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with a reconciliation report. title: Payout reconciliation report ReportTypeCheckouts: type: string enum: - checkouts description: Type of report. title: CheckoutsReportType examples: - checkouts x-enum-descriptions: checkouts: description: Checkouts reports contain information about your checkouts, including conversion and recovery data for each checkout session. ReportFilterCheckoutsName: type: string enum: - checkout_created_at - customer_country_code description: Field name to filter by. title: CheckoutsReportFilterName x-enum-descriptions: checkout_created_at: description: Filter by checkout creation date. Pass an RFC 3339 datetime string. Combine two `checkout_created_at` filters with `gte` and `lt` operators to scope reports to a specific date range. customer_country_code: description: Filter by customer country. Pass an array of strings containing any valid two-letter ISO 3166-1 alpha-2 country code. ReportFilterCheckouts: type: object required: - name - operator - value properties: name: allOf: - $ref: "#/components/schemas/ReportFilterCheckoutsName" description: Field name to filter by. title: CheckoutsReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `checkout_created_at` (must be `gte` or `lt`), `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. ReportCheckoutsModel: type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: allOf: - $ref: "#/components/schemas/PaddleId" description: Unique Paddle ID for this report, prefixed with `rep_` readOnly: true status: allOf: - $ref: "#/components/schemas/ReportStatus" readOnly: true default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. readOnly: true expires_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" description: RFC 3339 datetime string of when this report was last updated. readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" description: RFC 3339 datetime string of when this report was created. readOnly: true type: allOf: - $ref: "#/components/schemas/ReportTypeCheckouts" description: Type of report to create. title: CheckoutsReportType examples: - checkouts filters: type: array items: $ref: "#/components/schemas/ReportFilterCheckouts" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include checkouts created in the last 30 days. This means `checkout_created_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. To filter by a specific date range, pass two `checkout_created_at` filters with `gte` and `lt` operators. description: Entity when working with a checkouts report. title: Checkouts report Report: oneOf: - $ref: "#/components/schemas/ReportAdjustmentsModel" - $ref: "#/components/schemas/ReportTransactionsModel" - $ref: "#/components/schemas/ReportProductsPricesModel" - $ref: "#/components/schemas/ReportDiscountsModel" - $ref: "#/components/schemas/ReportBalanceModel" - $ref: "#/components/schemas/ReportPayoutReconciliationModel" - $ref: "#/components/schemas/ReportCheckoutsModel" description: Represents a report entity. title: Report ReportFilterAdjustmentsCreate: type: object properties: name: allOf: - $ref: "#/components/schemas/ReportFilterAdjustmentsName" description: Field name to filter by. title: AdjustmentsReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: $ref: "#/components/schemas/AdjustmentStatus" - type: array items: $ref: "#/components/schemas/AdjustmentAction" - $ref: "#/components/schemas/Timestamp" - type: string format: date - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: Filter criteria for this report. If omitted when creating, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. title: AdjustmentsReportFiltersCreate ReportAdjustmentsCreateModel: type: object required: - type properties: type: allOf: - $ref: "#/components/schemas/ReportTypeAdjustments" description: Type of report to create. filters: type: array items: $ref: "#/components/schemas/ReportFilterAdjustmentsCreate" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with reports for adjustments or adjustment line items. title: Adjustments reports ReportFilterTransactionsCreate: type: object properties: name: allOf: - $ref: "#/components/schemas/ReportFilterTransactionsItemName" description: Field name to filter by. title: TransactionsReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. title: TransactionsReportFiltersCreate ReportTransactionsCreateModel: type: object required: - type properties: type: allOf: - $ref: "#/components/schemas/ReportTypeTransactions" description: Type of report to create. filters: type: array items: $ref: "#/components/schemas/ReportFilterTransactionsCreate" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with reports for transaction or transaction line items. title: Transactions reports ReportFilterProductsPricesCreate: type: object properties: name: allOf: - $ref: "#/components/schemas/ReportFilterProductsPricesName" description: Field name to filter by. title: ProductPricesReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. description: List of filters applied to this report. title: ProductPricesReportFiltersCreate ReportProductsPricesCreateModel: type: object required: - type properties: type: allOf: - $ref: "#/components/schemas/ReportTypeProductsPrices" description: Type of report to create. title: ProductsPricesReportType examples: - products_prices filters: type: array items: $ref: "#/components/schemas/ReportFilterProductsPricesCreate" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `product_updated_at` and `price_updated_at` are greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with a products and prices report. title: Products and prices report ReportFilterDiscountsCreate: type: object properties: name: allOf: - $ref: "#/components/schemas/ReportFilterDiscountsItemName" description: Field name to filter by. title: DiscountsReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. title: DiscountsReportFiltersCreate ReportDiscountsCreateModel: type: object required: - type properties: type: allOf: - $ref: "#/components/schemas/ReportTypeDiscounts" description: Type of report to create. title: DiscountsReportType examples: - discounts filters: type: array items: $ref: "#/components/schemas/ReportFilterDiscountsCreate" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with a discounts report. title: Discounts report ReportFilterBalanceCreate: type: object properties: name: allOf: - $ref: "#/components/schemas/ReportFilterBalanceName" description: Field name to filter by. title: BalanceReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. title: BalanceReportFiltersCreate ReportBalanceCreateModel: type: object required: - type properties: type: allOf: - $ref: "#/components/schemas/ReportTypeBalance" description: Type of report to create. title: BalanceReportType examples: - balance filters: type: array items: $ref: "#/components/schemas/ReportFilterBalanceCreate" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with a balance report. Deprecated. title: Balance report deprecated: true ReportFilterReconciliationCreate: type: object properties: name: allOf: - $ref: "#/components/schemas/ReportFilterReconciliationName" description: Field name to filter by. title: ReconciliationReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `transaction_updated_at` or `balance_movement_date`, must be `null` otherwise. value: anyOf: - type: array items: type: string - type: string - type: array items: $ref: "#/components/schemas/BalanceMovementType" description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. title: ReconciliationFiltersCreate ReportPayoutReconciliationCreateModel: type: object required: - type properties: type: allOf: - $ref: "#/components/schemas/ReportTypePayoutReconciliation" description: Type of report to create. title: PayoutReconciliationReportType examples: - payout_reconciliation filters: type: array items: $ref: "#/components/schemas/ReportFilterReconciliationCreate" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `transaction_updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Entity when working with a reconciliation report. title: Payout reconciliation report ReportFilterCheckoutsCreate: type: object properties: name: allOf: - $ref: "#/components/schemas/ReportFilterCheckoutsName" description: Field name to filter by. title: CheckoutsReportFilterName operator: anyOf: - $ref: "#/components/schemas/Operator" - type: "null" description: Operator to use when filtering. Valid when filtering by `checkout_created_at` (must be `gte` or `lt`), `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. title: CheckoutsFiltersCreate ReportCheckoutsCreateModel: type: object required: - type properties: type: allOf: - $ref: "#/components/schemas/ReportTypeCheckouts" description: Type of report to create. title: CheckoutsReportType examples: - checkouts filters: type: array items: $ref: "#/components/schemas/ReportFilterCheckoutsCreate" maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include checkouts created in the last 30 days. This means `checkout_created_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. To filter by a specific date range, pass two `checkout_created_at` filters with `gte` and `lt` operators. description: Entity when working with a checkouts report. title: Checkouts report ReportCreate: oneOf: - $ref: "#/components/schemas/ReportAdjustmentsCreateModel" - $ref: "#/components/schemas/ReportTransactionsCreateModel" - $ref: "#/components/schemas/ReportProductsPricesCreateModel" - $ref: "#/components/schemas/ReportDiscountsCreateModel" - $ref: "#/components/schemas/ReportBalanceCreateModel" - $ref: "#/components/schemas/ReportPayoutReconciliationCreateModel" - $ref: "#/components/schemas/ReportCheckoutsCreateModel" description: Represents a report entity. title: ReportCreate GetReportCsvData: type: object required: - url properties: url: type: string description: URL of the requested resource. title: Report CSV GetReportCsvResponse: type: object required: - meta - data properties: meta: $ref: "#/components/schemas/Meta" data: $ref: "#/components/schemas/GetReportCsvData" SimulationKind: type: string enum: - single_event - scenario description: Type of simulation. title: Simulation kind examples: - single_event - scenario x-enum-descriptions: single_event: description: Paddle simulates a single event. scenario: description: Paddle simulates a predefined series of events for a scenario, like all events created when a subscription renews. SimulationType: type: object required: - name - label - description - group - type - events properties: name: type: string description: Type of simulation sent by Paddle. Single event simulations are in the format `entity.event_type`; scenario simulations are in `snake_case`. examples: - subscription_creation - customer.created label: type: string description: Descriptive label for this simulation type. Typically gives more context about a scenario. Single event simulations are in the format `entity.event_type`. examples: - Subscription created from a checkout - customer.created description: type: string description: Short description of this simulation type. examples: - "`subscription.created` events occur when a subscription is created." group: type: string description: Group for this simulation type. Typically the entity that this event relates to. examples: - Subscriptions type: allOf: - $ref: "#/components/schemas/SimulationKind" description: Type of simulation. title: Simulation kind events: type: array items: $ref: "#/components/schemas/EventTypeName" description: List of events that will be sent for this simulation type. description: Represents a simulation type. title: Simulation type readOnly: true SimulationId: type: string pattern: ^ntfsim_[a-z\d]{26}$ description: Unique Paddle ID for this simulation, prefixed with `ntfsim_`. title: Simulation ID examples: - ntfsim_01ghbkd0frb9k95cnhwd1bxpvk readOnly: true SimulationPayload: type: object unevaluatedProperties: {} description: Simulation payload. A JSON object that matches the schema for an event type. title: Simulation payload SimulationStandardEventsModel: type: object required: - id - status - notification_setting_id - name - type - payload - config - last_run_at - created_at - updated_at properties: id: $ref: "#/components/schemas/SimulationId" status: allOf: - $ref: "#/components/schemas/Status" default: active notification_setting_id: allOf: - $ref: "#/components/schemas/NotificationSettingId" description: Paddle ID of the notification setting where this simulation is sent, prefixed with `ntfset_`. readOnly: true name: type: string description: Name of this simulation. type: allOf: - $ref: "#/components/schemas/EventTypeName" description: Single event sent for this simulation, in the format `entity.event_type`. payload: anyOf: - $ref: "#/components/schemas/SimulationPayload" - type: "null" description: Simulation payload. config: type: "null" description: Configuration for scenario simulations. `null` for single events. last_run_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this simulation was last run. `null` until run. Set automatically by Paddle. created_at: $ref: "#/components/schemas/CreatedAt" updated_at: $ref: "#/components/schemas/UpdatedAt" description: Single event simulations play a single event. title: Single event SimulationScenarioEventsType: type: string enum: - subscription_creation - subscription_renewal - subscription_pause - subscription_resume - subscription_cancellation description: Scenario for a simulation. title: SimulationScenarioType x-enum-descriptions: subscription_creation: description: Simulates all events sent when a subscription is created. subscription_renewal: description: Simulates all events sent when a subscription is renewed. subscription_pause: description: Simulates all events sent when a subscription is paused. subscription_resume: description: Simulates all events sent when a subscription is resumed. subscription_cancellation: description: Simulates all events sent when a subscription is canceled. SimulationConfigSubscriptionCancellationEntities: type: object required: - subscription_id properties: subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of a subscription to simulate as canceled. Adds details of that subscription to webhook payloads. x-permissions: - subscription.read - transaction.read description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionCancellationConfigEntities SimulationConfigSubscriptionCancellationOptionsEffectiveFrom: type: string enum: - next_billing_period - immediately x-enum-descriptions: next_billing_period: description: Simulates as if the subscription cancels at the start of next billing period. immediately: description: Simulates as if the subscription cancels immediately. SimulationConfigSubscriptionCancellationOptions: type: object required: - effective_from - has_past_due_transaction properties: effective_from: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCancellationOptionsEffectiveFrom" description: Determines which webhooks are sent based on when the subscription is paused or canceled. If omitted, defaults to `immediately`. default: immediately has_past_due_transaction: type: boolean description: Whether a simulated subscription has a past due transaction (`true`) or not (`false`), which determines whether events occur for canceling past due transactions. If omitted, defaults to `false`. default: false description: Options that determine which webhooks are sent as part of a simulation. title: SimulationSubscriptionCancellationConfigOptions SimulationConfigSubscriptionCancellation: type: object required: - entities - options properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCancellationEntities" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionCancellationConfigEntities options: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCancellationOptions" description: Options that determine which webhooks are sent as part of a simulation. title: SimulationSubscriptionCancellationConfigOptions description: Configuration for subscription canceled simulations. title: SimulationSubscriptionCancellationConfig SubscriptionItemWithPriceId: type: object required: - quantity - price_id properties: quantity: type: integer minimum: 1 description: Quantity to bill for. examples: - 5 price_id: allOf: - $ref: "#/components/schemas/PriceId" description: Paddle ID of an an existing catalog price to bill for. title: Subscription item create with price id SimulationConfigEntitiesSubscriptionCreation: type: object required: - customer_id - address_id - business_id - payment_method_id - discount_id - transaction_id - items properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of a customer. Adds customer details to webhook payloads. x-permissions: - customer.read address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of an address. Adds address details to webhook payloads. Requires `customer_id`. x-permissions: - address.read business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of a business. Adds business details to webhook payloads. Requires `customer_id`. x-permissions: - business.read payment_method_id: anyOf: - $ref: "#/components/schemas/PaymentMethodId" - type: "null" description: Paddle ID of a payment method. Adds payment method details to webhook payloads. Requires `customer_id`. x-permissions: - payment_method.read discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of a discount. Adds discount details (including price calculations) to webhook payloads. Requires `items` or `transaction_id` for the discount to be applied. x-permissions: - discount.read transaction_id: anyOf: - $ref: "#/components/schemas/TransactionId" - type: "null" description: Paddle ID of a transaction. Bases the subscription on the transaction. x-permissions: - transaction.read - product.read items: anyOf: - type: array items: $ref: "#/components/schemas/SubscriptionItemWithPriceId" - type: "null" description: Items to include on the simulated subscription. Only existing products and prices can be simulated. Non-catalog items aren't supported. At least one recurring price must be provided. x-permissions: - price.read - product.read description: Configuration resources for subscription creation simulations title: SimulationSubscriptionCreationConfigEntities SimulationConfigSubscriptionCreationOptionsCustomerSimulatedAs: type: string enum: - new - existing_email_matched - existing_details_prefilled x-enum-descriptions: new: description: Simulates as if a new customer enters their details at checkout and Paddle creates a new customer. existing_email_matched: description: Simulates as if an existing customer enters their details at checkout. Paddle matches it to an existing customer based on the email supplied and creates a new address for that customer. existing_details_prefilled: description: Simulates as if existing customer details are prefilled at checkout by passing them to Paddle.js. SimulationConfigSubscriptionCreationOptionsBusinessSimulatedAs: type: string enum: - not_provided - new - existing_details_prefilled x-enum-descriptions: not_provided: description: Simulates as if no business is provided. new: description: Simulates as if a customer enters their business details at checkout and Paddle creates a new business. existing_details_prefilled: description: Simulates as if an existing business is prefilled at checkout by passing it to Paddle.js. SimulationConfigSubscriptionCreationOptionsDiscountSimulatedAs: type: string enum: - not_provided - prefilled - entered_by_customer x-enum-descriptions: not_provided: description: Simulates as if no discount is entered. prefilled: description: Simulates as if a discount is prefilled at checkout by passing it to Paddle.js. Requires `entities.discount_id`. entered_by_customer: description: Simulates as if a customer entered a discount at checkout. Requires `entities.discount_id`. SimulationConfigSubscriptionCreationOptions: type: object required: - customer_simulated_as - business_simulated_as - discount_simulated_as properties: customer_simulated_as: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationOptionsCustomerSimulatedAs" description: Determines which webhooks are sent based on whether a new or existing customer subscribes, and how their details are entered if they're an existing customer. If omitted, defaults to `new`. default: new business_simulated_as: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationOptionsBusinessSimulatedAs" description: Determines which webhooks are sent based on whether a new, existing, or no business was provided. If omitted, defaults to `not_provided`. default: not_provided discount_simulated_as: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationOptionsDiscountSimulatedAs" description: Determines which webhooks are sent based on whether a discount is used and how it's entered. If omitted, defaults to `not_provided`. default: not_provided description: Options to configure subscription creation simulations. title: SimulationSubscriptionCreationConfigOptions SimulationConfigSubscriptionCreation: type: object required: - entities - options properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigEntitiesSubscriptionCreation" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. options: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationOptions" description: Options that determine which webhooks are sent as part of a simulation. description: Configuration for subscription creation simulations. title: SimulationSubscriptionCreationConfig SimulationConfigSubscriptionPauseEntities: type: object required: - subscription_id properties: subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of a subscription to simulate as paused. Adds details of that subscription to webhook payloads. x-permissions: - subscription.read - transaction.read description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionPauseConfigEntities SimulationConfigSubscriptionPauseOptionsEffectiveFrom: type: string enum: - next_billing_period - immediately x-enum-descriptions: next_billing_period: description: Simulates as if the subscription pauses at the start of next billing period. immediately: description: Simulates as if the subscription pauses immediately. SimulationConfigSubscriptionPauseOptions: type: object required: - effective_from - has_past_due_transaction properties: effective_from: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionPauseOptionsEffectiveFrom" description: Determines which webhooks are sent based on when the subscription is paused or canceled. If omitted, defaults to `immediately`. default: immediately has_past_due_transaction: type: boolean description: Whether a simulated subscription has a past due transaction (`true`) or not (`false`), which determines whether events occur for canceling past due transactions. If omitted, defaults to `false`. default: false description: Options that determine which webhooks are sent as part of a simulation. title: SimulationSubscriptionPauseConfigOptions SimulationConfigSubscriptionPause: type: object required: - entities - options properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionPauseEntities" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionPauseConfigEntities options: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionPauseOptions" description: Options that determine which webhooks are sent as part of a simulation. title: SimulationSubscriptionPauseConfigOptions description: Configuration for subscription paused simulations. title: SimulationSubscriptionPauseConfig SimulationConfigSubscriptionRenewalEntities: type: object required: - subscription_id properties: subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of a subscription to simulate as renewed. Adds details of that subscription to webhook payloads. x-permissions: - subscription.read - transaction.read description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionRenewalConfigEntities SimulationConfigOptionsPaymentPaymentOutcome: type: string enum: - success - recovered_existing_payment_method - recovered_updated_payment_method - failed x-enum-descriptions: success: description: Simulates as if the payment for the subscription is successful. recovered_existing_payment_method: description: Simulates as if the payment for the subscription fails initially and the payment is recovered when retrying the existing payment method. recovered_updated_payment_method: description: Simulates as if the payment for the subscription fails initially and the customer updates their payment method to successfully pay. failed: description: Simulates as if the payment for the subscription is unsuccessful after all payment recovery attempts are exhausted. SimulationConfigOptionsPaymentDunningExhaustedAction: type: string enum: - subscription_paused - subscription_canceled x-enum-descriptions: subscription_paused: description: Simulates as if the subscription is paused after all payment recovery attempts are exhausted. subscription_canceled: description: Simulates as if the subscription is paused after all payment recovery attempts are exhausted. SimulationConfigOptionsPayment: type: object required: - payment_outcome - dunning_exhausted_action properties: payment_outcome: allOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentPaymentOutcome" description: Determines which webhooks are sent based on the outcome of the payment. If omitted, defaults to `success`. title: SimulationConfigOptionPaymentOutcome default: success dunning_exhausted_action: anyOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentDunningExhaustedAction" - type: "null" description: Determines which webhooks are sent based on what happens to the subscription when payment recovery attempts are exhausted. Only applies when `payment_outcome` is `failed`. If omitted, defaults to `null`. title: SimulationConfigOptionDunningExhaustedAction default: null description: Options to configure simulations based on the payment outcome. title: Payment outcome options SimulationConfigSubscriptionRenewal: type: object required: - entities - options properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionRenewalEntities" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionRenewalConfigEntities options: allOf: - $ref: "#/components/schemas/SimulationConfigOptionsPayment" description: Options that determine which webhooks are sent as part of a simulation. description: Configuration for subscription renewed simulations. title: SimulationSubscriptionRenewalConfig SimulationConfigSubscriptionResumeEntities: type: object required: - subscription_id properties: subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of a subscription to simulate as resumed. Adds details of that subscription to webhook payloads. x-permissions: - subscription.read - transaction.read description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionResumeConfigEntities SimulationConfigSubscriptionResume: type: object required: - entities - options properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionResumeEntities" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionResumeConfigEntities options: allOf: - $ref: "#/components/schemas/SimulationConfigOptionsPayment" description: Options that determine which webhooks are sent as part of a simulation. description: Configuration for subscription resumed simulations. title: SimulationSubscriptionResumeConfig SimulationScenarioConfig: type: object required: - subscription_cancellation - subscription_creation - subscription_pause - subscription_renewal - subscription_resume properties: subscription_cancellation: anyOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCancellation" - type: "null" subscription_creation: anyOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreation" - type: "null" subscription_pause: anyOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionPause" - type: "null" subscription_renewal: anyOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionRenewal" - type: "null" subscription_resume: anyOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionResume" - type: "null" description: Configuration for this scenario simulation. Determines which granular flow is simulated and what entities are used to populate webhook payloads with. title: SimulationScenarioConfig SimulationScenarioEventsModel: type: object required: - id - status - notification_setting_id - name - type - payload - config - last_run_at - created_at - updated_at properties: id: $ref: "#/components/schemas/SimulationId" status: allOf: - $ref: "#/components/schemas/Status" default: active notification_setting_id: allOf: - $ref: "#/components/schemas/NotificationSettingId" description: Paddle ID of the notification setting where this simulation is sent, prefixed with `ntfset_`. readOnly: true name: type: string description: Name of this simulation. type: allOf: - $ref: "#/components/schemas/SimulationScenarioEventsType" description: Scenario for this simulation. Scenario simulations play all events sent for a subscription lifecycle event. payload: type: "null" description: Simulation payload. `null` for scenarios. config: anyOf: - $ref: "#/components/schemas/SimulationScenarioConfig" - type: "null" description: Configuration for this scenario simulation. Determines which granular flow is simulated and what entities are used to populate webhook payloads with. last_run_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this simulation was last run. `null` until run. Set automatically by Paddle. created_at: $ref: "#/components/schemas/CreatedAt" updated_at: $ref: "#/components/schemas/UpdatedAt" description: Scenario simulations play all events sent for a subscription lifecycle event. title: Scenario Simulation: oneOf: - $ref: "#/components/schemas/SimulationStandardEventsModel" - $ref: "#/components/schemas/SimulationScenarioEventsModel" description: Represents a simulation entity. title: Simulation SimulationStandardEventsCreate: type: object required: - notification_setting_id - name - type properties: notification_setting_id: allOf: - $ref: "#/components/schemas/NotificationSettingId" description: Paddle ID of the notification setting where this simulation is sent, prefixed with `ntfset_`. readOnly: true name: type: string description: Name of this simulation. type: allOf: - $ref: "#/components/schemas/EventTypeName" description: Single event sent for this simulation, in the format `entity.event_type`. payload: anyOf: - $ref: "#/components/schemas/SimulationPayload" - type: "null" description: Simulation payload. Pass a JSON object that matches the schema for an event type to simulate a custom payload. If omitted, Paddle populates with a demo example. description: Represents a simulation entity for a single event when creating. title: Single event additionalProperties: false SimulationConfigSubscriptionCancellationEntitiesCreate: type: object properties: subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of a subscription to simulate as canceled. Adds details of that subscription to webhook payloads. x-permissions: - subscription.read - transaction.read description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationConfigSubscriptionCancellationEntitiesCreate additionalProperties: false SimulationConfigSubscriptionCancellationOptionsCreate: type: object properties: effective_from: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCancellationOptionsEffectiveFrom" description: Determines which webhooks are sent based on when the subscription is paused or canceled. If omitted, defaults to `immediately`. default: immediately has_past_due_transaction: type: boolean description: Whether a simulated subscription has a past due transaction (`true`) or not (`false`), which determines whether events occur for canceling past due transactions. If omitted, defaults to `false`. default: false description: Options that determine which webhooks are sent as part of a simulation. title: SimulationConfigSubscriptionCancellationOptionsCreate additionalProperties: false SimulationConfigSubscriptionCancellationConfigCreate: type: object properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCancellationEntitiesCreate" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionCancellationConfigEntities options: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCancellationOptionsCreate" description: Options that determine which webhooks are sent as part of a simulation. title: SimulationSubscriptionCancellationConfigOptions description: Configuration for subscription canceled simulations. title: SimulationConfigSubscriptionCancellationConfigCreate additionalProperties: false SimulationConfigSubscriptionCancellationCreate: type: object properties: subscription_cancellation: $ref: "#/components/schemas/SimulationConfigSubscriptionCancellationConfigCreate" subscription_creation: type: "null" readOnly: true subscription_pause: type: "null" readOnly: true subscription_renewal: type: "null" readOnly: true subscription_resume: type: "null" readOnly: true description: Configuration for subscription canceled simulations. title: Subscription cancellation config additionalProperties: false SimulationConfigEntitiesSubscriptionCreationNoPrices: type: object properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of a customer. Adds customer details to webhook payloads. x-permissions: - customer.read address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of an address. Adds address details to webhook payloads. Requires `customer_id`. x-permissions: - address.read business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of a business. Adds business details to webhook payloads. Requires `customer_id`. x-permissions: - business.read payment_method_id: anyOf: - $ref: "#/components/schemas/PaymentMethodId" - type: "null" description: Paddle ID of a payment method. Adds payment method details to webhook payloads. Requires `customer_id`. x-permissions: - payment_method.read discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of an existing discount to apply to the simulated subscription. x-permissions: - discount.read items: type: "null" description: Items for the simulated subscription. Only existing products and prices can be simulated. Non-catalog items are not supported transaction_id: type: "null" description: Paddle ID of an existing transaction. Simulates passing a transaction ID to Paddle.js. description: Configuration resources for subscription creation simulations title: Subscription creation config without prices additionalProperties: false SubscriptionItemCreateWithPriceId: type: object required: - quantity - price_id properties: quantity: type: integer minimum: 1 description: Quantity to bill for. examples: - 5 price_id: allOf: - $ref: "#/components/schemas/PriceId" description: Paddle ID of an an existing catalog price to bill for. title: Subscription item create with price id SimulationConfigEntitiesSubscriptionCreationItems: type: object properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of a customer. Adds customer details to webhook payloads. x-permissions: - customer.read address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of an address. Adds address details to webhook payloads. Requires `customer_id`. x-permissions: - address.read business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of a business. Adds business details to webhook payloads. Requires `customer_id`. x-permissions: - business.read payment_method_id: anyOf: - $ref: "#/components/schemas/PaymentMethodId" - type: "null" description: Paddle ID of a payment method. Adds payment method details to webhook payloads. Requires `customer_id`. x-permissions: - payment_method.read discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of a discount. Adds discount details (including price calculations) to webhook payloads. Requires `items` or `transaction_id` for the discount to be applied. x-permissions: - discount.read items: type: array items: $ref: "#/components/schemas/SubscriptionItemCreateWithPriceId" minItems: 1 maxItems: 100 description: Items to include on the simulated subscription. Only existing products and prices can be simulated. Non-catalog items aren't supported. At least one recurring price must be provided. x-permissions: - price.read - product.read transaction_id: type: "null" description: Paddle ID of an existing transaction. Simulates passing a transaction ID to Paddle.js. description: Configuration resources for subscription creation simulations with items title: Subscription creation config for items additionalProperties: false SimulationConfigEntitiesSubscriptionCreationTransaction: type: object properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of a customer. Adds customer details to webhook payloads. x-permissions: - customer.read address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of an address. Adds address details to webhook payloads. Requires `customer_id`. x-permissions: - address.read business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of a business. Adds business details to webhook payloads. Requires `customer_id`. x-permissions: - business.read payment_method_id: anyOf: - $ref: "#/components/schemas/PaymentMethodId" - type: "null" description: Paddle ID of a payment method. Adds payment method details to webhook payloads. Requires `customer_id`. x-permissions: - payment_method.read discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of a discount. Adds discount details (including price calculations) to webhook payloads. Requires `items` or `transaction_id` for the discount to be applied. x-permissions: - discount.read transaction_id: allOf: - $ref: "#/components/schemas/TransactionId" description: Paddle ID of a transaction. Bases the subscription from this transaction. x-permissions: - transaction.read - product.read items: type: "null" description: Items to include on the simulated subscription. Only existing products and prices can be simulated. Non-catalog items aren't supported. At least one recurring price must be provided. description: Configuration resources for subscription creation simulations with existing transaction title: Subscription creation config for transaction additionalProperties: false SimulationConfigSubscriptionCreationOptionsCreate: type: object properties: customer_simulated_as: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationOptionsCustomerSimulatedAs" description: Determines which webhooks are sent based on whether a new or existing customer subscribes, and how their details are entered if they're an existing customer. If omitted, defaults to `new`. default: new business_simulated_as: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationOptionsBusinessSimulatedAs" description: Determines which webhooks are sent based on whether a new, existing, or no business was provided. If omitted, defaults to `not_provided`. default: not_provided discount_simulated_as: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationOptionsDiscountSimulatedAs" description: Determines which webhooks are sent based on whether a discount is used and how it's entered. If omitted, defaults to `not_provided`. default: not_provided description: Options to configure subscription creation simulations. title: SimulationSubscriptionCreationConfigOptionsCreate additionalProperties: false SimulationConfigSubscriptionCreationCreateSubscriptionCreation: type: object properties: entities: anyOf: - $ref: "#/components/schemas/SimulationConfigEntitiesSubscriptionCreationNoPrices" - $ref: "#/components/schemas/SimulationConfigEntitiesSubscriptionCreationItems" - $ref: "#/components/schemas/SimulationConfigEntitiesSubscriptionCreationTransaction" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionCreationConfigEntitiesCreate options: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationOptionsCreate" description: Options that determine which webhooks are sent as part of a simulation. description: Configuration for subscription creation simulations. title: SimulationSubscriptionCreationConfigCreate additionalProperties: false SimulationConfigSubscriptionCreationCreate: type: object properties: subscription_creation: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationCreateSubscriptionCreation" description: Configuration for subscription creation simulations. title: SimulationSubscriptionCreationConfigCreate subscription_cancellation: type: "null" readOnly: true subscription_pause: type: "null" readOnly: true subscription_renewal: type: "null" readOnly: true subscription_resume: type: "null" readOnly: true description: Configuration for subscription creation simulations. title: Subscription creation config additionalProperties: false SimulationConfigSubscriptionPauseEntitiesConfigCreate: type: object properties: subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of a subscription to simulate as paused. Adds details of that subscription to webhook payloads. x-permissions: - subscription.read - transaction.read description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationConfigSubscriptionPauseEntitiesConfigCreate additionalProperties: false SimulationConfigSubscriptionPauseOptionsConfigCreate: type: object properties: effective_from: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionPauseOptionsEffectiveFrom" description: Determines which webhooks are sent based on when the subscription is paused or canceled. If omitted, defaults to `immediately`. default: immediately has_past_due_transaction: type: boolean description: Whether a simulated subscription has a past due transaction (`true`) or not (`false`), which determines whether events occur for canceling past due transactions. If omitted, defaults to `false`. default: false description: Options that determine which webhooks are sent as part of a simulation. title: SimulationConfigSubscriptionPauseOptionsConfigCreate additionalProperties: false SimulationConfigSubscriptionPauseConfigCreate: type: object properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionPauseEntitiesConfigCreate" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionPauseConfigEntities options: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionPauseOptionsConfigCreate" description: Options that determine which webhooks are sent as part of a simulation. title: SimulationSubscriptionPauseConfigOptions description: Configuration for subscription paused simulations. title: SimulationConfigSubscriptionPauseConfigCreate additionalProperties: false SimulationConfigSubscriptionPauseCreate: type: object properties: subscription_pause: $ref: "#/components/schemas/SimulationConfigSubscriptionPauseConfigCreate" subscription_cancellation: type: "null" readOnly: true subscription_creation: type: "null" readOnly: true subscription_renewal: type: "null" readOnly: true subscription_resume: type: "null" readOnly: true description: Configuration for subscription paused simulations. title: Subscription paused config additionalProperties: false SimulationConfigSubscriptionRenewalCreateSubscriptionRenewalEntities: type: object properties: subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of a subscription to simulate as renewed. Adds details of that subscription to webhook payloads. x-permissions: - subscription.read - transaction.read description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionRenewalEntitiesCreate additionalProperties: false SimulationConfigOptionsPaymentSuccessPaymentOutcome: type: string enum: - success x-enum-descriptions: success: description: Simulates as if the payment for the subscription is successful. SimulationConfigOptionsPaymentSuccess: type: object properties: payment_outcome: allOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentSuccessPaymentOutcome" description: Determines which webhooks are sent based on the outcome of the payment. If omitted, defaults to `success`. title: SimulationConfigOptionSuccessfulPaymentOutcome default: success dunning_exhausted_action: type: "null" description: Determines which webhooks are sent based on what happens to the subscription when payment recovery attempts are exhausted. Only applies when `payment_outcome` is `failed`. If omitted, defaults to `null`. description: Options for when the payment outcome is successful. title: Successful payment outcome options additionalProperties: false SimulationConfigOptionsPaymentFailedPaymentOutcome: type: string enum: - failed x-enum-descriptions: failed: description: Simulates as if the payment for the subscription is unsuccessful after all payment recovery attempts are exhausted. SimulationConfigOptionsPaymentFailedDunningExhaustedAction: type: string enum: - subscription_paused - subscription_canceled x-enum-descriptions: subscription_paused: description: Simulates as if the subscription is paused after all payment recovery attempts are exhausted. subscription_canceled: description: Simulates as if the subscription is paused after all payment recovery attempts are exhausted. SimulationConfigOptionsPaymentFailed: type: object properties: payment_outcome: allOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentFailedPaymentOutcome" description: Determines which webhooks are sent based on the outcome of the payment. If omitted, defaults to `success`. title: SimulationConfigOptionFailedPaymentOutcome dunning_exhausted_action: allOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentFailedDunningExhaustedAction" description: Determines which webhooks are sent based on what happens to the subscription when payment recovery attempts are exhausted. If omitted, defaults to `subscription_canceled`. title: SimulationConfigOptionFailedDunningExhaustedAction default: subscription_canceled description: Options for when the payment outcome is failed. title: Failed payment outcome options additionalProperties: false SimulationConfigOptionsPaymentRecoveredExistingPaymentOutcome: type: string enum: - recovered_existing_payment_method x-enum-descriptions: recovered_existing_payment_method: description: Simulates as if the payment for the subscription fails initially and the payment is recovered when retrying the existing payment method. SimulationConfigOptionsPaymentRecoveredExisting: type: object properties: payment_outcome: allOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentRecoveredExistingPaymentOutcome" description: Determines which webhooks are sent based on the outcome of the payment. If omitted, defaults to `success`. title: SimulationConfigOptionRecoveredPaymentOutcome dunning_exhausted_action: type: "null" description: Determines which webhooks are sent based on what happens to the subscription when payment recovery attempts are exhausted. Only applies when `payment_outcome` is `failed`. If omitted, defaults to `null`. description: Options for when the payment is recovered from an existing payment method. title: Recovered from existing payment method payment outcome options additionalProperties: false SimulationConfigOptionsPaymentRecoveredUpdatedPaymentOutcome: type: string enum: - recovered_updated_payment_method x-enum-descriptions: recovered_updated_payment_method: description: Simulates as if the payment for the subscription fails initially and the customer updates their payment method to successfully pay. SimulationConfigOptionsPaymentRecoveredUpdated: type: object properties: payment_outcome: allOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentRecoveredUpdatedPaymentOutcome" description: Determines which webhooks are sent based on the outcome of the payment. If omitted, defaults to `success`. title: SimulationConfigOptionRecoveredUpdatedPaymentOutcome dunning_exhausted_action: type: "null" description: Determines which webhooks are sent based on what happens to the subscription when payment recovery attempts are exhausted. Only applies when `payment_outcome` is `failed`. If omitted, defaults to `null`. description: Options for when the payment is recovered from an updated payment method. title: Recovered from updated payment method payment outcome options additionalProperties: false SimulationConfigSubscriptionRenewalCreateSubscriptionRenewal: type: object properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionRenewalCreateSubscriptionRenewalEntities" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionRenewalEntitiesCreate options: oneOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentSuccess" - $ref: "#/components/schemas/SimulationConfigOptionsPaymentFailed" - $ref: "#/components/schemas/SimulationConfigOptionsPaymentRecoveredExisting" - $ref: "#/components/schemas/SimulationConfigOptionsPaymentRecoveredUpdated" description: Options that determine which webhooks are sent as part of a simulation. title: SimulationSubscriptionRenewalOptionsCreate description: Configuration for subscription renewed simulations. title: SimulationConfigSubscriptionRenewalCreateSubscriptionRenewal additionalProperties: false SimulationConfigSubscriptionRenewalCreate: type: object properties: subscription_renewal: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionRenewalCreateSubscriptionRenewal" description: Configuration for subscription renewed simulations. title: SimulationSubscriptionRenewalConfigCreate subscription_cancellation: type: "null" readOnly: true subscription_creation: type: "null" readOnly: true subscription_pause: type: "null" readOnly: true subscription_resume: type: "null" readOnly: true description: Configuration for subscription renewed simulations. title: Subscription renewal config additionalProperties: false SimulationConfigSubscriptionResumeCreateSubscriptionResumeEntities: type: object properties: subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of a subscription to simulate as resumed. Adds details of that subscription to webhook payloads. x-permissions: - subscription.read - transaction.read description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionResumeConfigEntitiesCreate additionalProperties: false SimulationConfigSubscriptionResumeCreateSubscriptionResume: type: object properties: entities: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionResumeCreateSubscriptionResumeEntities" description: Adds details of existing Paddle entities to webhook payloads sent in the simulation. title: SimulationSubscriptionResumeConfigEntitiesCreate options: oneOf: - $ref: "#/components/schemas/SimulationConfigOptionsPaymentSuccess" - $ref: "#/components/schemas/SimulationConfigOptionsPaymentFailed" - $ref: "#/components/schemas/SimulationConfigOptionsPaymentRecoveredExisting" - $ref: "#/components/schemas/SimulationConfigOptionsPaymentRecoveredUpdated" description: Options that determine which webhooks are sent as part of a simulation. title: SimulationSubscriptionResumeConfigOptionsCreate description: Configuration for subscription resumed simulations. title: SimulationSubscriptionResumeConfigCreate additionalProperties: false SimulationConfigSubscriptionResumeCreate: type: object properties: subscription_resume: allOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionResumeCreateSubscriptionResume" description: Configuration for subscription resumed simulations. title: SimulationSubscriptionResumeConfigCreate subscription_cancellation: type: "null" readOnly: true subscription_creation: type: "null" readOnly: true subscription_pause: type: "null" readOnly: true subscription_renewal: type: "null" readOnly: true description: Configuration for subscription resumed simulations. title: Subscription resume config additionalProperties: false SimulationScenarioCreateConfig: oneOf: - $ref: "#/components/schemas/SimulationConfigSubscriptionCancellationCreate" - $ref: "#/components/schemas/SimulationConfigSubscriptionCreationCreate" - $ref: "#/components/schemas/SimulationConfigSubscriptionPauseCreate" - $ref: "#/components/schemas/SimulationConfigSubscriptionRenewalCreate" - $ref: "#/components/schemas/SimulationConfigSubscriptionResumeCreate" description: Configuration for this scenario simulation. Use to simulate more granular flows and populate payloads with your own entity data. title: SimulationScenarioCreateConfig SimulationScenarioEventsCreate: type: object required: - notification_setting_id - name - type properties: notification_setting_id: allOf: - $ref: "#/components/schemas/NotificationSettingId" description: Paddle ID of the notification setting where this simulation is sent, prefixed with `ntfset_`. readOnly: true name: type: string description: Name of this simulation. type: allOf: - $ref: "#/components/schemas/SimulationScenarioEventsType" description: Scenario for this simulation. Scenario simulations play all events sent for a subscription lifecycle event. config: allOf: - $ref: "#/components/schemas/SimulationScenarioCreateConfig" description: Configuration for this scenario simulation. Use to simulate more granular flows and populate payloads with your own entity data. If omitted, Paddle simulates the default scenario flow and populates payloads with demo examples. description: Represents a simulation entity for a scenario when creating. title: Scenario additionalProperties: false SimulationCreate: oneOf: - $ref: "#/components/schemas/SimulationStandardEventsCreate" - $ref: "#/components/schemas/SimulationScenarioEventsCreate" description: Represents a simulation entity when creating. title: SimulationCreate SimulationStandardEventsUpdate: type: object properties: notification_setting_id: allOf: - $ref: "#/components/schemas/NotificationSettingId" description: Paddle ID of the notification setting where this simulation is sent, prefixed with `ntfset_`. readOnly: true name: type: string description: Name of this simulation. status: $ref: "#/components/schemas/Status" type: allOf: - $ref: "#/components/schemas/EventTypeName" description: Single event sent for this simulation, in the format `entity.event_type`. payload: anyOf: - $ref: "#/components/schemas/SimulationPayload" - type: "null" description: Simulation payload. Pass a JSON object that matches the schema for an event type to simulate a custom payload. Set to `null` to clear and populate with a demo example. description: Represents a simulation entity for a single event when updating. title: Single event additionalProperties: false SimulationScenarioEventsUpdate: type: object properties: notification_setting_id: allOf: - $ref: "#/components/schemas/NotificationSettingId" description: Paddle ID of the notification setting where this simulation is sent, prefixed with `ntfset_`. readOnly: true name: type: string description: Name of this simulation. status: $ref: "#/components/schemas/Status" type: allOf: - $ref: "#/components/schemas/SimulationScenarioEventsType" description: Scenario for this simulation. Scenario simulations play all events sent for a subscription lifecycle event. config: allOf: - $ref: "#/components/schemas/SimulationScenarioCreateConfig" description: Configuration for this scenario simulation. Use to simulate more granular flows and populate payloads with your own entity data. If omitted, Paddle simulates the default scenario flow and populates payloads with demo examples. description: Represents a simulation entity for a scenario when updating. title: Scenario additionalProperties: false SimulationUpdate: oneOf: - $ref: "#/components/schemas/SimulationStandardEventsUpdate" - $ref: "#/components/schemas/SimulationScenarioEventsUpdate" description: Represents a simulation entity when updating. title: SimulationUpdate SimulationsRunIncludeEnum: type: string enum: - events x-enum-permissions: events: - notification_simulation.read x-enum-descriptions: events: description: Include an array of events related to this simulation run in the response. SimulationRunId: type: string pattern: ^ntfsimrun_[a-z\d]{26}$ description: Unique Paddle ID for this simulation run, prefixed with `ntfsimrun_`. title: Simulation Run ID examples: - ntfsimrun_01ghbkd0frb9k95cnhwd1bxpvk readOnly: true SimulationRunStatus: type: string enum: - pending - completed - canceled description: Status of this simulation run. title: SimulationRunStatus readOnly: true x-enum-descriptions: pending: description: Simulation run is pending. Paddle is sending events that are part of this simulation. completed: description: Simulation run is completed. Paddle attempted to send events that are part of this simulation. canceled: description: Simulation run is canceled. Simulation run was canceled before all events were sent. SimulationEventId: type: string pattern: ^ntfsimevt_[a-z\d]{26}$ description: Unique Paddle ID for this simulation event, prefixed with `ntfsimevt_`. title: Simulation Event ID examples: - ntfsimevt_01hvg8ykjrcdr4jvv9rqcbkhfa readOnly: true SimulationEventStatus: type: string enum: - pending - success - failed - aborted description: Status of this simulation run log. title: SimulationEventStatus x-enum-descriptions: pending: description: Simulation run log is pending. Paddle hasn't yet tried to deliver the simulated event. success: description: Simulation run log was successful. Paddle delivered the simulated event successfully. failed: description: Simulation run log failed. Paddle tried to deliver the simulated event, but it failed. If `response` object is `null`, no response received from your server. Check your notification setting endpoint configuration. aborted: description: Simulation run log aborted. Paddle could not attempt delivery of the simulated event. SimulationEventRequest: type: object required: - body properties: body: type: string description: Request body sent by Paddle. title: SimulationEventRequestBody readOnly: true description: Information about the request. Sent by Paddle as part of the simulation. title: SimulationEventRequest SimulationEventResponse: type: object required: - body - status_code properties: body: type: string description: Response body sent by the responding server. May be empty for success responses. title: SimulationEventResponseBody readOnly: true status_code: type: number description: HTTP status code sent by the responding server. title: SimulationEventResponseStatus readOnly: true description: Information about the response. Sent by the responding server for the notification setting. title: SimulationEventResponse SimulationEvent: type: object required: - id - status - event_type - payload - request - response - created_at - updated_at properties: id: allOf: - $ref: "#/components/schemas/SimulationEventId" readOnly: true status: allOf: - $ref: "#/components/schemas/SimulationEventStatus" readOnly: true event_type: allOf: - $ref: "#/components/schemas/EventTypeName" readOnly: true payload: allOf: - $ref: "#/components/schemas/SimulationPayload" description: Simulation payload. Pass a JSON object that matches the schema for an event type to simulate a custom payload. If omitted, Paddle populates with a demo example. readOnly: true request: anyOf: - $ref: "#/components/schemas/SimulationEventRequest" - type: "null" description: Information about the request. Sent by Paddle as part of the simulation. title: SimulationEventRequest response: anyOf: - $ref: "#/components/schemas/SimulationEventResponse" - type: "null" description: Information about the response. Sent by the responding server for the notification setting. title: SimulationEventResponse created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents a simulation event. title: SimulationEvent SimulationRunSingleEventIncludesModel: type: object required: - id - status - created_at - updated_at - type properties: id: allOf: - $ref: "#/components/schemas/SimulationRunId" readOnly: true status: $ref: "#/components/schemas/SimulationRunStatus" created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true type: allOf: - $ref: "#/components/schemas/EventTypeName" description: Single event sent for this simulation, in the format `entity.event_type`. events: type: array items: $ref: "#/components/schemas/SimulationEvent" description: |- Events associated with this simulation run. Paddle creates a list of events for each simulation runs. Returned when the `include` parameter is used with the `events` value. title: SimulationEvent x-included: true description: Single event simulations play a single event. title: Single event run SimulationRunScenarioIncludesModel: type: object required: - id - status - created_at - updated_at - type properties: id: allOf: - $ref: "#/components/schemas/SimulationRunId" readOnly: true status: $ref: "#/components/schemas/SimulationRunStatus" created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true type: allOf: - $ref: "#/components/schemas/SimulationScenarioEventsType" description: Scenario for this simulation. Scenario simulations play all events sent for a subscription lifecycle event. events: type: array items: $ref: "#/components/schemas/SimulationEvent" description: |- Events associated with this simulation run. Paddle creates a list of events for each simulation runs. Returned when the `include` parameter is used with the `events` value. title: SimulationEvent x-included: true description: Scenario simulations play all events sent for a subscription lifecycle event. title: Scenario run SimulationRunIncludes: oneOf: - $ref: "#/components/schemas/SimulationRunSingleEventIncludesModel" - $ref: "#/components/schemas/SimulationRunScenarioIncludesModel" description: Represents a simulation run entity. title: SimulationRunIncludes SimulationRunSingleEventModel: type: object required: - id - status - created_at - updated_at - type properties: id: allOf: - $ref: "#/components/schemas/SimulationRunId" readOnly: true status: $ref: "#/components/schemas/SimulationRunStatus" created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true type: allOf: - $ref: "#/components/schemas/EventTypeName" description: Single event sent for this simulation, in the format `entity.event_type`. description: Single event simulations play a single event. title: Single event run SimulationRunScenarioModel: type: object required: - id - status - created_at - updated_at - type properties: id: allOf: - $ref: "#/components/schemas/SimulationRunId" readOnly: true status: $ref: "#/components/schemas/SimulationRunStatus" created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true type: allOf: - $ref: "#/components/schemas/SimulationScenarioEventsType" description: Scenario for this simulation. Scenario simulations play all events sent for a subscription lifecycle event. description: Scenario simulations play all events sent for a subscription lifecycle event. title: Scenario run SimulationRun: oneOf: - $ref: "#/components/schemas/SimulationRunSingleEventModel" - $ref: "#/components/schemas/SimulationRunScenarioModel" description: Represents a simulation run entity. title: SimulationRun SubscriptionHistoryActionQuery: type: string enum: - subscription_activated - subscription_address_updated - subscription_billing_cycle_updated - subscription_billing_date_updated - subscription_billing_details_updated - subscription_business_added - subscription_business_removed - subscription_business_updated - subscription_canceled - subscription_collection_mode_updated - subscription_consent_requirement_granted - subscription_created - subscription_currency_updated - subscription_custom_data_updated - subscription_customer_updated - subscription_discount_added - subscription_discount_expired - subscription_discount_removed - subscription_item_added - subscription_item_quantity_updated - subscription_item_removed - subscription_one_off_charge_applied - subscription_past_due - subscription_paused - subscription_payment_attempted - subscription_payment_method_added - subscription_payment_method_removed - subscription_payment_method_updated - subscription_renewed - subscription_resumed - subscription_scheduled_change_added - subscription_scheduled_change_removed - subscription_scheduled_change_updated description: Used to filter subscription history entries by action type. title: Subscription History Action Query x-enum-descriptions: subscription_activated: description: Return history entries where the action is `subscription_activated`. The subscription's status became `active`. subscription_address_updated: description: Return history entries where the action is `subscription_address_updated`. The address on the subscription was changed. subscription_billing_cycle_updated: description: Return history entries where the action is `subscription_billing_cycle_updated`. The billing cycle that sets how often the subscription renews was changed. subscription_billing_date_updated: description: Return history entries where the action is `subscription_billing_date_updated`. The date the subscription next renews was changed. subscription_billing_details_updated: description: Return history entries where the action is `subscription_billing_details_updated`. The billing details for the subscription's invoices were changed. subscription_business_added: description: Return history entries where the action is `subscription_business_added`. A business was added to the subscription. subscription_business_removed: description: Return history entries where the action is `subscription_business_removed`. The business was removed from the subscription. subscription_business_updated: description: Return history entries where the action is `subscription_business_updated`. The business on the subscription was changed. subscription_canceled: description: Return history entries where the action is `subscription_canceled`. The subscription's status became `canceled`. subscription_collection_mode_updated: description: Return history entries where the action is `subscription_collection_mode_updated`. How the subscription is collected, automatically or manually, was changed. subscription_consent_requirement_granted: description: Return history entries where the action is `subscription_consent_requirement_granted`. A consent requirement on the subscription was granted. subscription_created: description: Return history entries where the action is `subscription_created`. The subscription was created. subscription_currency_updated: description: Return history entries where the action is `subscription_currency_updated`. The currency the subscription is billed in was changed. subscription_custom_data_updated: description: Return history entries where the action is `subscription_custom_data_updated`. The custom data on the subscription was changed. subscription_customer_updated: description: Return history entries where the action is `subscription_customer_updated`. The customer the subscription belongs to was changed. subscription_discount_added: description: Return history entries where the action is `subscription_discount_added`. A discount was added to the subscription. subscription_discount_expired: description: Return history entries where the action is `subscription_discount_expired`. A discount on the subscription reached its end date and expired. subscription_discount_removed: description: Return history entries where the action is `subscription_discount_removed`. A discount was removed from the subscription. subscription_item_added: description: Return history entries where the action is `subscription_item_added`. An item was added to the subscription. subscription_item_quantity_updated: description: Return history entries where the action is `subscription_item_quantity_updated`. The quantity of an item on the subscription was changed. subscription_item_removed: description: Return history entries where the action is `subscription_item_removed`. An item was removed from the subscription. subscription_one_off_charge_applied: description: Return history entries where the action is `subscription_one_off_charge_applied`. A one-time charge was applied to the subscription. subscription_past_due: description: Return history entries where the action is `subscription_past_due`. The subscription's status became `past_due` after a payment failed. subscription_paused: description: Return history entries where the action is `subscription_paused`. The subscription's status became `paused`. subscription_payment_attempted: description: Return history entries where the action is `subscription_payment_attempted`. A payment for a change to the subscription was attempted and failed. subscription_payment_method_added: description: Return history entries where the action is `subscription_payment_method_added`. A payment method was added to the subscription. subscription_payment_method_removed: description: Return history entries where the action is `subscription_payment_method_removed`. A payment method was removed from the subscription. subscription_payment_method_updated: description: Return history entries where the action is `subscription_payment_method_updated`. The payment method on the subscription was changed. subscription_renewed: description: Return history entries where the action is `subscription_renewed`. The subscription renewed for a new billing period. subscription_resumed: description: Return history entries where the action is `subscription_resumed`. The subscription's status became `active` after being paused. subscription_scheduled_change_added: description: Return history entries where the action is `subscription_scheduled_change_added`. A scheduled change was added to the subscription. subscription_scheduled_change_removed: description: Return history entries where the action is `subscription_scheduled_change_removed`. A scheduled change was removed from the subscription. subscription_scheduled_change_updated: description: Return history entries where the action is `subscription_scheduled_change_updated`. A scheduled change on the subscription was changed. SubscriptionHistorySourceQuery: type: string enum: - system - api - dashboard - customer_portal - support_bot - retain - checkout - external_provider - paddle_classic - unknown x-enum-descriptions: system: description: Return history entries where the source is `system`. The entry originated from an internal system process. api: description: Return history entries where the source is `api`. The entry originated from the Paddle API. dashboard: description: Return history entries where the source is `dashboard`. The entry originated from the dashboard. customer_portal: description: Return history entries where the source is `customer_portal`. The entry originated from the customer portal. support_bot: description: Return history entries where the source is `support_bot`. The entry originated from Paddle.net. retain: description: Return history entries where the source is `retain`. The entry originated from Paddle Retain. checkout: description: Return history entries where the source is `checkout`. The entry originated from Paddle Checkout. external_provider: description: Return history entries where the source is `external_provider`. The entry originated from an import from an external provider. paddle_classic: description: Return history entries where the source is `paddle_classic`. The entry originated from an import from Paddle Classic. unknown: description: Return history entries where the source is `unknown`. The entry happened before history recording began and its source couldn't be determined. SubscriptionHistoryActorTypeQuery: type: string enum: - customer - user - api_key - paddle_staff - publisher - system x-enum-descriptions: customer: description: Return history entries where the actor type is `customer`. The action was performed by a customer. user: description: Return history entries where the actor type is `user`. The action was performed by a Paddle user account. api_key: description: Return history entries where the actor type is `api_key`. The action was performed by an API key. paddle_staff: description: Return history entries where the actor type is `paddle_staff`. The action was performed by a member of the Paddle team. publisher: description: Return history entries where the actor type is `publisher`. The action was performed by a publisher (app) acting on behalf of a user or seller. system: description: Return history entries where the actor type is `system`. The action was performed by an internal system process. SubscriptionHistoryReasonQuery: type: string enum: - cardless_trial_ended - import_issue - missing_consent - seller_request - customer_request - chargeback x-enum-descriptions: cardless_trial_ended: description: Return history entries where the reason is `cardless_trial_ended`. import_issue: description: Return history entries where the reason is `import_issue`. missing_consent: description: Return history entries where the reason is `missing_consent`. seller_request: description: Return history entries where the reason is `seller_request`. customer_request: description: Return history entries where the reason is `customer_request`. chargeback: description: Return history entries where the reason is `chargeback`. SubscriptionHistoryId: type: string pattern: ^subhis_[a-z\d]{26}$ description: Unique Paddle ID for this subscription history entry, prefixed with `subhis_`. title: Subscription History ID examples: - subhis_01kagxfkdpvsdvnm7xw4avwvsp SubscriptionHistoryGroupId: type: string pattern: ^subhisgrp_[a-z\d]{26}$ description: Unique Paddle ID for this subscription history group. History entries that occurred at the same time, as part of the same request, share the same group ID. Prefixed with `subhisgrp_`. title: Subscription History Group ID examples: - subhisgrp_01kagxffkcme9fhd6srqgkmssd ActionSource: type: string enum: - system - api - dashboard - customer_portal - support_bot - retain - checkout - external_provider - paddle_classic - unknown description: Where the entry originated from. title: Action Source x-enum-descriptions: system: description: Entry originated from an internal system process. api: description: Entry originated from the Paddle API. dashboard: description: Entry originated from the dashboard. customer_portal: description: Entry originated from the customer portal. support_bot: description: Entry originated from Paddle.net. retain: description: Entry originated from Paddle Retain. checkout: description: Entry originated from Paddle Checkout. external_provider: description: Entry originated from an import from an external provider. paddle_classic: description: Entry originated from an import from Paddle Classic. unknown: description: Entry happened before history recording began. Its source couldn't be determined. ActorType: type: string enum: - customer - user - api_key - paddle_staff - publisher - system description: The type of actor that performed this action. title: Actor Type x-enum-descriptions: customer: description: Action was performed by a customer. user: description: Action was performed by a Paddle user account. api_key: description: Action was performed by an API key. paddle_staff: description: Action was performed by a member of the Paddle team. publisher: description: Action was performed by a publisher (app) acting on behalf of a user or seller. system: description: Action was performed by an internal system process. Actor: type: object required: - type - id properties: type: allOf: - $ref: "#/components/schemas/ActorType" description: The type of actor that performed this action. id: anyOf: - type: string - type: "null" description: The ID of the actor in relation to the `type`. `null` where the type of actor doesn't have an ID. description: Details about the actor that performed an action. title: Actor SubscriptionHistoryReasonEnum: type: string enum: - cardless_trial_ended - import_issue - missing_consent - seller_request - customer_request - chargeback description: Why the entry was created. Only applicable to certain actions. title: Subscription History Reason x-enum-descriptions: cardless_trial_ended: description: The subscription was a cardless trial and was automatically canceled because no payment method was added. Relates to `subscription_canceled` actions. import_issue: description: The subscription was canceled because of an issue during import. Relates to `subscription_canceled` actions. missing_consent: description: The subscription was automatically canceled because the customer didn't grant a required consent to continue. Relates to `subscription_canceled` actions. seller_request: description: A Paddle user on your account requested that Paddle cancel this subscription. Relates to `subscription_canceled` actions. customer_request: description: The customer requested that Paddle cancel this subscription. Relates to `subscription_canceled` actions. chargeback: description: The subscription was automatically canceled because of a chargeback on one of its transactions. Relates to `subscription_canceled` actions. SubscriptionHistoryReason: anyOf: - $ref: "#/components/schemas/SubscriptionHistoryReasonEnum" - type: "null" description: Why the entry was created. Only applicable to certain actions; `null` otherwise. StatusSubscription: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus readOnly: true x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. SubscriptionHistoryDetailSubscriptionActivated: type: object required: - action - status - first_billed_at - next_billed_at - current_billing_period - transaction_id properties: action: type: string enum: - subscription_activated description: What happened on the subscription. x-enum-descriptions: subscription_activated: description: The subscription's status became `active`. status: allOf: - $ref: "#/components/schemas/StatusSubscription" description: Status of the subscription after activation. first_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when the subscription was first billed. `null` when the subscription has never been billed — for example, an imported subscription recovering from `past_due`. next_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when the subscription was next scheduled to be billed at the time of activation. `null` when the subscription has no next billing date — for example, a recovered `past_due` subscription that is scheduled to cancel or pause. current_billing_period: allOf: - $ref: "#/components/schemas/TimePeriod" description: Billing period of the subscription at the time of activation. transaction_id: allOf: - $ref: "#/components/schemas/TransactionId" description: Paddle ID of the transaction that activated the subscription, prefixed with `txn_`. description: Details specific to `subscription_activated` actions. title: Activated SubscriptionHistoryDetailSubscriptionAddressUpdated: type: object required: - action - address properties: action: type: string enum: - subscription_address_updated description: What happened on the subscription. x-enum-descriptions: subscription_address_updated: description: The address on the subscription was changed. address: allOf: - $ref: "#/components/schemas/Address" description: Updated address against the subscription. This is what the address was changed to. description: Details specific to `subscription_address_updated` actions. title: Address updated SubscriptionHistoryDetailSubscriptionBillingCycleUpdated: type: object required: - action - billing_cycle - current_billing_period - next_billed_at properties: action: type: string enum: - subscription_billing_cycle_updated description: What happened on the subscription. x-enum-descriptions: subscription_billing_cycle_updated: description: The billing cycle that sets how often the subscription renews was changed. billing_cycle: allOf: - $ref: "#/components/schemas/Duration" description: Updated billing cycle of the subscription. This is what the billing cycle was changed to. current_billing_period: allOf: - $ref: "#/components/schemas/TimePeriod" description: Billing period of the subscription after the billing cycle was updated. next_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when the subscription was next scheduled to be billed after the billing cycle was updated. `null` if the subscription has no next billing date (for example, paused without a scheduled resume). description: Details specific to `subscription_billing_cycle_updated` actions. title: Billing cycle updated SubscriptionUpdateProrationBillingMode: type: string enum: - prorated_immediately - prorated_next_billing_period - full_immediately - full_next_billing_period - do_not_bill description: |- How Paddle should handle proration calculation for changes made to a subscription or its items. Required when making changes that impact billing. For automatically-collected subscriptions, responses may take longer than usual if a proration billing mode that collects for payment immediately is used. title: Proration billing mode x-enum-descriptions: prorated_immediately: description: |- Paddle calculates the prorated amount for the subscription changes based on the current billing cycle, then creates a transaction to collect immediately. prorated_next_billing_period: description: |- Paddle calculates the prorated amount for the subscription changes based on the current billing cycle, then schedules them to be billed on the next renewal. full_immediately: description: |- Paddle does not calculate proration for the subscription changes, creating a transaction to collect for the full amount immediately. full_next_billing_period: description: |- Paddle does not calculate proration for the subscription changes, scheduling for the full amount for the changes to be billed on the next renewal. do_not_bill: description: Paddle does not bill for the subscription changes. SubscriptionHistoryDetailSubscriptionBillingDateUpdated: type: object required: - action - next_billed_at - current_billing_period - transaction_id - proration_billing_mode properties: action: type: string enum: - subscription_billing_date_updated description: What happened on the subscription. x-enum-descriptions: subscription_billing_date_updated: description: The date the subscription next renews was changed. next_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of the updated billing date. `null` when the subscription has no upcoming billing date, for example when a scheduled pause or cancellation means it will not be billed again. current_billing_period: allOf: - $ref: "#/components/schemas/TimePeriod" description: Billing period of the subscription after the billing date was updated. transaction_id: anyOf: - $ref: "#/components/schemas/TransactionId" - type: "null" description: Paddle ID of the transaction created as a result of the billing date change, prefixed with `txn_`. `null` if no transaction was created. proration_billing_mode: allOf: - $ref: "#/components/schemas/SubscriptionUpdateProrationBillingMode" description: How proration was calculated for this billing date change. description: Details specific to `subscription_billing_date_updated` actions. title: Billing date updated SubscriptionHistoryDetailSubscriptionBillingDetailsUpdated: type: object required: - action - billing_details properties: action: type: string enum: - subscription_billing_details_updated description: What happened on the subscription. x-enum-descriptions: subscription_billing_details_updated: description: The billing details for the subscription's invoices were changed. billing_details: allOf: - $ref: "#/components/schemas/BillingDetails" description: Updated billing details on the subscription. This is what the billing details were changed to. description: Details specific to `subscription_billing_details_updated` actions. title: Billing details updated SubscriptionHistoryDetailSubscriptionBusinessAdded: type: object required: - action - business properties: action: type: string enum: - subscription_business_added description: What happened on the subscription. x-enum-descriptions: subscription_business_added: description: A business was added to the subscription. business: allOf: - $ref: "#/components/schemas/Business" description: New business on the subscription. description: Details specific to `subscription_business_added` actions. title: Business added SubscriptionHistoryDetailSubscriptionBusinessRemoved: type: object required: - action - business properties: action: type: string enum: - subscription_business_removed description: What happened on the subscription. x-enum-descriptions: subscription_business_removed: description: The business was removed from the subscription. business: allOf: - $ref: "#/components/schemas/Business" description: Business that was removed from the subscription. description: Details specific to `subscription_business_removed` actions. title: Business removed SubscriptionHistoryDetailSubscriptionBusinessUpdated: type: object required: - action - business properties: action: type: string enum: - subscription_business_updated description: What happened on the subscription. x-enum-descriptions: subscription_business_updated: description: The business on the subscription was changed. business: allOf: - $ref: "#/components/schemas/Business" description: Updated business on the subscription. This is what the business was changed to. description: Details specific to `subscription_business_updated` actions. title: Business updated SubscriptionHistoryCanceledEffectiveFrom: type: string enum: - immediately - next_billing_period description: When the subscription cancellation took effect. x-enum-descriptions: immediately: description: The subscription was canceled immediately. next_billing_period: description: The subscription was scheduled to cancel at the next billing period. SubscriptionHistoryDetailSubscriptionCanceled: type: object required: - action - effective_from properties: action: type: string enum: - subscription_canceled description: What happened on the subscription. x-enum-descriptions: subscription_canceled: description: The subscription's status became `canceled`. effective_from: anyOf: - $ref: "#/components/schemas/SubscriptionHistoryCanceledEffectiveFrom" - type: "null" description: Whether the subscription was canceled immediately, or scheduled to cancel. description: Details specific to `subscription_canceled` actions. title: Canceled SubscriptionHistoryDetailSubscriptionCollectionModeUpdated: type: object required: - action - collection_mode properties: action: type: string enum: - subscription_collection_mode_updated description: What happened on the subscription. x-enum-descriptions: subscription_collection_mode_updated: description: How the subscription is collected, automatically or manually, was changed. collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for this subscription. This is what the collection mode was changed to. description: Details specific to `subscription_collection_mode_updated` actions. title: Collection mode updated SubscriptionHistoryDetailSubscriptionConsentRequirementGranted: type: object required: - action - consent_requirement properties: action: type: string enum: - subscription_consent_requirement_granted description: What happened on the subscription. x-enum-descriptions: subscription_consent_requirement_granted: description: A consent requirement on the subscription was granted. consent_requirement: allOf: - $ref: "#/components/schemas/SubscriptionConsentRequirement" description: Details about the consent requirement that was granted. description: Details specific to `subscription_consent_requirement_granted` actions. title: Consent requirement granted SubscriptionHistoryDetailItem: type: object required: - price - quantity properties: price: allOf: - $ref: "#/components/schemas/Price" description: Price on the subscription. quantity: type: integer description: Quantity of the item on the subscription at the time of the history entry. description: Represents a change to an item on the subscription at the time of a history entry. title: Subscription history item SubscriptionHistoryDiscountType: type: string enum: - recurring - one-off description: The type of discount. x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period. SubscriptionHistoryDiscount: type: object required: - discount - type - starts_at - ends_at properties: discount: allOf: - $ref: "#/components/schemas/Discount" description: Discount on the subscription. type: allOf: - $ref: "#/components/schemas/SubscriptionHistoryDiscountType" description: The type of discount. starts_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when the discount is effective from on the subscription. ends_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when the discount stops being effective on the subscription. `null` if the discount does not have an end date. description: Details of a discount on a subscription at the time of a history entry. title: Subscription history discount SubscriptionHistoryDetailSubscriptionCreated: type: object required: - action - status - collection_mode - billing_details - customer - address - business - currency_code - current_billing_period - billing_cycle - items - custom_data - discount - has_payment_method properties: action: type: string enum: - subscription_created description: What happened on the subscription. x-enum-descriptions: subscription_created: description: The subscription was created. status: anyOf: - $ref: "#/components/schemas/StatusSubscription" - type: "null" description: Status of the subscription when it was created. `null` if created before history recording began and this couldn't be determined. collection_mode: anyOf: - $ref: "#/components/schemas/CollectionMode" - type: "null" description: The collection mode of the subscription when it was created. billing_details: anyOf: - $ref: "#/components/schemas/BillingDetails" - type: "null" description: "Details for invoicing. Only returned for manually-collected subscriptions (`collection_mode: manual`)." customer: anyOf: - $ref: "#/components/schemas/Customer" - type: "null" description: Customer for the subscription when it was created. address: anyOf: - $ref: "#/components/schemas/Address" - type: "null" description: Address for the subscription when it was created. business: anyOf: - $ref: "#/components/schemas/Business" - type: "null" description: Business for the subscription when it was created. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code of the subscription when it was created. current_billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Current billing period of the subscription when it was created. billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: Billing cycle of the subscription when it was created. items: anyOf: - type: array items: $ref: "#/components/schemas/SubscriptionHistoryDetailItem" - type: "null" description: Items on the subscription when it was created. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Custom data of the subscription when it was created. discount: anyOf: - $ref: "#/components/schemas/SubscriptionHistoryDiscount" - type: "null" description: Discount attached to the subscription when it was created. has_payment_method: anyOf: - type: boolean - type: "null" description: Whether the subscription had a payment method when it was created. `null` if this couldn't be determined. description: Details specific to `subscription_created` actions. title: Created SubscriptionHistoryDetailSubscriptionCurrencyUpdated: type: object required: - action - currency_code properties: action: type: string enum: - subscription_currency_updated description: What happened on the subscription. x-enum-descriptions: subscription_currency_updated: description: The currency the subscription is billed in was changed. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Updated three-letter ISO 4217 currency code for the currency on this subscription. This is what the currency was changed to. description: Details specific to `subscription_currency_updated` actions. title: Currency updated SubscriptionHistoryDetailSubscriptionCustomDataUpdated: type: object required: - action - custom_data properties: action: type: string enum: - subscription_custom_data_updated description: What happened on the subscription. x-enum-descriptions: subscription_custom_data_updated: description: The custom data on the subscription was changed. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Updated custom data on the subscription. `null` if custom data was removed. This is what the custom data was changed to. description: Details specific to `subscription_custom_data_updated` actions. title: Custom data updated SubscriptionHistoryDetailSubscriptionCustomerUpdated: type: object required: - action - customer properties: action: type: string enum: - subscription_customer_updated description: What happened on the subscription. x-enum-descriptions: subscription_customer_updated: description: The customer the subscription belongs to was changed. customer: allOf: - $ref: "#/components/schemas/Customer" description: Updated customer on the subscription. This is what the customer was changed to. description: Details specific to `subscription_customer_updated` actions. title: Customer updated SubscriptionHistoryDetailSubscriptionDiscountAdded: type: object required: - action - discount properties: action: type: string enum: - subscription_discount_added description: What happened on the subscription. x-enum-descriptions: subscription_discount_added: description: A discount was added to the subscription. discount: allOf: - $ref: "#/components/schemas/SubscriptionHistoryDiscount" description: Discount added to the subscription. description: Details specific to `subscription_discount_added` actions. title: Discount added SubscriptionHistoryDetailSubscriptionDiscountExpired: type: object required: - action - discount properties: action: type: string enum: - subscription_discount_expired description: What happened on the subscription. x-enum-descriptions: subscription_discount_expired: description: A discount on the subscription reached its end date and expired. discount: allOf: - $ref: "#/components/schemas/SubscriptionHistoryDiscount" description: Discount that expired on the subscription. `ends_at` reflects when the discount stopped being effective on the subscription. This is the discount that was removed. description: Details specific to `subscription_discount_expired` actions. Recorded when a discount is no longer eligible — for example, when the maximum number of billing periods for the discount has been reached. title: Discount expired SubscriptionHistoryDetailSubscriptionDiscountRemoved: type: object required: - action - discount properties: action: type: string enum: - subscription_discount_removed description: What happened on the subscription. x-enum-descriptions: subscription_discount_removed: description: A discount was removed from the subscription. discount: allOf: - $ref: "#/components/schemas/SubscriptionHistoryDiscount" description: Discount removed from the subscription. description: Details specific to `subscription_discount_removed` actions. title: Discount removed SubscriptionHistoryItemUpdateSummary: type: object required: - quantity_delta properties: quantity_delta: type: integer description: Signed change in quantity. Positive when the quantity increased (or an item was added), negative when the quantity decreased (or an item was removed). description: Summary of a quantitative change to an item on a subscription, including the direction and magnitude of the change. title: Item update summary SubscriptionOnPaymentFailure: type: string enum: - prevent_change - apply_change description: How Paddle should handle changes made to a subscription or its items if the payment fails during update. If omitted, defaults to `prevent_change`. title: Subscription On Payment Failure x-enum-descriptions: prevent_change: description: In case of payment failure, prevent the change to the subscription from applying. apply_change: description: In case of payment failure, apply the change and update the subscription. SubscriptionHistoryDetailSubscriptionItemAdded: type: object required: - action - price - quantity - update_summary - proration_billing_mode - on_payment_failure - transaction_id properties: action: type: string enum: - subscription_item_added description: What happened on the subscription. x-enum-descriptions: subscription_item_added: description: An item was added to the subscription. price: allOf: - $ref: "#/components/schemas/Price" description: Price of the item that was added to the subscription. quantity: type: integer description: Quantity of the item on the subscription after being added. update_summary: allOf: - $ref: "#/components/schemas/SubscriptionHistoryItemUpdateSummary" description: Summary of the quantity change. For a new item, `quantity_delta` matches the resulting `quantity` since the previous quantity was zero. proration_billing_mode: allOf: - $ref: "#/components/schemas/SubscriptionUpdateProrationBillingMode" description: How Paddle calculated proration for the item added. on_payment_failure: allOf: - $ref: "#/components/schemas/SubscriptionOnPaymentFailure" description: How Paddle handled payment failure for the operation. transaction_id: anyOf: - $ref: "#/components/schemas/TransactionId" - type: "null" description: Paddle ID of the transaction created as a result of the item being added, prefixed with `txn_`. `null` if no transaction was created. description: Details specific to `subscription_item_added` actions. title: Item added SubscriptionHistoryDetailSubscriptionItemQuantityUpdated: type: object required: - action - price - quantity - update_summary - proration_billing_mode - on_payment_failure - transaction_id properties: action: type: string enum: - subscription_item_quantity_updated description: What happened on the subscription. x-enum-descriptions: subscription_item_quantity_updated: description: The quantity of an item on the subscription was changed. price: allOf: - $ref: "#/components/schemas/Price" description: Price of the item where the quantity was updated. quantity: type: integer description: Total quantity of the item on the subscription after the change. update_summary: allOf: - $ref: "#/components/schemas/SubscriptionHistoryItemUpdateSummary" description: Summary of the quantity change. `quantity_delta` is positive when the quantity increased, negative when it decreased. proration_billing_mode: allOf: - $ref: "#/components/schemas/SubscriptionUpdateProrationBillingMode" description: How Paddle calculated proration for the quantity change. on_payment_failure: allOf: - $ref: "#/components/schemas/SubscriptionOnPaymentFailure" description: How Paddle handled payment failure for the operation. transaction_id: anyOf: - $ref: "#/components/schemas/TransactionId" - type: "null" description: Paddle ID of the transaction created as a result of the quantity change, prefixed with `txn_`. `null` if no transaction was created. description: Details specific to `subscription_item_quantity_updated` actions. title: Item quantity updated SubscriptionHistoryDetailSubscriptionItemRemoved: type: object required: - action - price - quantity - update_summary - proration_billing_mode - on_payment_failure - transaction_id properties: action: type: string enum: - subscription_item_removed description: What happened on the subscription. x-enum-descriptions: subscription_item_removed: description: An item was removed from the subscription. price: allOf: - $ref: "#/components/schemas/Price" description: Price of the item that was removed from the subscription. quantity: type: integer description: Quantity of the item on the subscription after the removal. Always `0` since the item no longer exists on the subscription. update_summary: allOf: - $ref: "#/components/schemas/SubscriptionHistoryItemUpdateSummary" description: Summary of the quantity change. `quantity_delta` is negative, reflecting the amount removed. proration_billing_mode: allOf: - $ref: "#/components/schemas/SubscriptionUpdateProrationBillingMode" description: How Paddle calculated proration for the item removal. on_payment_failure: allOf: - $ref: "#/components/schemas/SubscriptionOnPaymentFailure" description: How Paddle handled payment failure for the operation. transaction_id: anyOf: - $ref: "#/components/schemas/TransactionId" - type: "null" description: Paddle ID of the transaction created as a result of the item being removed, prefixed with `txn_`. `null` if no transaction was created. description: Details specific to `subscription_item_removed` actions. title: Item removed SubscriptionHistoryOneOffChargeAppliedEffectiveFrom: type: string enum: - immediately - next_billing_period description: When the customer was or will be billed for the one-off charge. x-enum-descriptions: immediately: description: The one-off charge was billed at the time of this action — a transaction was created right away. next_billing_period: description: The one-off charge was added to the transaction created when the subscription next renews. The customer will be billed for it as part of that renewal. SubscriptionHistoryDetailSubscriptionOneOffChargeApplied: type: object required: - action - effective_from - items - on_payment_failure - transaction_id properties: action: type: string enum: - subscription_one_off_charge_applied description: What happened on the subscription. x-enum-descriptions: subscription_one_off_charge_applied: description: A one-time charge was applied to the subscription. effective_from: allOf: - $ref: "#/components/schemas/SubscriptionHistoryOneOffChargeAppliedEffectiveFrom" description: When the customer was billed for the one-off charge. items: type: array items: $ref: "#/components/schemas/SubscriptionHistoryDetailItem" description: Items that were charged as part of the one-off charge. on_payment_failure: allOf: - $ref: "#/components/schemas/SubscriptionOnPaymentFailure" description: How Paddle handled payment failure for the one-off charge. transaction_id: anyOf: - $ref: "#/components/schemas/TransactionId" - type: "null" description: Paddle ID of the transaction created for the one-off charge, prefixed with `txn_`. `null` if no transaction was created. description: Details specific to `subscription_one_off_charge_applied` actions. title: One-off charge applied SubscriptionHistoryDetailSubscriptionPastDue: type: object required: - action - status - transaction_id properties: action: type: string enum: - subscription_past_due description: What happened on the subscription. x-enum-descriptions: subscription_past_due: description: The subscription's status became `past_due` after a payment failed. status: allOf: - $ref: "#/components/schemas/StatusSubscription" description: The status of the subscription after becoming past due. transaction_id: allOf: - $ref: "#/components/schemas/TransactionId" description: Paddle ID of the failed transaction, prefixed with `txn_`. description: Details specific to `subscription_past_due` actions. title: Past due SubscriptionHistoryPausedEffectiveFrom: type: string enum: - immediately - next_billing_period description: When the subscription pause took effect. x-enum-descriptions: immediately: description: The subscription was paused immediately. next_billing_period: description: The subscription was scheduled to pause at the next billing period. SubscriptionHistoryDetailSubscriptionPaused: type: object required: - action - effective_from - status properties: action: type: string enum: - subscription_paused description: What happened on the subscription. x-enum-descriptions: subscription_paused: description: The subscription's status became `paused`. effective_from: allOf: - $ref: "#/components/schemas/SubscriptionHistoryPausedEffectiveFrom" description: Whether the subscription was paused immediately, or scheduled to pause. status: allOf: - $ref: "#/components/schemas/StatusSubscription" description: The status of the subscription after pausing. description: Details specific to `subscription_paused` actions. title: Paused SubscriptionHistoryPaymentAttemptedOperation: type: string enum: - subscription_update - subscription_one_off_charge - subscription_activate description: The operation that triggered the failed payment attempt. x-enum-descriptions: subscription_update: description: An update to the subscription — for example, an item add, remove, quantity change, or billing date move. subscription_one_off_charge: description: A one-off charge applied to the subscription. subscription_activate: description: An activation of a trialing subscription. SubscriptionHistoryDetailSubscriptionPaymentAttempted: type: object required: - action - operation - transaction_id properties: action: type: string enum: - subscription_payment_attempted description: What happened on the subscription. x-enum-descriptions: subscription_payment_attempted: description: A payment for a change to the subscription was attempted and failed. operation: allOf: - $ref: "#/components/schemas/SubscriptionHistoryPaymentAttemptedOperation" description: Operation that resulted in the failed payment attempt. Use the related transaction ID to get the full details of the attempted change. transaction_id: allOf: - $ref: "#/components/schemas/TransactionId" description: Paddle ID of the failed transaction, prefixed with `txn_`. description: Details specific to `subscription_payment_attempted` actions. Recorded when a payment attempt fails for an operation that attempts a payment, like a subscription update or one-time charge. Successful payment outcomes are captured by the relevant action, like `subscription_item_added`, `subscription_one_off_charge_applied`, or `subscription_activated`. title: Payment attempted SubscriptionHistoryDetailSubscriptionPaymentMethodAdded: type: object required: - action properties: action: type: string enum: - subscription_payment_method_added description: What happened on the subscription. x-enum-descriptions: subscription_payment_method_added: description: A payment method was added to the subscription. description: Details specific to `subscription_payment_method_added` actions. title: Payment method added SubscriptionHistoryDetailSubscriptionPaymentMethodRemoved: type: object required: - action properties: action: type: string enum: - subscription_payment_method_removed description: What happened on the subscription. x-enum-descriptions: subscription_payment_method_removed: description: A payment method was removed from the subscription. description: Details specific to `subscription_payment_method_removed` actions. title: Payment method removed SubscriptionHistoryDetailSubscriptionPaymentMethodUpdated: type: object required: - action properties: action: type: string enum: - subscription_payment_method_updated description: What happened on the subscription. x-enum-descriptions: subscription_payment_method_updated: description: The payment method on the subscription was changed. description: Details specific to `subscription_payment_method_updated` actions. title: Payment method updated SubscriptionHistoryDetailSubscriptionRenewed: type: object required: - action - next_billed_at - current_billing_period - transaction_id properties: action: type: string enum: - subscription_renewed description: What happened on the subscription. x-enum-descriptions: subscription_renewed: description: The subscription renewed for a new billing period. next_billed_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when the subscription was next scheduled to be billed after this renewal. current_billing_period: allOf: - $ref: "#/components/schemas/TimePeriod" description: Billing period of the subscription after renewal. transaction_id: allOf: - $ref: "#/components/schemas/TransactionId" description: Paddle ID of the transaction created for this renewal, prefixed with `txn_`. description: Details specific to `subscription_renewed` actions. title: Renewed SubscriptionOnResume: type: string enum: - continue_existing_billing_period - start_new_billing_period description: How Paddle should set the billing period for the subscription when resuming. If omitted, defaults to `start_new_billing_period`. title: Subscription On Resume x-enum-descriptions: continue_existing_billing_period: description: When resuming, continue the existing billing period. If the customer resumes before the end date of the existing billing period, there's no immediate charge. If after, an error is returned. start_new_billing_period: description: When resuming, start a new billing period. The `current_billing_period.starts_at` date is set to the resume date, and Paddle immediately charges the full amount for the new billing period. SubscriptionHistoryDetailSubscriptionResumed: type: object required: - action - status - on_resume properties: action: type: string enum: - subscription_resumed description: What happened on the subscription. x-enum-descriptions: subscription_resumed: description: The subscription's status became `active` after being paused. status: allOf: - $ref: "#/components/schemas/StatusSubscription" description: The status of the subscription after resuming. on_resume: allOf: - $ref: "#/components/schemas/SubscriptionOnResume" description: How the subscription was resumed. Indicates whether a new billing period was started or the existing one continued. description: Details specific to `subscription_resumed` actions. title: Resumed SubscriptionHistoryDetailSubscriptionScheduledChangeAdded: type: object required: - action - scheduled_change properties: action: type: string enum: - subscription_scheduled_change_added description: What happened on the subscription. x-enum-descriptions: subscription_scheduled_change_added: description: A scheduled change was added to the subscription. scheduled_change: allOf: - $ref: "#/components/schemas/SubscriptionScheduledChange" description: Details of the scheduled change that was added to the subscription. description: Details specific to `subscription_scheduled_change_added` actions. title: Scheduled change added SubscriptionHistoryDetailSubscriptionScheduledChangeRemoved: type: object required: - action - scheduled_change properties: action: type: string enum: - subscription_scheduled_change_removed description: What happened on the subscription. x-enum-descriptions: subscription_scheduled_change_removed: description: A scheduled change was removed from the subscription. scheduled_change: allOf: - $ref: "#/components/schemas/SubscriptionScheduledChange" description: Details of the scheduled change that was removed from the subscription. description: Details specific to `subscription_scheduled_change_removed` actions. title: Scheduled change removed SubscriptionHistoryDetailSubscriptionScheduledChangeUpdated: type: object required: - action - scheduled_change properties: action: type: string enum: - subscription_scheduled_change_updated description: What happened on the subscription. x-enum-descriptions: subscription_scheduled_change_updated: description: A scheduled change on the subscription was changed. scheduled_change: allOf: - $ref: "#/components/schemas/SubscriptionScheduledChange" description: Details of the updated scheduled change on the subscription. This is what the scheduled change was changed to. description: Details specific to `subscription_scheduled_change_updated` actions. title: Scheduled change updated SubscriptionHistoryDetail: type: object oneOf: - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionActivated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionAddressUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBillingCycleUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBillingDateUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBillingDetailsUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBusinessAdded" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBusinessRemoved" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBusinessUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCanceled" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCollectionModeUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionConsentRequirementGranted" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCreated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCurrencyUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCustomDataUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCustomerUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionDiscountAdded" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionDiscountExpired" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionDiscountRemoved" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionItemAdded" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionItemQuantityUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionItemRemoved" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionOneOffChargeApplied" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPastDue" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaused" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaymentAttempted" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaymentMethodAdded" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaymentMethodRemoved" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaymentMethodUpdated" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionRenewed" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionResumed" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionScheduledChangeAdded" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionScheduledChangeRemoved" - $ref: "#/components/schemas/SubscriptionHistoryDetailSubscriptionScheduledChangeUpdated" discriminator: propertyName: action mapping: subscription_activated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionActivated" subscription_address_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionAddressUpdated" subscription_billing_cycle_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBillingCycleUpdated" subscription_billing_date_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBillingDateUpdated" subscription_billing_details_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBillingDetailsUpdated" subscription_business_added: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBusinessAdded" subscription_business_removed: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBusinessRemoved" subscription_business_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionBusinessUpdated" subscription_canceled: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCanceled" subscription_collection_mode_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCollectionModeUpdated" subscription_consent_requirement_granted: "#/components/schemas/SubscriptionHistoryDetailSubscriptionConsentRequirementGranted" subscription_created: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCreated" subscription_currency_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCurrencyUpdated" subscription_custom_data_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCustomDataUpdated" subscription_customer_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionCustomerUpdated" subscription_discount_added: "#/components/schemas/SubscriptionHistoryDetailSubscriptionDiscountAdded" subscription_discount_expired: "#/components/schemas/SubscriptionHistoryDetailSubscriptionDiscountExpired" subscription_discount_removed: "#/components/schemas/SubscriptionHistoryDetailSubscriptionDiscountRemoved" subscription_item_added: "#/components/schemas/SubscriptionHistoryDetailSubscriptionItemAdded" subscription_item_quantity_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionItemQuantityUpdated" subscription_item_removed: "#/components/schemas/SubscriptionHistoryDetailSubscriptionItemRemoved" subscription_one_off_charge_applied: "#/components/schemas/SubscriptionHistoryDetailSubscriptionOneOffChargeApplied" subscription_past_due: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPastDue" subscription_paused: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaused" subscription_payment_attempted: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaymentAttempted" subscription_payment_method_added: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaymentMethodAdded" subscription_payment_method_removed: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaymentMethodRemoved" subscription_payment_method_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionPaymentMethodUpdated" subscription_renewed: "#/components/schemas/SubscriptionHistoryDetailSubscriptionRenewed" subscription_resumed: "#/components/schemas/SubscriptionHistoryDetailSubscriptionResumed" subscription_scheduled_change_added: "#/components/schemas/SubscriptionHistoryDetailSubscriptionScheduledChangeAdded" subscription_scheduled_change_removed: "#/components/schemas/SubscriptionHistoryDetailSubscriptionScheduledChangeRemoved" subscription_scheduled_change_updated: "#/components/schemas/SubscriptionHistoryDetailSubscriptionScheduledChangeUpdated" SubscriptionHistory: type: object required: - id - group_id - subscription_id - occurred_at - source - actor - reason - detail properties: id: allOf: - $ref: "#/components/schemas/SubscriptionHistoryId" description: Unique Paddle ID for this subscription history entry, prefixed with `subhis_`. readOnly: true group_id: allOf: - $ref: "#/components/schemas/SubscriptionHistoryGroupId" description: Unique Paddle ID for this subscription history group, prefixed with `subhisgrp_`. History entries that occurred as part of the same request share the same group ID. readOnly: true subscription_id: allOf: - $ref: "#/components/schemas/SubscriptionId" description: Paddle ID of the subscription that this history entry relates to, prefixed with `sub_`. readOnly: true occurred_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when the entry happened. readOnly: true source: allOf: - $ref: "#/components/schemas/ActionSource" description: Where the entry originated from. readOnly: true actor: allOf: - $ref: "#/components/schemas/Actor" description: Details about the actor that performed the action that created this entry. readOnly: true reason: allOf: - $ref: "#/components/schemas/SubscriptionHistoryReason" description: Why the entry was created. Only applicable to certain actions; `null` otherwise. readOnly: true detail: allOf: - $ref: "#/components/schemas/SubscriptionHistoryDetail" description: Details specific to the action. The fields returned depend on the value of `action`. readOnly: true description: Represents a subscription history entry. title: Subscription History SubscriptionIncludes: type: object required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - management_urls - items - custom_data - import_meta - consent_requirements properties: id: allOf: - $ref: "#/components/schemas/SubscriptionId" x-external-readOnly: true status: allOf: - $ref: "#/components/schemas/StatusSubscription" x-external-readOnly: true customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID of the customer that this subscription is for, prefixed with `ctm_`. address_id: allOf: - $ref: "#/components/schemas/AddressId" description: Paddle ID of the address that this subscription is for, prefixed with `add_`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this subscription is for, prefixed with `biz_`. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code. Transactions for this subscription are created in this currency. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true started_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. readOnly: true first_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. readOnly: true next_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. readOnly: true canceled_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. readOnly: true discount: anyOf: - $ref: "#/components/schemas/SubscriptionDiscount" - type: "null" description: Details of the discount applied to this subscription. collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. default: automatic billing_details: anyOf: - $ref: "#/components/schemas/BillingDetails" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. current_billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. readOnly: true billing_cycle: allOf: - $ref: "#/components/schemas/Duration" description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. readOnly: true scheduled_change: anyOf: - $ref: "#/components/schemas/SubscriptionScheduledChange" - type: "null" description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. management_urls: allOf: - $ref: "#/components/schemas/SubscriptionManagementUrls" readOnly: true items: type: array items: $ref: "#/components/schemas/ItemSubscription" minItems: 1 maxItems: 100 description: List of items on this subscription. Only recurring items are returned. readOnly: true custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMetaSubscription" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true consent_requirements: type: array items: $ref: "#/components/schemas/SubscriptionConsentRequirement" description: List of active consent requirements for the subscription's current billing period. next_transaction: anyOf: - $ref: "#/components/schemas/SubscriptionNextTransaction" - type: "null" description: Preview of the next transaction for this subscription. May include prorated charges that aren't yet billed and one-time charges. Returned when the `include` parameter is used with the `next_transaction` value. `null` if the subscription is scheduled to cancel or pause. x-included: true recurring_transaction_details: allOf: - $ref: "#/components/schemas/TransactionPreviewDetails" description: Preview of the recurring transaction for this subscription. This is what the customer can expect to be billed when there are no prorated or one-time charges. Returned when the `include` parameter is used with the `recurring_transaction_details` value. title: Recurring transaction details x-included: true description: Represents a subscription entity with included entities. title: SubscriptionIncludes Subscription: type: object required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - management_urls - items - custom_data - import_meta - consent_requirements properties: id: allOf: - $ref: "#/components/schemas/SubscriptionId" x-external-readOnly: true status: allOf: - $ref: "#/components/schemas/StatusSubscription" x-external-readOnly: true customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID of the customer that this subscription is for, prefixed with `ctm_`. address_id: allOf: - $ref: "#/components/schemas/AddressId" description: Paddle ID of the address that this subscription is for, prefixed with `add_`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this subscription is for, prefixed with `biz_`. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code. Transactions for this subscription are created in this currency. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true started_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. readOnly: true first_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. readOnly: true next_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. readOnly: true canceled_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. readOnly: true discount: anyOf: - $ref: "#/components/schemas/SubscriptionDiscount" - type: "null" description: Details of the discount applied to this subscription. collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. default: automatic billing_details: anyOf: - $ref: "#/components/schemas/BillingDetails" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. current_billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. readOnly: true billing_cycle: allOf: - $ref: "#/components/schemas/Duration" description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. readOnly: true scheduled_change: anyOf: - $ref: "#/components/schemas/SubscriptionScheduledChange" - type: "null" description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. management_urls: allOf: - $ref: "#/components/schemas/SubscriptionManagementUrls" readOnly: true items: type: array items: $ref: "#/components/schemas/ItemSubscription" minItems: 1 maxItems: 100 description: List of items on this subscription. Only recurring items are returned. readOnly: true custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMetaSubscription" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true consent_requirements: type: array items: $ref: "#/components/schemas/SubscriptionConsentRequirement" description: List of active consent requirements for the subscription's current billing period. description: Represents a subscription entity. title: Subscription BillingDetailsCreate: type: object required: - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: allOf: - $ref: "#/components/schemas/Duration" description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details AddressPreviewCreate: type: object required: - country_code properties: postal_code: anyOf: - type: string - type: "null" maxLength: 200 description: ZIP or postal code of this address. Include for more accurate tax calculations. examples: - 11105-1803 country_code: allOf: - $ref: "#/components/schemas/CountryCode" description: Supported two-letter ISO 3166-1 alpha-2 country code for this address. description: Represents an address entity when previewing addresses. title: AddressPreview CollectionModeQuery: type: string enum: - automatic - manual x-enum-descriptions: automatic: description: Return entities where payment is collected automatically using a checkout or saved payment method. manual: description: Return entities where payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. ScheduledChangeActionQuery: type: string enum: - cancel - pause - resume - none x-enum-descriptions: cancel: description: Return subscriptions with a scheduled change to cancel. pause: description: Return subscriptions with a scheduled change to pause. resume: description: Return subscriptions with a scheduled change to resume. Only returned for paused subscriptions. none: description: Return subscriptions that do not have a scheduled change. SubscriptionStatusQuery: type: string enum: - active - canceled - past_due - paused - trialing x-enum-descriptions: active: description: Return subscriptions where the status is `active`. Returned subscriptions are active and Paddle is billing for them. canceled: description: Return subscriptions where the status is `canceled`. Returned subscriptions are canceled. past_due: description: Return subscriptions where the status is `past_due`. Returned subscriptions have an overdue payment. paused: description: Return subscriptions where the status is `paused`. Returned subscriptions are paused. trialing: description: Return subscriptions where the status is `trialing`. Returned subscriptions are in trial. SubscriptionIncludeEnum: type: string enum: - next_transaction - recurring_transaction_details x-enum-permissions: next_transaction: - transaction.read recurring_transaction_details: - transaction.read previous_recurring_transaction_details: - transaction.read x-enum-descriptions: next_transaction: description: Include an object with a preview of the next transaction for this subscription. May include prorated charges that aren't yet billed and one-time charges. recurring_transaction_details: description: Include an object with a preview of the recurring transaction for this subscription. This is what the customer can expect to be billed when there are no prorated or one-time charges. EffectiveFrom: type: string enum: - next_billing_period - immediately description: |- When this subscription change should take effect from. Defaults to `next_billing_period`, which creates a `scheduled_change` to apply the subscription change at the end of the billing period. title: Effective from x-enum-descriptions: next_billing_period: description: Takes effect on the next billing period. immediately: description: Takes effect immediately. SubscriptionUpdateDiscount: type: object required: - id - effective_from properties: id: $ref: "#/components/schemas/DiscountId" effective_from: allOf: - $ref: "#/components/schemas/EffectiveFrom" description: When this discount should take effect from. description: Details of the discount applied to this subscription. Include to add a discount to a subscription. `null` to remove a discount. title: SubscriptionDiscountEffectiveFrom BillingDetailsUpdate: type: object properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: allOf: - $ref: "#/components/schemas/Duration" description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details (update) SubscriptionUpdateItem: type: object required: - price_id properties: price_id: allOf: - $ref: "#/components/schemas/PriceId" description: Paddle ID for the price to add to this subscription, prefixed with `pri_`. quantity: type: number minimum: 1 description: Quantity of this item to add to the subscription. If updating an existing item and not changing the quantity, you may omit `quantity`. title: Catalog item additionalProperties: false SubscriptionItemCreateWithPrice: type: object required: - quantity - price properties: quantity: type: integer minimum: 1 description: Quantity to bill for. examples: - 5 price: allOf: - $ref: "#/components/schemas/TransactionPriceCreateWithProductId" description: Price object for a non-catalog item to bill for. Include a `product_id` to relate this non-catalog price to an existing catalog price. title: Non-catalog price for an existing product TransactionSubscriptionProductCreate: type: object required: - name - tax_category properties: name: type: string minLength: 1 maxLength: 200 description: Name of this product. description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. tax_category: $ref: "#/components/schemas/TaxCategory" image_url: anyOf: - $ref: "#/components/schemas/ImageUrl" - type: "null" - $ref: "#/components/schemas/EmptyString" description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. title: TransactionSubscriptionProductCreate additionalProperties: false TransactionPriceCreateWithProduct: type: object required: - description - unit_price - product properties: description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. name: anyOf: - type: string - type: "null" minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. If omitted, defaults to 1-100. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. product: allOf: - $ref: "#/components/schemas/TransactionSubscriptionProductCreate" description: Product object for a non-catalog item to charge for. title: TransactionPriceCreateWithProduct SubscriptionItemCreateWithPriceAndProduct: type: object required: - quantity - price properties: quantity: type: integer minimum: 1 description: Quantity to bill for. examples: - 5 price: allOf: - $ref: "#/components/schemas/TransactionPriceCreateWithProduct" description: Price object for a non-catalog item to charge for. Include a `product` object to create a non-catalog product for this non-catalog price. title: Non-catalog price and product SubscriptionUpdateItems: oneOf: - $ref: "#/components/schemas/SubscriptionUpdateItem" - $ref: "#/components/schemas/SubscriptionItemCreateWithPrice" - $ref: "#/components/schemas/SubscriptionItemCreateWithPriceAndProduct" SubscriptionUpdate: type: object properties: customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID of the customer that this subscription is for, prefixed with `ctm_`. Include to change the customer for a subscription. address_id: allOf: - $ref: "#/components/schemas/AddressId" description: Paddle ID of the address that this subscription is for, prefixed with `add_`. Include to change the address for a subscription. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this subscription is for, prefixed with `biz_`. Include to change the business for a subscription. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code. Include to change the currency that a subscription bills in. When changing `collection_mode` to `manual`, you may need to change currency code to `USD`, `EUR`, or `GBP`. next_billed_at: allOf: - $ref: "#/components/schemas/Timestamp" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. Include to change the next billing date. discount: anyOf: - $ref: "#/components/schemas/SubscriptionUpdateDiscount" - type: "null" description: Details of the discount applied to this subscription. Include to add a discount to a subscription. `null` to remove a discount. title: SubscriptionDiscountEffectiveFrom collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - $ref: "#/components/schemas/BillingDetailsUpdate" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. `null` if changing `collection_mode` to `automatic`. scheduled_change: type: "null" description: Change that's scheduled to be applied to a subscription. When updating, you may only set to `null` to remove a scheduled change. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. items: type: array items: $ref: "#/components/schemas/SubscriptionUpdateItems" minItems: 1 maxItems: 100 description: List of items on this subscription. Only recurring items may be added. Send the complete list of items that should be on this subscription, including existing items to retain. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. proration_billing_mode: $ref: "#/components/schemas/SubscriptionUpdateProrationBillingMode" on_payment_failure: allOf: - $ref: "#/components/schemas/SubscriptionOnPaymentFailure" default: prevent_change description: Represents a subscription entity when updating subscriptions. title: SubscriptionUpdate SubscriptionCancel: type: object properties: effective_from: anyOf: - $ref: "#/components/schemas/EffectiveFrom" - type: "null" default: next_billing_period SubscriptionPause: type: object properties: effective_from: anyOf: - $ref: "#/components/schemas/EffectiveFrom" - type: "null" default: next_billing_period resume_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when the paused subscription should resume. Omit to pause indefinitely until resumed. on_resume: allOf: - $ref: "#/components/schemas/SubscriptionOnResume" default: start_new_billing_period SubscriptionResumeOnDate: type: object required: - effective_from properties: effective_from: allOf: - $ref: "#/components/schemas/Timestamp" description: |- When this scheduled change should take effect from. RFC 3339 datetime string of when the subscription should resume. Valid where subscriptions are `active` with a scheduled change to pause, or where they have the status of `paused`. on_resume: allOf: - $ref: "#/components/schemas/SubscriptionOnResume" default: start_new_billing_period title: Resume on a specific date EffectiveFromImmediately: type: string enum: - immediately x-enum-descriptions: immediately: description: Takes effect immediately. For automatically-collected subscriptions, responses may take longer than usual while a payment attempt is processed. SubscriptionResumeImmediately: type: object required: - effective_from properties: effective_from: anyOf: - $ref: "#/components/schemas/EffectiveFromImmediately" - type: "null" description: |- When this subscription change should take effect from. You can pass `immediately` to resume immediately. Valid where subscriptions have the status of `paused`. Defaults to `immediately` if omitted. default: immediately on_resume: allOf: - $ref: "#/components/schemas/SubscriptionOnResume" default: start_new_billing_period title: Resume immediately EmptyObject: type: object additionalProperties: false SubscriptionResume: oneOf: - $ref: "#/components/schemas/SubscriptionResumeOnDate" - $ref: "#/components/schemas/SubscriptionResumeImmediately" - type: "null" - $ref: "#/components/schemas/EmptyObject" TransactionAdjustmentsTotalsIncludeBreakdown: type: object required: - credit - refund - chargeback properties: credit: type: string description: Total amount of credit adjustments. examples: - "8250" refund: type: string description: Total amount of refund adjustments. examples: - "8250" chargeback: type: string description: Total amount of chargeback adjustments. examples: - "0" description: Breakdown of the total adjustments by adjustment action. title: AdjustmentTotalsBreakdown TransactionAdjustmentsTotalsInclude: type: object required: - subtotal - tax - total - fee - retained_fee - earnings - breakdown - currency_code properties: subtotal: type: string description: Total before tax. examples: - "15000" readOnly: true tax: type: string description: Total tax on the subtotal. examples: - "1500" readOnly: true total: type: string description: Total after tax. examples: - "16500" readOnly: true fee: type: string description: Total fee taken by Paddle. examples: - "300" readOnly: true retained_fee: type: string description: Total gateway fee retained by Paddle. examples: - "300" readOnly: true earnings: type: string description: |- Total earnings. This is the subtotal minus the Paddle fee. For tax adjustments, this value is negative, which means a positive effect in the transaction earnings. This is because the fee is originally calculated from the transaction total, so if a tax adjustment is made, then the fee portion of it is returned. As a result, the earnings from all the adjustments performed could be either negative, positive or zero. examples: - "14700" readOnly: true breakdown: allOf: - $ref: "#/components/schemas/TransactionAdjustmentsTotalsIncludeBreakdown" description: Breakdown of the total adjustments by adjustment action. title: AdjustmentTotalsBreakdown currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Three-letter ISO 4217 currency code used for adjustments for this transaction. description: Breakdown of all the adjustments made against a transaction in the transaction currency. title: Adjustment Totals readOnly: true SubscriptionTransactionIncludes: type: object required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at - adjustments - available_payment_methods properties: id: allOf: - $ref: "#/components/schemas/TransactionId" readOnly: true status: $ref: "#/components/schemas/TransactionStatus" customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. origin: allOf: - $ref: "#/components/schemas/TransactionOrigin" description: Describes how this transaction was created. x-external-readOnly: true subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. x-external-readOnly: true invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 readOnly: true invoice_number: anyOf: - $ref: "#/components/schemas/DocumentNumber" - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. default: automatic discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - $ref: "#/components/schemas/BillingDetails" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: $ref: "#/components/schemas/TransactionItem" minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: allOf: - $ref: "#/components/schemas/TransactionDetails" readOnly: true payments: type: array items: $ref: "#/components/schemas/TransactionPaymentAttempt" description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. readOnly: true checkout: anyOf: - $ref: "#/components/schemas/TransactionCheckout" - type: "null" created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. readOnly: true revised_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. readOnly: true customer: allOf: - $ref: "#/components/schemas/Customer" description: Related customer for this transaction. Only returned if the API key has a Customers (Read) permission. address: allOf: - $ref: "#/components/schemas/Address" description: Related address for this transaction. Only returned if the API key has an Addresses (Read) permission. business: allOf: - $ref: "#/components/schemas/Business" description: Related business for this transaction. Only returned if a business exists for this transaction and the API key has a Businesses (Read) permission. discount: allOf: - $ref: "#/components/schemas/Discount" description: Related discount for this transaction. Only returned if a discount exists for this transaction and the API key has a Discounts (Read) permission. adjustments: type: array items: $ref: "#/components/schemas/Adjustment" description: Related adjustments for this transaction. Only returned if adjustments exist for this transaction and the API key has an Adjustments (Read) permission. adjustments_totals: allOf: - $ref: "#/components/schemas/TransactionAdjustmentsTotalsInclude" description: Object containing totals for all adjustments on this transaction. Only returned if the API key has an Adjustments (Read) permission. available_payment_methods: type: array items: $ref: "#/components/schemas/PaymentMethodType" description: List of payment methods available for this transaction. title: Subscription transaction with includes UpdateSummaryResultAction: type: string enum: - credit - charge description: Whether the subscription change results in a prorated credit or a charge. title: UpdateSummaryResultAction x-enum-descriptions: credit: description: Changes to the subscription results in a prorated credit. charge: description: Changes to the subscription results in a prorated charge. UpdateSummaryResult: type: object required: - action - amount - currency_code properties: action: allOf: - $ref: "#/components/schemas/UpdateSummaryResultAction" description: Whether the subscription change results in a prorated credit or a charge. title: UpdateSummaryResultAction amount: type: string description: Amount representing the result of this update, either a charge or a credit. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Three-letter ISO 4217 currency code for the transaction or adjustment. description: Details of the result of credits and charges. Where the total of any credit adjustments is greater than the total charge, the result is a prorated credit; otherwise, the result is a prorated charge. title: UpdateSummaryResult UpdateSummary: type: object required: - credit - charge - result properties: credit: allOf: - $ref: "#/components/schemas/Money" description: Details of any credit adjustments created for this update. Paddle creates adjustments against existing transactions when prorating. charge: allOf: - $ref: "#/components/schemas/Money" description: Details of the transaction to be created for this update. Paddle creates a transaction to bill for new charges. result: allOf: - $ref: "#/components/schemas/UpdateSummaryResult" description: Details of the result of credits and charges. Where the total of any credit adjustments is greater than the total charge, the result is a prorated credit; otherwise, the result is a prorated charge. title: UpdateSummaryResult description: Impact of this subscription change. Includes whether the change results in a charge or credit, and totals for prorated amounts. title: Subscription preview update summary SubscriptionPreview: type: object required: - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - management_urls - items - custom_data - immediate_transaction - next_transaction - recurring_transaction_details - update_summary - import_meta - consent_requirements properties: status: allOf: - $ref: "#/components/schemas/StatusSubscription" x-external-readOnly: true customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID of the customer that this subscription is for, prefixed with `ctm_`. address_id: allOf: - $ref: "#/components/schemas/AddressId" description: Paddle ID of the address that this subscription is for, prefixed with `add_`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this subscription is for, prefixed with `biz_`. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code. Transactions for this subscription are created in this currency. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true started_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. readOnly: true first_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. readOnly: true next_billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. readOnly: true canceled_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. readOnly: true discount: anyOf: - $ref: "#/components/schemas/SubscriptionDiscount" - type: "null" description: Details of the discount applied to this subscription. collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. default: automatic billing_details: anyOf: - $ref: "#/components/schemas/BillingDetails" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. current_billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. readOnly: true billing_cycle: allOf: - $ref: "#/components/schemas/Duration" description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. readOnly: true scheduled_change: anyOf: - $ref: "#/components/schemas/SubscriptionScheduledChange" - type: "null" description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. management_urls: allOf: - $ref: "#/components/schemas/SubscriptionManagementUrls" readOnly: true items: type: array items: $ref: "#/components/schemas/ItemSubscription" minItems: 1 maxItems: 100 description: List of items on this subscription. Only recurring items are returned. readOnly: true custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. immediate_transaction: anyOf: - $ref: "#/components/schemas/SubscriptionNextTransaction" - type: "null" description: Preview of the immediate transaction created as a result of changes to the subscription. Returns a complete object where `proration_billing_mode` is `prorated_immediately` or `full_immediately`; `null` otherwise. readOnly: true next_transaction: anyOf: - $ref: "#/components/schemas/SubscriptionNextTransaction" - type: "null" description: Preview of the next transaction for this subscription. Includes charges created where `proration_billing_mode` is `prorated_next_billing_period` or `full_next_billing_period`, as well as one-time charges. `null` if the subscription is scheduled to cancel or pause. readOnly: true recurring_transaction_details: allOf: - $ref: "#/components/schemas/TransactionPreviewDetails" description: Preview of the recurring transaction for this subscription. This is what the customer can expect to be billed when there are no prorated or one-time charges. title: Recurring transaction details readOnly: true update_summary: anyOf: - $ref: "#/components/schemas/UpdateSummary" - type: "null" readOnly: true import_meta: anyOf: - $ref: "#/components/schemas/ImportMetaSubscription" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true consent_requirements: type: array items: $ref: "#/components/schemas/SubscriptionConsentRequirement" description: List of active consent requirements for the subscription's current billing period. description: Represents a subscription preview when previewing a subscription. title: SubscriptionPreview SubscriptionItemCreateWithPriceIdModel: type: object required: - quantity - price_id properties: quantity: type: integer minimum: 1 description: Quantity to bill for. examples: - 5 price_id: allOf: - $ref: "#/components/schemas/PriceId" description: Paddle ID of an an existing catalog price to bill for. description: Add a catalog item to a subscription. In this case, the product and price that you're billing for exist in your product catalog in Paddle. title: Catalog item SubscriptionChargeCreateWithPriceInternalPriceModel: type: object required: - product_id - description - unit_price properties: product_id: allOf: - $ref: "#/components/schemas/ProductId" description: Paddle ID for the product that this price is for, prefixed with `pro_`. description: type: string minLength: 2 maxLength: 200 description: Internal description for this price, not shown to customers. Typically notes for your team. name: anyOf: - type: string - type: "null" minLength: 1 maxLength: 50 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. If omitted, defaults to 1-100. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. SubscriptionChargeCreateWithPriceModel: type: object required: - quantity - price properties: quantity: type: integer minimum: 1 description: Quantity to bill for. examples: - 5 price: allOf: - $ref: "#/components/schemas/SubscriptionChargeCreateWithPriceInternalPriceModel" description: Price object for a non-catalog item to bill for. Include a `product_id` to relate this non-catalog price to an existing catalog price. title: SubscriptionChargeCreateWithPrice description: Add a non-catalog price for an existing product in your catalog to a subscription. In this case, the product you're billing for is a catalog product, but you charge a specific price for it. title: Non-catalog price for an existing product SubscriptionChargeCreateWithPriceAndProductPrice: type: object required: - description - unit_price - product properties: description: type: string minLength: 2 maxLength: 200 description: Internal description for this price, not shown to customers. Typically notes for your team. name: anyOf: - type: string - type: "null" minLength: 1 maxLength: 50 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. If omitted, defaults to 1-100. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. product: allOf: - $ref: "#/components/schemas/TransactionSubscriptionProductCreate" description: Product object for a non-catalog item to charge for. description: Price object for a non-catalog item to charge for. Include a `product` object to create a non-catalog product for this non-catalog price. title: SubscriptionChargeCreateWithProduct SubscriptionChargeCreateWithPriceAndProductModel: type: object required: - quantity - price properties: quantity: type: integer minimum: 1 description: Quantity to bill for. examples: - 5 price: allOf: - $ref: "#/components/schemas/SubscriptionChargeCreateWithPriceAndProductPrice" description: Price object for a non-catalog item to charge for. Include a `product` object to create a non-catalog product for this non-catalog price. title: SubscriptionChargeCreateWithProduct description: Add a non-catalog price for a non-catalog product in your catalog to a subscription. In this case, the product and price that you're billing for are specific to this transaction. title: Non-catalog price and product SubscriptionChargeItems: oneOf: - $ref: "#/components/schemas/SubscriptionItemCreateWithPriceIdModel" - $ref: "#/components/schemas/SubscriptionChargeCreateWithPriceModel" - $ref: "#/components/schemas/SubscriptionChargeCreateWithPriceAndProductModel" SubscriptionCharge: type: object required: - effective_from - items properties: effective_from: allOf: - $ref: "#/components/schemas/EffectiveFrom" description: When one-time charges should be billed. x-enum-descriptions: immediately: description: Bill for one-time charges now. Paddle creates a transaction for them right away. For automatically-collected subscriptions, responses may take longer than usual while a payment attempt is processed. next_billing_period: description: Bill for one-time charges on the next billing period. Paddle adds the charges to the transaction created when the subscription next renews. items: type: array items: $ref: "#/components/schemas/SubscriptionChargeItems" minItems: 1 maxItems: 100 description: |- List of one-time charges to bill for. Only prices where the `billing_cycle` is `null` may be added. You can charge for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can charge for non-catalog items by passing a price object. Non-catalog items can be for existing products, or you can pass a product object as part of your price to charge for a non-catalog product. on_payment_failure: allOf: - $ref: "#/components/schemas/SubscriptionOnPaymentFailure" default: prevent_change description: Represents a one-time charge for a subscription. title: SubscriptionCharge additionalProperties: false TransactionIncludes: type: object required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at properties: id: allOf: - $ref: "#/components/schemas/TransactionId" readOnly: true status: $ref: "#/components/schemas/TransactionStatus" customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. origin: allOf: - $ref: "#/components/schemas/TransactionOrigin" description: Describes how this transaction was created. x-external-readOnly: true subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. x-external-readOnly: true invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 readOnly: true invoice_number: anyOf: - $ref: "#/components/schemas/DocumentNumber" - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. default: automatic discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - $ref: "#/components/schemas/BillingDetails" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: $ref: "#/components/schemas/TransactionItem" minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: allOf: - $ref: "#/components/schemas/TransactionDetails" readOnly: true payments: type: array items: $ref: "#/components/schemas/TransactionPaymentAttempt" description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. readOnly: true checkout: anyOf: - $ref: "#/components/schemas/TransactionCheckout" - type: "null" created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. readOnly: true revised_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. readOnly: true address: allOf: - $ref: "#/components/schemas/Address" description: Address for this transaction. Reflects the entity at the time it was added to the transaction, or its revision if `revised_at` is not `null`. Returned when the `include` parameter is used with the `address` value and the transaction has an `address_id`. x-included: true adjustments: type: array items: $ref: "#/components/schemas/Adjustment" description: List of adjustments for this transaction. Returned when the `include` parameter is used with the `adjustment` value and the transaction has adjustments. x-included: true adjustments_totals: allOf: - $ref: "#/components/schemas/TransactionAdjustmentsTotalsInclude" description: Object containing totals for all adjustments on a transaction. Returned when the `include` parameter is used with the `adjustments_totals` value. x-included: true business: allOf: - $ref: "#/components/schemas/Business" description: Business for this transaction. Reflects the entity at the time it was added to the transaction, or its revision if `revised_at` is not `null`. Returned when the `include` parameter is used with the `business` value and the transaction has a `business_id`. x-included: true customer: allOf: - $ref: "#/components/schemas/Customer" description: Customer for this transaction. Reflects the entity at the time it was added to the transaction, or its revision if `revised_at` is not `null`. Returned when the `include` parameter is used with the `customer` value and the transaction has a `customer_id`. x-included: true discount: allOf: - $ref: "#/components/schemas/Discount" description: Discount for this transaction. Reflects the entity at the time it was added to the transaction. Returned when the `include` parameter is used with the `discount` value and the transaction has a `discount_id`. x-included: true available_payment_methods: type: array items: $ref: "#/components/schemas/PaymentMethodType" description: List of available payment methods for this transaction. Returned when the `include` parameter is used with the `available_payment_methods` value. readOnly: true x-included: true description: Represents a transaction entity with included entities. title: Transaction with includes TransactionIncludeQuery: type: string enum: - address - adjustments - adjustments_totals - available_payment_methods - business - customer - discount x-enum-permissions: address: - address.read adjustments: - adjustment.read business: - business.read customer: - customer.read discount: - discount.read x-enum-descriptions: address: description: Include an object for the address entity related to this transaction. Only included where an `address_id` is set against the transaction. adjustments: description: Include an array of adjustments related to this transaction. Only included where a transaction has adjustments. adjustments_totals: description: Include an object that includes totals for all adjustments against this transaction. available_payment_methods: description: Include an array of available payment methods for this transaction. business: description: Include an object for the business entity related to this transaction. Only included where a `business_id` is set against the transaction. customer: description: Include an object for the customer entity related to this transaction. Only included where a `customer_id` is set against the transaction. discount: description: Include an object for the discount entity related to this transaction. Only included where a `discount_id` is set against the transaction. TransactionOriginQuery: type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - subscription_import - web x-enum-descriptions: api: description: Return transactions where the origin is `api`. Returned transactions were created by the Paddle API. subscription_charge: description: Return transactions where the origin is `subscription_charge`. Returned transactions were created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Return transactions where the origin is `subscription_payment_method_change`. Returned transactions were created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Return transactions where the origin is `subscription_recurring`. Returned transactions were created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Return transactions where the origin is `subscription_update`. Returned transactions were created automatically by Paddle as a result of an update to a subscription. subscription_import: description: Return transactions where the origin is `subscription_import`. Returned transactions that were created automatically by Paddle as a result of a subscription import. web: description: Return transactions where the origin is `web`. Returned transactions were created automatically by Paddle.js for a checkout. TransactionStatusQuery: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due x-enum-descriptions: draft: description: Return transactions where the status is `draft`. Returned transactions are missing required fields. ready: description: Return transactions where the status is `ready`. Returned transactions have all of the required fields to be marked as `billed` or `completed`. billed: description: Return transactions where the status is `billed`. Returned transactions are considered legal records and cannot be changed. paid: description: Return transactions where the status is `paid`. Returned transactions are fully paid, but have not yet been fully processed internally. completed: description: Return transactions where the status is `completed`. Returned transactions are fully paid and processed. canceled: description: Return transactions where the status is `canceled`. Returned transactions have been canceled and are no longer due. past_due: description: Return transactions where the status is `past_due`. Returned transactions are past due, meaning payment failed for automatically-collected transactions or payment terms elapsed for manually-collected transactions. TransactionStatusCreate: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. title: TransactionStatusCreate x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. readOnly: true ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. readOnly: true billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. readOnly: true completed: description: Transaction is fully paid and processed. readOnly: true canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. readOnly: true DiscountCustom: type: object required: - description - type - amount properties: description: type: string minLength: 1 maxLength: 500 description: Short description for this discount for your reference. Not shown to customers. type: allOf: - $ref: "#/components/schemas/DiscountType" description: Type of discount. Determines how this discount impacts the checkout or transaction total. title: DiscountType x-enum-descriptions: flat: description: Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`. flat_per_seat: description: Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`. percentage: description: Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%. amount: type: string description: Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency. recur: type: boolean description: Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). If omitted, defaults to `false`. default: false maximum_recurring_intervals: anyOf: - type: integer - type: "null" minimum: 1 description: |- Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever. Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. restrict_to: anyOf: - type: array items: type: string - type: "null" description: Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. uniqueItems: true description: Represents a discount entity for a custom, non-catalog discount. title: DiscountCustom additionalProperties: false TransactionItemCreateWithPriceId: type: object required: - quantity - price_id properties: quantity: type: integer minimum: 1 description: Quantity of this item on the transaction. proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. readOnly: true price_id: allOf: - $ref: "#/components/schemas/PriceId" description: Paddle ID of an existing catalog price to add to this transaction, prefixed with `pri_`. writeOnly: true description: Add a catalog item to a transaction. In this case, the product and price that you're billing for exist in your product catalog in Paddle. title: Catalog item TransactionItemCreateWithPrice: type: object required: - quantity - price properties: quantity: type: integer minimum: 1 description: Quantity of this item on the transaction. proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. readOnly: true price: allOf: - $ref: "#/components/schemas/TransactionPriceCreateWithProductId" description: Price object for a non-catalog item to charge for. Include a `product_id` to relate this non-catalog price to an existing catalog price. description: Add a non-catalog price for an existing product in your catalog to a transaction. In this case, the product you're billing for is a catalog product, but you charge a specific price for it. title: Non-catalog price for an existing product TransactionItemCreateWithPriceAndProduct: type: object required: - quantity - price properties: quantity: type: integer minimum: 1 description: Quantity of this item on the transaction. proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. readOnly: true price: allOf: - $ref: "#/components/schemas/TransactionPriceCreateWithProduct" description: Price object for a non-catalog item to charge for. Include a `product` object to create a non-catalog product for this non-catalog price. description: Add a non-catalog price for a non-catalog product in your catalog to a transaction. In this case, the product and price that you're billing for are specific to this transaction. title: Non-catalog price and product TransactionItemCreate: oneOf: - $ref: "#/components/schemas/TransactionItemCreateWithPriceId" - $ref: "#/components/schemas/TransactionItemCreateWithPrice" - $ref: "#/components/schemas/TransactionItemCreateWithPriceAndProduct" TransactionCheckoutCreate: type: object properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: |- Checkout URL to use for the payment link for this transaction. Pass the URL for an approved domain, or `null` to set to your default payment URL. Paddle returns a unique payment link composed of the URL passed or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. You may pass a URL when creating or updating an automatically-collected transaction, or when creating or updating a manually-collected transaction where `billing_details.enable_checkout` is `true`. title: TransactionCheckoutCreate TransactionCreate: type: object required: - items properties: id: allOf: - $ref: "#/components/schemas/TransactionId" readOnly: true status: allOf: - $ref: "#/components/schemas/TransactionStatusCreate" description: |- Status of this transaction. You may set a transaction to `billed` when creating, or omit to let Paddle set the status. Transactions are created as `ready` if they have an `address_id`, `customer_id`, and `items`, otherwise they are created as `draft`. Marking as `billed` when creating is typically used when working with manually-collected transactions as part of an invoicing workflow. Billed transactions cannot be updated, only canceled. customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. If omitted, transaction status is `draft`. address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. Requires `customer_id`. If omitted, transaction status is `draft`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: "Paddle ID of the business that this transaction is for, prefixed with `biz_`. Requires `customer_id`. " custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. origin: allOf: - $ref: "#/components/schemas/TransactionOrigin" x-external-readOnly: true subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. x-external-readOnly: true invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 readOnly: true invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 readOnly: true collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. If omitted, defaults to `automatic`. default: automatic discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount to apply to this transaction, prefixed with `dsc_`. discount: anyOf: - $ref: "#/components/schemas/DiscountCustom" - type: "null" description: Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`. billing_details: anyOf: - $ref: "#/components/schemas/BillingDetailsCreate" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: $ref: "#/components/schemas/TransactionItemCreate" minItems: 1 maxItems: 100 description: |- List of items to charge for. You can charge for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can charge for non-catalog items by passing a price object. Non-catalog items can be for existing products, or you can pass a product object as part of your price to charge for a non-catalog product. details: allOf: - $ref: "#/components/schemas/TransactionDetails" readOnly: true payments: type: array items: $ref: "#/components/schemas/TransactionPaymentAttempt" description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. readOnly: true checkout: anyOf: - $ref: "#/components/schemas/TransactionCheckoutCreate" - type: "null" description: Paddle Checkout details for this transaction. You may pass a URL when creating or updating an automatically-collected transaction, or when creating or updating a manually-collected transaction where `billing_details.enable_checkout` is `true`. title: TransactionCheckout created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. readOnly: true description: Represents a transaction entity when creating transactions. title: TransactionCreate TransactionItemUpdate: oneOf: - $ref: "#/components/schemas/TransactionItemCreateWithPriceId" - $ref: "#/components/schemas/TransactionItemCreateWithPrice" - $ref: "#/components/schemas/TransactionItemCreateWithPriceAndProduct" UpdateTransaction: type: object properties: id: allOf: - $ref: "#/components/schemas/TransactionId" readOnly: true status: allOf: - $ref: "#/components/schemas/TransactionStatus" description: |- Status of this transaction. You may set a transaction to `billed` or `canceled`. Billed transactions cannot be changed. For manually-collected transactions, marking as `billed` is essentially issuing an invoice. customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. origin: $ref: "#/components/schemas/TransactionOrigin" subscription_id: anyOf: - $ref: "#/components/schemas/SubscriptionId" - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. x-external-readOnly: true invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 readOnly: true invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 readOnly: true collection_mode: allOf: - $ref: "#/components/schemas/CollectionMode" description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount to apply to this transaction, prefixed with `dsc_`. discount: anyOf: - $ref: "#/components/schemas/DiscountCustom" - type: "null" description: Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`. billing_details: anyOf: - $ref: "#/components/schemas/BillingDetailsUpdate" - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - $ref: "#/components/schemas/TimePeriod" - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: $ref: "#/components/schemas/TransactionItemUpdate" minItems: 1 maxItems: 100 description: |- List of items on this transaction. When making a request, each object must contain either a `price_id` or a `price` object, and a `quantity`. Include a `price_id` to charge for an existing catalog item, or a `price` object to charge for a non-catalog item. details: allOf: - $ref: "#/components/schemas/TransactionDetails" readOnly: true payments: type: array items: $ref: "#/components/schemas/TransactionPaymentAttempt" description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. readOnly: true checkout: anyOf: - $ref: "#/components/schemas/TransactionCheckoutCreate" - type: "null" description: Paddle Checkout details for this transaction. You may pass a URL when creating or updating an automatically-collected transaction, or when creating or updating a manually-collected transaction where `billing_details.enable_checkout` is `true`. title: TransactionCheckout created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true billed_at: anyOf: - $ref: "#/components/schemas/Timestamp" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. readOnly: true description: Represents a transaction entity when updating transactions. title: TransactionUpdate PricePreview: type: object required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at properties: id: anyOf: - $ref: "#/components/schemas/PriceId" - type: "null" description: |- Unique Paddle ID for this price, prefixed with `pri_`. The value is null for custom prices being previewed. readOnly: true product_id: anyOf: - $ref: "#/components/schemas/ProductId" - type: "null" description: |- Paddle ID for the product that this price is for, prefixed with `pro_`. The value is null for custom products being previewed. description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: allOf: - $ref: "#/components/schemas/CatalogType" default: standard name: anyOf: - $ref: "#/components/schemas/PriceName" - type: "null" billing_cycle: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - $ref: "#/components/schemas/Duration" - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: allOf: - $ref: "#/components/schemas/TaxMode" default: account_setting unit_price: allOf: - $ref: "#/components/schemas/Money" description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. unit_price_overrides: type: array items: $ref: "#/components/schemas/UnitPriceOverride" maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: allOf: - $ref: "#/components/schemas/PriceQuantity" description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: allOf: - $ref: "#/components/schemas/Status" default: active custom_data: anyOf: - $ref: "#/components/schemas/CustomData" - type: "null" description: Your own structured key-value data. import_meta: anyOf: - $ref: "#/components/schemas/ImportMeta" - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: allOf: - $ref: "#/components/schemas/CreatedAt" readOnly: true updated_at: allOf: - $ref: "#/components/schemas/UpdatedAt" readOnly: true description: Represents a price preview entity. title: Price preview TransactionPreviewItem: type: object required: - quantity - include_in_totals - proration - price properties: quantity: type: integer description: Quantity of this item on the transaction. include_in_totals: type: boolean description: Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. default: true proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. `null` for transaction previews. readOnly: true price: allOf: - $ref: "#/components/schemas/PricePreview" readOnly: true title: Transaction item (preview) TransactionPreview: type: object required: - customer_id - address_id - business_id - currency_code - discount_id - customer_ip_address - address - ignore_trials - items - details - available_payment_methods properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. address_id: anyOf: - $ref: "#/components/schemas/AddressId" - type: "null" description: Paddle ID of the address that this transaction preview is for, prefixed with `add_`. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this transaction preview is for, prefixed with `biz_`. currency_code: allOf: - $ref: "#/components/schemas/CurrencyCode" description: Supported three-letter ISO 4217 currency code. discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount applied to this transaction preview, prefixed with `dsc_`. customer_ip_address: anyOf: - type: string - type: "null" description: IP address for this transaction preview. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. address: anyOf: - $ref: "#/components/schemas/AddressPreview" - type: "null" description: Address for this transaction preview. Send one of `address_id`, `customer_ip_address`, or the `address` object when previewing. ignore_trials: type: boolean description: |- Whether trials should be ignored for transaction preview calculations. By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. default: false items: type: array items: $ref: "#/components/schemas/TransactionPreviewItem" minItems: 1 maxItems: 100 description: List of items to preview transaction calculations for. details: allOf: - $ref: "#/components/schemas/TransactionPreviewDetails" readOnly: true available_payment_methods: type: array items: $ref: "#/components/schemas/PaymentMethodType" description: List of available payment methods for Paddle Checkout given the price and location information passed. readOnly: true description: Represents a transaction entity when previewing transactions. title: TransactionPreview TransactionPreviewItemWithPriceIdRequest: type: object required: - quantity - price_id properties: quantity: type: integer description: Quantity of this item on the transaction. include_in_totals: type: boolean description: Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. default: true proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. `null` for transaction previews. readOnly: true price_id: allOf: - $ref: "#/components/schemas/PriceId" description: Paddle ID of an existing catalog price to preview charging for, prefixed with `pri_`. writeOnly: true description: Add a catalog item to a transaction. In this case, the product and price that you're billing for exist in your product catalog in Paddle. title: Catalog item TransactionPreviewItemWithPriceRequest: type: object required: - quantity - price properties: quantity: type: integer description: Quantity of this item on the transaction. include_in_totals: type: boolean description: Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. default: true proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. `null` for transaction previews. readOnly: true price: allOf: - $ref: "#/components/schemas/TransactionPriceCreateWithProductId" description: Price object for a non-catalog item to preview charging for. Include a `product_id` to relate this non-catalog price to an existing catalog price. description: Add a non-catalog price for an existing product in your catalog to a transaction. In this case, the product you're billing for is a catalog product, but you charge a specific price for it. title: Non-catalog price for an existing product TransactionPreviewItemWithPriceAndProductRequest: type: object required: - quantity - price properties: quantity: type: integer description: Quantity of this item on the transaction. include_in_totals: type: boolean description: Whether this item should be included in totals for this transaction preview. Typically used to exclude one-time charges from calculations. default: true proration: anyOf: - $ref: "#/components/schemas/TransactionItemProration" - type: "null" description: How proration was calculated for this item. `null` for transaction previews. readOnly: true price: allOf: - $ref: "#/components/schemas/TransactionPriceCreateWithProduct" description: Price object for a non-catalog item to preview charging for. Include a `product` object to create a non-catalog product for this non-catalog price. description: Add a non-catalog price for a non-catalog product in your catalog to a transaction. In this case, the product and price that you're billing for are specific to this transaction. title: Non-catalog price and product TransactionPreviewCreateItems: oneOf: - $ref: "#/components/schemas/TransactionPreviewItemWithPriceIdRequest" - $ref: "#/components/schemas/TransactionPreviewItemWithPriceRequest" - $ref: "#/components/schemas/TransactionPreviewItemWithPriceAndProductRequest" TransactionPreviewCreateWithoutAddress: type: object required: - items properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount to apply to this transaction preview, prefixed with `dsc_`. discount: anyOf: - $ref: "#/components/schemas/DiscountCustom" - type: "null" description: Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`. ignore_trials: type: boolean description: |- Whether trials should be ignored for transaction preview calculations. By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. default: false items: type: array items: $ref: "#/components/schemas/TransactionPreviewCreateItems" description: |- List of items to preview charging for. You can preview charging for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can preview charging for non-catalog items by passing a price object. Non-catalog items can be for existing products, or you can pass a product object as part of your price to preview charging for a non-catalog product. description: Preview a transaction without using any address information. title: No location information TransactionPreviewCreateAddress: type: object required: - items - address properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount to apply to this transaction preview, prefixed with `dsc_`. discount: anyOf: - $ref: "#/components/schemas/DiscountCustom" - type: "null" description: Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`. ignore_trials: type: boolean description: |- Whether trials should be ignored for transaction preview calculations. By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. default: false items: type: array items: $ref: "#/components/schemas/TransactionPreviewCreateItems" description: |- List of items to preview charging for. You can preview charging for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can preview charging for non-catalog items by passing a price object. Non-catalog items can be for existing products, or you can pass a product object as part of your price to preview charging for a non-catalog product. address: allOf: - $ref: "#/components/schemas/AddressPreviewCreate" description: Address for this transaction preview. description: Paddle uses the country and ZIP code (where supplied) to calculate totals. title: Country and ZIP/postal code TransactionPreviewCreateIpAddress: type: object required: - items - customer_ip_address properties: customer_id: anyOf: - $ref: "#/components/schemas/CustomerId" - type: "null" description: Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount to apply to this transaction preview, prefixed with `dsc_`. discount: anyOf: - $ref: "#/components/schemas/DiscountCustom" - type: "null" description: Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`. ignore_trials: type: boolean description: |- Whether trials should be ignored for transaction preview calculations. By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. default: false items: type: array items: $ref: "#/components/schemas/TransactionPreviewCreateItems" description: |- List of items to preview charging for. You can preview charging for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can preview charging for non-catalog items by passing a price object. Non-catalog items can be for existing products, or you can pass a product object as part of your price to preview charging for a non-catalog product. customer_ip_address: type: string description: IP address for this transaction preview. description: Paddle fetches location using the IP address to calculate totals. title: IP address TransactionPreviewCreatePaddleIds: type: object required: - items - customer_id - address_id properties: currency_code: anyOf: - $ref: "#/components/schemas/CurrencyCode" - type: "null" description: Supported three-letter ISO 4217 currency code. discount_id: anyOf: - $ref: "#/components/schemas/DiscountId" - type: "null" description: Paddle ID of the discount to apply to this transaction preview, prefixed with `dsc_`. discount: anyOf: - $ref: "#/components/schemas/DiscountCustom" - type: "null" description: Apply a non-catalog discount to a transaction. Send one of `discount_id` or `discount`. ignore_trials: type: boolean description: |- Whether trials should be ignored for transaction preview calculations. By default, recurring items with trials are considered to have a zero charge when previewing. Set to `true` to disable this. default: false items: type: array items: $ref: "#/components/schemas/TransactionPreviewCreateItems" description: |- List of items to preview charging for. You can preview charging for items that you've added to your catalog by passing the Paddle ID of an existing price entity, or you can preview charging for non-catalog items by passing a price object. Non-catalog items can be for existing products, or you can pass a product object as part of your price to preview charging for a non-catalog product. customer_id: allOf: - $ref: "#/components/schemas/CustomerId" description: Paddle ID of the customer that this transaction preview is for, prefixed with `ctm_`. address_id: allOf: - $ref: "#/components/schemas/AddressId" description: Paddle ID of the address that this transaction preview is for, prefixed with `add_`. Requires `customer_id`. business_id: anyOf: - $ref: "#/components/schemas/BusinessId" - type: "null" description: Paddle ID of the business that this transaction preview is for, prefixed with `biz_`. description: Paddle uses existing customer data to calculate totals. Typically used for logged-in customers. title: Existing customer Paddle IDs TransactionPreviewCreate: anyOf: - $ref: "#/components/schemas/TransactionPreviewCreateWithoutAddress" - $ref: "#/components/schemas/TransactionPreviewCreateAddress" - $ref: "#/components/schemas/TransactionPreviewCreateIpAddress" - $ref: "#/components/schemas/TransactionPreviewCreatePaddleIds" TransactionReviseCustomer: type: object properties: name: allOf: - $ref: "#/components/schemas/Name" description: Revised name of the customer for this transaction. examples: - Sam Miller description: Revised customer information for this transaction. title: TransactionRevisionCustomer TransactionReviseBusiness: type: object properties: name: allOf: - $ref: "#/components/schemas/Name" description: Revised name of the business for this transaction. examples: - ChatApp Inc. tax_identifier: type: string maxLength: 1024 description: Revised tax or VAT number for this transaction. You can't remove a valid tax or VAT number, only replace it with another valid one. Paddle automatically creates an adjustment to refund any tax where applicable. examples: - AB0123456789 description: Revised business information for this transaction. title: TransactionRevisionBusiness TransactionReviseAddress: type: object properties: first_line: type: string maxLength: 1024 description: Revised first line of the address for this transaction. examples: - 3811 Ditmars Blvd second_line: anyOf: - type: string - type: "null" maxLength: 1024 description: Revised second line of the address for this transaction. city: type: string maxLength: 200 description: Revised city of the address for this transaction. examples: - Astoria region: type: string maxLength: 200 description: Revised state, county, or region of the address for this transaction. examples: - NY description: Revised address information for this transaction. title: TransactionRevisionAddress TransactionRevise: type: object properties: customer: allOf: - $ref: "#/components/schemas/TransactionReviseCustomer" description: Revised customer information for this transaction. title: TransactionRevisionCustomer business: allOf: - $ref: "#/components/schemas/TransactionReviseBusiness" description: Revised business information for this transaction. title: TransactionRevisionBusiness address: allOf: - $ref: "#/components/schemas/TransactionReviseAddress" description: Revised address information for this transaction. title: TransactionRevisionAddress description: Represents a customer information revision for a transaction. title: TransactionRevise additionalProperties: false GetInvoicePdf: type: object required: - url properties: url: type: string description: URL of the requested resource. title: Transaction invoice PDF GetInvoicePdfResponse: type: object required: - meta - data properties: meta: $ref: "#/components/schemas/Meta" data: $ref: "#/components/schemas/GetInvoicePdf" securitySchemes: BearerAuth: type: http scheme: Bearer description: |- Requests are authenticated with API keys. Provide your API key as a Bearer token in the Authorization header. API keys are assigned permissions, granting them access to entities and operations. Each endpoint may require one or more permissions, defined with the `x-permissions` extension. Values for include parameters may require specific permissions as defined in the `x-enum-permissions` extension. See all available permissions in the apikey-permission schema or [documentation](https://developer.paddle.com/api-reference/about/permissions). Get an API key and select the permissions you need from the Paddle dashboard under [Paddle > Developer Tools > Authentication](https://vendors.paddle.com/authentication). servers: - url: https://sandbox-api.paddle.com description: Sandbox variables: {} - url: https://api.paddle.com description: Live variables: {} webhooks: address.created: post: operationId: address-created summary: address.created description: Occurs when an address is created. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Addresses requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01ghbm9egqcxtz4ap4dfg8dtaf customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: The ID of the customer this address belongs to. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs description: anyOf: - type: string maxLength: 1024 description: Memorable description for this address. title: Description examples: - Paddle.com - type: "null" minLength: 1 maxLength: 1024 examples: - Paddle HQ first_line: anyOf: - type: string maxLength: 1024 description: First line of this address. title: First line examples: - 3811 Ditmars Blvd - type: "null" minLength: 1 maxLength: 1024 examples: - 30 Old Bailey second_line: anyOf: - type: string maxLength: 1024 description: Second line of this address. title: Second line - type: "null" minLength: 1 maxLength: 1024 city: anyOf: - type: string maxLength: 200 description: City of this address. title: City examples: - Astoria - type: "null" minLength: 1 maxLength: 200 examples: - London postal_code: anyOf: - type: string maxLength: 200 description: ZIP or postal code of this address. Required for some countries. title: Postal Code examples: - 11105-1803 - type: "null" minLength: 1 maxLength: 200 examples: - EC4M 7AU region: anyOf: - type: string maxLength: 200 description: State, county, or region of this address. title: Region examples: - NY - type: "null" minLength: 1 maxLength: 200 examples: - City of London country_code: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia examples: - GB custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - customer_id - description - first_line - second_line - city - postal_code - region - country_code - custom_data - status - import_meta - created_at - updated_at type: object description: New or changed entity. examples: address.created: summary: address.created value: event_id: evt_01hv8gq3cywt48xmwh3hqec1ty event_type: address.created occurred_at: "2024-04-12T06:42:59.102202Z" notification_id: ntf_01hv8gq3ez64ktsbv34bpqrqfp data: id: add_01hv8gq3318ktkfengj2r75gfx city: New York region: NY status: active created_at: "2024-04-12T06:42:58.785Z" first_line: 4050 Jefferson Plaza, 41st Floor updated_at: "2024-04-12T06:42:58.785Z" custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Head Office import_meta: null postal_code: "10021" second_line: null country_code: US security: - {} externalDocs: url: https://developer.paddle.com/webhooks/addresses/address-created description: address.created address.imported: post: operationId: address-imported summary: address.imported description: Occurs when an address is imported. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Addresses requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01ghbm9egqcxtz4ap4dfg8dtaf customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: The ID of the customer this address belongs to. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs description: anyOf: - type: string maxLength: 1024 description: Memorable description for this address. title: Description examples: - Paddle.com - type: "null" minLength: 1 maxLength: 1024 examples: - Paddle HQ first_line: anyOf: - type: string maxLength: 1024 description: First line of this address. title: First line examples: - 3811 Ditmars Blvd - type: "null" minLength: 1 maxLength: 1024 examples: - 30 Old Bailey second_line: anyOf: - type: string maxLength: 1024 description: Second line of this address. title: Second line - type: "null" minLength: 1 maxLength: 1024 city: anyOf: - type: string maxLength: 200 description: City of this address. title: City examples: - Astoria - type: "null" minLength: 1 maxLength: 200 examples: - London postal_code: anyOf: - type: string maxLength: 200 description: ZIP or postal code of this address. Required for some countries. title: Postal Code examples: - 11105-1803 - type: "null" minLength: 1 maxLength: 200 examples: - EC4M 7AU region: anyOf: - type: string maxLength: 200 description: State, county, or region of this address. title: Region examples: - NY - type: "null" minLength: 1 maxLength: 200 examples: - City of London country_code: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia examples: - GB custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - customer_id - description - first_line - second_line - city - postal_code - region - country_code - custom_data - status - import_meta - created_at - updated_at type: object description: New or changed entity. examples: address.imported: summary: address.imported value: event_id: evt_01hv8h6jzvsbbk6xmf7zdkrdkx event_type: address.imported occurred_at: "2024-04-12T06:51:26.587790Z" notification_id: ntf_01hv8h6k23gm15hzrr2p4330pj data: id: add_01hv8gq3318ktkfengj2r75gfx city: Phoenix region: AZ status: active created_at: "2024-04-12T06:51:26.153Z" first_line: 8700 Edgemont Road updated_at: "2024-04-12T06:51:26.153Z" custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: Sales Office import_meta: external_id: 59f25141-28c3-4447-b77c-dae5677537f0 imported_from: paddle_classic postal_code: "85051" second_line: null country_code: US security: - {} externalDocs: url: https://developer.paddle.com/webhooks/addresses/address-imported description: address.imported address.updated: post: operationId: address-updated summary: address.updated description: Occurs when an address is updated. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Addresses requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01ghbm9egqcxtz4ap4dfg8dtaf customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: The ID of the customer this address belongs to. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs description: anyOf: - type: string maxLength: 1024 description: Memorable description for this address. title: Description examples: - Paddle.com - type: "null" minLength: 1 maxLength: 1024 examples: - Paddle HQ first_line: anyOf: - type: string maxLength: 1024 description: First line of this address. title: First line examples: - 3811 Ditmars Blvd - type: "null" minLength: 1 maxLength: 1024 examples: - 30 Old Bailey second_line: anyOf: - type: string maxLength: 1024 description: Second line of this address. title: Second line - type: "null" minLength: 1 maxLength: 1024 city: anyOf: - type: string maxLength: 200 description: City of this address. title: City examples: - Astoria - type: "null" minLength: 1 maxLength: 200 examples: - London postal_code: anyOf: - type: string maxLength: 200 description: ZIP or postal code of this address. Required for some countries. title: Postal Code examples: - 11105-1803 - type: "null" minLength: 1 maxLength: 200 examples: - EC4M 7AU region: anyOf: - type: string maxLength: 200 description: State, county, or region of this address. title: Region examples: - NY - type: "null" minLength: 1 maxLength: 200 examples: - City of London country_code: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia examples: - GB custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - customer_id - description - first_line - second_line - city - postal_code - region - country_code - custom_data - status - import_meta - created_at - updated_at type: object description: New or changed entity. examples: address.updated: summary: address.updated value: event_id: evt_01hv8gygr4t0xrb2v821t7x9vk event_type: address.updated occurred_at: "2024-04-12T06:47:02.148531Z" notification_id: ntf_01hv8gygyqp6hyjjxmmag28m6p data: id: add_01hv8gq3318ktkfengj2r75gfx city: San Jose region: CA status: active created_at: "2024-04-12T06:45:53.267Z" first_line: 5400 E Washington Drive, Floor 2 updated_at: "2024-04-12T06:47:01.533006Z" custom_data: crm_id: 08bcfb7a-41d8-4747-9ade-3d885c287d0f customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 description: California Office import_meta: null postal_code: "95314" second_line: null country_code: US security: - {} externalDocs: url: https://developer.paddle.com/webhooks/addresses/address-updated description: address.updated adjustment.created: post: operationId: adjustment-created summary: adjustment.created description: Occurs when an adjustment is created. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Adjustments requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^adj_[a-z\d]{26}$ description: Reference for the adjustment title: Adjustment ID examples: - adj_01ghvjt9dbpnndeqjve8cktgqs action: type: string enum: - credit - refund - chargeback - chargeback_reverse - chargeback_warning - chargeback_warning_reverse - credit_reverse description: This parameter indicates the type of adjustment that will be created. Partial and full refunds can be requested, but needs approval from Paddle. Tax refunds, chargeback and chargeback_warning are reserved for Paddle internal users. title: AdjustmentAction x-enum-descriptions: credit: description: Credits some or all the related transaction. refund: description: Refunds some or all the related transaction. Must be approved by Paddle in most cases. chargeback: description: Chargeback for the related transaction. Automatically created by Paddle when a customer successfully disputes a charge. chargeback_reverse: description: Reversal of a chargeback for the related transaction. Automatically created by Paddle when Paddle contests a chargeback successfully. chargeback_warning: description: Warning of an upcoming chargeback for the related transaction. Automatically created by Paddle. chargeback_warning_reverse: description: Reversal of a chargeback warning for the related transaction. Automatically created by Paddle. credit_reverse: description: Reversal of a credit for the related transaction. Automatically created by Paddle. type: anyOf: - type: string enum: - full - partial description: Type of adjustment. Use `full` to adjust the grand total for the related transaction. Include an `items` array when creating a `partial` adjustment. If omitted, defaults to `partial`. title: AdjustmentType examples: - partial x-enum-descriptions: full: description: The grand total for the related transaction is adjusted. partial: description: Some line items for the related transaction are adjusted. Requires `items`. - type: "null" description: Type of adjustment. Use `full` to adjust the grand total for the related transaction. Include an `items` array when creating a `partial` adjustment. If omitted, defaults to `partial`. transaction_id: type: string pattern: ^txn_[a-z\d]{26}$ description: ID of the Transaction that this adjustment belongs to title: Transaction ID examples: - txn_01ghvjq8hbjyf4cyfkqxa676pq subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: ID of the Subscription that this adjustment belongs to examples: - sub_01ghbmdabe7ra1v26qjpehd191 customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: ID of the Customer that this Transaction is for title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs reason: type: string description: Some context on why the adjustment is being performed credit_applied_to_balance: anyOf: - type: boolean - type: "null" description: When the Transaction collection mode is manual and the status is billed, this field is false. If it is true, it indicates that credits have been applied to the customer's balance. Otherwise, the adjustment is used to decrease the total amount of a billed invoice Transaction. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand status: type: string enum: - pending_approval - approved - rejected - reversed description: Status for an adjustment. Pending approval is read-only and cannot be set. Approved and Rejected are both final states for an adjustment. x-enum-descriptions: pending_approval: description: Adjustment is pending approval by Paddle. Most refunds for live accounts must be approved by Paddle. approved: description: Adjustment is approved. Default for credits. Set when Paddle approves a refund that was `pending_approval`. rejected: description: Adjustment has been rejected. Set when Paddle rejects a refund that was `pending_approval`. reversed: description: Adjustment has been reversed. Set by Paddle when a `chargeback_reversal` or `credit_reversal` adjustment is created for this adjustment. items: type: array items: type: object properties: id: type: string pattern: ^adjitm_[a-z\d]{26}$ description: Unique Paddle ID for this adjustment item, prefixed with `adjitm_`. title: Adjustment item ID examples: - adjitm_01gw4rs4kex0prncwfne87ft8x item_id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Paddle ID for the transaction item that this adjustment item relates to, prefixed with `txnitm_`. title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf type: type: string enum: - full - partial - tax - proration description: |- Type of adjustment for this transaction item. `tax` adjustments are automatically created by Paddle. Include `amount` when creating a `partial` adjustment. title: AdjustmentItemType examples: - full x-enum-descriptions: full: description: Full total for this transaction item is adjusted. partial: description: Part of this transaction item is adjusted. Include `amount` to specify the partial amount adjusted. tax: description: Tax for this transaction item is adjusted. Created automatically by Paddle. proration: description: A prorated amount for this transaction item is adjusted. Created automatically by Paddle in some cases when making changes to a subscription. deprecated: true amount: anyOf: - type: string - type: "null" description: Amount adjusted for this transaction item. Required when item `type` is `partial`. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this adjustment item. totals: properties: subtotal: type: string description: Amount multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" required: - subtotal - tax - total type: object description: Breakdown of the total for an adjustment item. title: Adjustment item totals required: - id - item_id - type - amount - proration - totals totals: type: object required: - subtotal - tax - total - fee - earnings - currency_code properties: subtotal: type: string description: Total before tax. For tax adjustments, the value is 0. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this adjustment. examples: - "300" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" earnings: type: string description: |- Total earnings. This is the subtotal minus the Paddle fee. For tax adjustments, this value is negative, which means a positive effect in the transaction earnings. This is because the fee is originally calculated from the transaction total, so if a tax adjustment is made, then the fee portion of it is returned. examples: - "14700" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code used for this adjustment. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand examples: - USD description: Breakdown of the total for an adjustment. title: AdjustmentTotals payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Adjustment total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the adjustment subtotal. examples: - "1500" total: type: string description: Adjustment total after tax. examples: - "16500" fee: type: string description: Adjusted Paddle fee. examples: - "300" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Chargeback fees incurred for this adjustment. Only returned when the adjustment `action` is `chargeback` or `chargeback_warning`. earnings: type: string description: Adjusted payout earnings. This is the adjustment total plus adjusted Paddle fees, excluding chargeback fees. examples: - "15120" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand description: Breakdown of how this adjustment affects your payout balance. title: Payout totals (adjustment) - type: "null" tax_rates_used: anyOf: - type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this adjustment. examples: - "0.2" totals: properties: subtotal: type: string description: Total before tax. For tax adjustments, the value is 0. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" required: - subtotal - tax - total type: object description: Calculated totals for the tax applied to this adjustment. title: AdjustmentTaxRateUsedTotals description: List of tax rates applied for this adjustment. title: AdjustmentTaxRateUsed - type: "null" created_at: type: string format: date-time description: Timestamp following the RFC 3339 standard. This is set by the system, and cannot be changed via the API. title: Created at examples: - "2019-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: Timestamp following the RFC 3339 standard. This is set by the system, and cannot be changed via the API. title: Updated at examples: - "2019-10-12T07:20:50.52Z" required: - id - action - type - transaction_id - subscription_id - customer_id - reason - credit_applied_to_balance - currency_code - status - items - totals - payout_totals - tax_rates_used - created_at - updated_at type: object description: New or changed entity. examples: adjustment.created: summary: adjustment.created value: event_id: evt_01hvgf2skkg8dsk5dczemw2bx1 event_type: adjustment.created occurred_at: "2024-04-15T08:48:20.595926Z" notification_id: ntf_01hvgf2spk3bvewnw8t2zrnbmb data: id: adj_01hvgf2s84dr6reszzg29zbvcm items: - id: adjitm_01hvgf2s84dr6reszzg2gx70gj type: partial amount: "100" totals: tax: "8" total: "100" subtotal: "92" item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw proration: null action: refund type: partial reason: error status: pending_approval totals: fee: "5" tax: "8" total: "100" earnings: "87" subtotal: "92" currency_code: USD retained_fee: "5" created_at: "2024-04-15T08:48:20.239695Z" updated_at: "2024-04-15T08:48:20.239695Z" customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 currency_code: USD payout_totals: fee: "5" tax: "8" total: "100" earnings: "87" subtotal: "92" currency_code: USD retained_fee: "5" chargeback_fee: amount: "0" original: null transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y subscription_id: sub_01hvccbx32q2gb40sqx7n42430 credit_applied_to_balance: null tax_rates_used: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/adjustments/adjustment-created description: adjustment.created adjustment.updated: post: operationId: adjustment-updated summary: adjustment.updated description: |- Occurs when an adjustment is updated. This only occurs for `refund` adjustments, which must be approved by Paddle and are created as `pending_approval` initially. On review, they move to `approved` or `rejected` and `adjustment.updated` occurs. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Adjustments requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^adj_[a-z\d]{26}$ description: Reference for the adjustment title: Adjustment ID examples: - adj_01ghvjt9dbpnndeqjve8cktgqs action: type: string enum: - credit - refund - chargeback - chargeback_reverse - chargeback_warning - chargeback_warning_reverse - credit_reverse description: This parameter indicates the type of adjustment that will be created. Partial and full refunds can be requested, but needs approval from Paddle. Tax refunds, chargeback and chargeback_warning are reserved for Paddle internal users. title: AdjustmentAction x-enum-descriptions: credit: description: Credits some or all the related transaction. refund: description: Refunds some or all the related transaction. Must be approved by Paddle in most cases. chargeback: description: Chargeback for the related transaction. Automatically created by Paddle when a customer successfully disputes a charge. chargeback_reverse: description: Reversal of a chargeback for the related transaction. Automatically created by Paddle when Paddle contests a chargeback successfully. chargeback_warning: description: Warning of an upcoming chargeback for the related transaction. Automatically created by Paddle. chargeback_warning_reverse: description: Reversal of a chargeback warning for the related transaction. Automatically created by Paddle. credit_reverse: description: Reversal of a credit for the related transaction. Automatically created by Paddle. type: anyOf: - type: string enum: - full - partial description: Type of adjustment. Use `full` to adjust the grand total for the related transaction. Include an `items` array when creating a `partial` adjustment. If omitted, defaults to `partial`. title: AdjustmentType examples: - partial x-enum-descriptions: full: description: The grand total for the related transaction is adjusted. partial: description: Some line items for the related transaction are adjusted. Requires `items`. - type: "null" description: Type of adjustment. Use `full` to adjust the grand total for the related transaction. Include an `items` array when creating a `partial` adjustment. If omitted, defaults to `partial`. transaction_id: type: string pattern: ^txn_[a-z\d]{26}$ description: ID of the Transaction that this adjustment belongs to title: Transaction ID examples: - txn_01ghvjq8hbjyf4cyfkqxa676pq subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: ID of the Subscription that this adjustment belongs to examples: - sub_01ghbmdabe7ra1v26qjpehd191 customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: ID of the Customer that this Transaction is for title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs reason: type: string description: Some context on why the adjustment is being performed credit_applied_to_balance: anyOf: - type: boolean - type: "null" description: When the Transaction collection mode is manual and the status is billed, this field is false. If it is true, it indicates that credits have been applied to the customer's balance. Otherwise, the adjustment is used to decrease the total amount of a billed invoice Transaction. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand status: type: string enum: - pending_approval - approved - rejected - reversed description: Status for an adjustment. Pending approval is read-only and cannot be set. Approved and Rejected are both final states for an adjustment. x-enum-descriptions: pending_approval: description: Adjustment is pending approval by Paddle. Most refunds for live accounts must be approved by Paddle. approved: description: Adjustment is approved. Default for credits. Set when Paddle approves a refund that was `pending_approval`. rejected: description: Adjustment has been rejected. Set when Paddle rejects a refund that was `pending_approval`. reversed: description: Adjustment has been reversed. Set by Paddle when a `chargeback_reversal` or `credit_reversal` adjustment is created for this adjustment. items: type: array items: type: object properties: id: type: string pattern: ^adjitm_[a-z\d]{26}$ description: Unique Paddle ID for this adjustment item, prefixed with `adjitm_`. title: Adjustment item ID examples: - adjitm_01gw4rs4kex0prncwfne87ft8x item_id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Paddle ID for the transaction item that this adjustment item relates to, prefixed with `txnitm_`. title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf type: type: string enum: - full - partial - tax - proration description: |- Type of adjustment for this transaction item. `tax` adjustments are automatically created by Paddle. Include `amount` when creating a `partial` adjustment. title: AdjustmentItemType examples: - full x-enum-descriptions: full: description: Full total for this transaction item is adjusted. partial: description: Part of this transaction item is adjusted. Include `amount` to specify the partial amount adjusted. tax: description: Tax for this transaction item is adjusted. Created automatically by Paddle. proration: description: A prorated amount for this transaction item is adjusted. Created automatically by Paddle in some cases when making changes to a subscription. deprecated: true amount: anyOf: - type: string - type: "null" description: Amount adjusted for this transaction item. Required when item `type` is `partial`. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this adjustment item. totals: properties: subtotal: type: string description: Amount multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" required: - subtotal - tax - total type: object description: Breakdown of the total for an adjustment item. title: Adjustment item totals required: - id - item_id - type - amount - proration - totals totals: type: object required: - subtotal - tax - total - fee - earnings - currency_code properties: subtotal: type: string description: Total before tax. For tax adjustments, the value is 0. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this adjustment. examples: - "300" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" earnings: type: string description: |- Total earnings. This is the subtotal minus the Paddle fee. For tax adjustments, this value is negative, which means a positive effect in the transaction earnings. This is because the fee is originally calculated from the transaction total, so if a tax adjustment is made, then the fee portion of it is returned. examples: - "14700" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code used for this adjustment. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand examples: - USD description: Breakdown of the total for an adjustment. title: AdjustmentTotals payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Adjustment total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the adjustment subtotal. examples: - "1500" total: type: string description: Adjustment total after tax. examples: - "16500" fee: type: string description: Adjusted Paddle fee. examples: - "300" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Chargeback fees incurred for this adjustment. Only returned when the adjustment `action` is `chargeback` or `chargeback_warning`. earnings: type: string description: Adjusted payout earnings. This is the adjustment total plus adjusted Paddle fees, excluding chargeback fees. examples: - "15120" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand description: Breakdown of how this adjustment affects your payout balance. title: Payout totals (adjustment) - type: "null" tax_rates_used: anyOf: - type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this adjustment. examples: - "0.2" totals: properties: subtotal: type: string description: Total before tax. For tax adjustments, the value is 0. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" required: - subtotal - tax - total type: object description: Calculated totals for the tax applied to this adjustment. title: AdjustmentTaxRateUsedTotals description: List of tax rates applied for this adjustment. title: AdjustmentTaxRateUsed - type: "null" created_at: type: string format: date-time description: Timestamp following the RFC 3339 standard. This is set by the system, and cannot be changed via the API. title: Created at examples: - "2019-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: Timestamp following the RFC 3339 standard. This is set by the system, and cannot be changed via the API. title: Updated at examples: - "2019-10-12T07:20:50.52Z" required: - id - action - type - transaction_id - subscription_id - customer_id - reason - credit_applied_to_balance - currency_code - status - items - totals - payout_totals - tax_rates_used - created_at - updated_at type: object description: New or changed entity. examples: adjustment.updated: summary: adjustment.updated value: event_id: evt_01hvgfdfepj8eaevsjh5g4swbe event_type: adjustment.updated occurred_at: "2024-04-15T08:54:10.646377Z" notification_id: ntf_01hvgfdfhwncqrrjz1nz5eky9a data: id: adj_01hvgf2s84dr6reszzg29zbvcm items: - id: adjitm_01hvgf2s84dr6reszzg2gx70gj type: partial amount: "100" totals: tax: "8" total: "100" subtotal: "92" item_id: txnitm_01hvcc94b7qgz60qmrqmbm19zw proration: null action: refund type: partial reason: error status: pending_approval totals: fee: "5" tax: "8" total: "100" earnings: "87" subtotal: "92" currency_code: USD retained_fee: "5" created_at: "2024-04-15T08:48:20.239695Z" updated_at: "2024-04-15T08:54:10.646377Z" customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 currency_code: USD payout_totals: fee: "5" tax: "8" total: "100" earnings: "87" subtotal: "92" currency_code: USD retained_fee: "5" chargeback_fee: amount: "0" original: null transaction_id: txn_01hvcc93znj3mpqt1tenkjb04y subscription_id: sub_01hvccbx32q2gb40sqx7n42430 credit_applied_to_balance: null tax_rates_used: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/adjustments/adjustment-updated description: adjustment.updated api_key_exposure.created: post: operationId: api_key_exposure-created summary: api_key_exposure.created description: Occurs when an API key has been exposed. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - API keys requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^apkexp_[a-z\d]{26}$ description: Unique Paddle ID for this API key exposure entity, prefixed with `apkexp_`. title: ApiKeyExposureID examples: - apkexp_01jkas9tppn3bhadwpcyag45zd api_key_id: type: string pattern: ^apikey_[a-z\d]{26}$ description: Unique Paddle ID for this API key entity, prefixed with `apikey_`. title: API Key ID examples: - apikey_01gm106t81w94gyjgsaqypkjkl risk_level: type: string enum: - high - low description: Risk level of this exposure. title: ApiKeyExposureLevel x-enum-descriptions: high: description: API Key Exposure is high risk. low: description: API Key Exposure is low risk. action_taken: type: string enum: - revoked - none description: Action performed by Paddle as a result of this exposure. title: ApiKeyExposureActionTaken x-enum-descriptions: revoked: description: API Key Exposure led to a revocation. none: description: API Key Exposure resulted in no action. source: type: string enum: - github description: Source of this exposure. title: ApiKeyExposureSource x-enum-descriptions: github: description: API Key was exposed on GitHub. reference: type: string minLength: 1 maxLength: 250 description: Reference or identifier for this exposure. title: ApiKeyExposureReference description: anyOf: - type: string minLength: 1 maxLength: 250 description: Short description of this API key exposure. title: ApiKeyExposureDescription - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" required: - id - api_key_id - risk_level - action_taken - source - reference - description - created_at type: object description: New or changed entity. examples: api_key_exposure.created: summary: api_key_exposure.created value: event_id: evt_01jkdr0rc527wcjdg1txsdxhtk event_type: api_key_exposure.created occurred_at: "2025-08-19T12:58:38.746382Z" notification_id: ntf_01jkdr1mgbe62eqkh3p0fq8b0s data: id: apkexp_01jkas9tppn3bhadwpcyag45zd api_key_id: apikey_01jkdpbhazdpn3wpcya45as9tg risk_level: high action_taken: revoked source: github reference: https://github.com/octocat/Hello-World/blob/12345600b9cbe38a219f39a9941c9319b600c002/foo/bar.txt description: Exposed in Commit 12345600b9cbe38a219f39a9941c9319b600c002 created_at: "2025-08-19T12:58:38.746382Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/a-p-i-keys/api_key_exposure-created description: api_key_exposure.created api_key.created: post: operationId: api_key-created summary: api_key.created description: Occurs when an API key is created. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - API keys requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^apikey_[a-z\d]{26}$ description: Unique Paddle ID for this API key entity, prefixed with `apikey_`. title: API Key ID examples: - apikey_01ghbkd0frb9k95cnhwd1bxpvk name: type: string minLength: 1 maxLength: 150 description: Short name of this API key. Typically unique and human-identifiable. title: ApiKeyName description: anyOf: - type: string minLength: 1 maxLength: 250 description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. title: ApiKeyDescription - type: "null" description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. key: type: string pattern: ^[a-z\d_:]*\*\*\*\*$ description: An obfuscated version of this API key, prefixed with `pdl_` and containing `_apikey_ `. title: ApiKeySecretRedacted status: type: string enum: - active - expired - revoked description: Status of this API key. title: ApiKeyStatus permissions: type: array items: oneOf: - type: string enum: - address.read - address.write - adjustment.read - adjustment.write - business.read - business.write - checkout_domain.read - checkout_domain.write - client_token.read - client_token.write - customer.read - customer.write - customer_auth_token.write - customer_portal_session.write - discount.read - discount.write - metrics.read - notification.read - notification.write - notification_setting.read - notification_setting.write - notification_simulation.read - notification_simulation.write - payment_method.read - payment_method.write - price.read - price.write - product.read - product.write - report.read - report.write - subscription.read - subscription.write - transaction.read - transaction.write x-enum-descriptions: address_read: description: View customer addresses and include address data in API responses. address_write: description: Create and update customer addresses. adjustment_read: description: View adjustments and credit notes for transactions. adjustment_write: description: Create new adjustments for transactions. business_read: description: View customer businesses and include business data in API responses. business_write: description: Create and update customer businesses. checkout_domain_read: description: View checkout domains, their approval status, and payment method verification status. checkout_domain_write: description: Delete checkout domains, and trigger payment method verification (Apple Pay) for approved checkout domains. client_token_read: description: View client-side tokens. client_token_write: description: Create and update client-side tokens. customer_read: description: View customers, including credit balances, and include customer data in API responses. customer_write: description: Create new customers and update existing customer information. customer_auth_token_write: description: Generate authentication tokens for customers. customer_portal_session_write: description: Create new customer portal sessions for customers to manage their subscriptions, payment methods, and more. discount_read: description: View discounts and include discount data in API responses. discount_write: description: Create new discounts and modify existing discount information. metrics_read: description: View metrics data including revenue, subscribers, and conversion timeseries. notification_read: description: View event history, sent notifications, notification delivery logs, and include event data in API responses. notification_write: description: Replay notifications. notification_setting_read: description: View settings for notifications. notification_setting_write: description: Create, update, and delete notification settings. notification_simulation_read: description: View notification simulations, simulation runs, and events within a simulation run. notification_simulation_write: description: Create and modify notification simulations, create a run for a simulation, and replay events within a run for a simulation. payment_method_read: description: View saved payment methods for customers. payment_method_write: description: Delete payment methods for customers. price_read: description: View prices and include price data in API responses. price_write: description: Create new prices and modify existing price information. product_read: description: View products and include product data in API responses. product_write: description: Create new products and modify existing product information. report_read: description: View and download report data. report_write: description: Create new reports. subscription_read: description: View subscriptions and preview subscription updates and charges. subscription_write: description: Create one-time charges, update subscriptions, and manage subscription status. transaction_read: description: View transactions, preview transactions and prices, access invoices, and include transaction data in API responses. transaction_write: description: Create, update, and revise transactions, and update payment methods. description: Permissions assigned to this API key. Determines what actions the API key can perform. exposed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was first exposed. `null` if never exposed. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key expires. last_used_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was last used (accurate to within 1 hour). `null` if never used. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - key - status - permissions - exposed_at - expires_at - last_used_at - created_at - updated_at type: object description: New or changed entity. examples: api_key.created: summary: api_key.created value: event_id: evt_01jkdr0rc527wcjdg1txsdxhtf event_type: api_key.created occurred_at: "2025-03-26T06:58:38.517522Z" notification_id: ntf_01jkdr1mgbe62eqkh3p0fq8b0h data: id: apikey_01jkdpbhazdpn3wpcya45as9tg name: CRM integration description: Used to authenticate with the API for storing Paddle customer data in our CRM. status: active key: pdl_live_apikey_01jkdpbhaz**** permissions: - address.read - business.read - customer.read - subscription.read - transaction.read expires_at: "2025-06-26T06:58:38.517522Z" last_used_at: null created_at: "2025-03-26T06:58:38.517522Z" updated_at: "2025-03-26T06:58:38.517522Z" exposed_at: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/a-p-i-keys/api_key-created description: api_key.created api_key.updated: post: operationId: api_key-updated summary: api_key.updated description: Occurs when an API key is updated. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - API keys requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^apikey_[a-z\d]{26}$ description: Unique Paddle ID for this API key entity, prefixed with `apikey_`. title: API Key ID examples: - apikey_01ghbkd0frb9k95cnhwd1bxpvk name: type: string minLength: 1 maxLength: 150 description: Short name of this API key. Typically unique and human-identifiable. title: ApiKeyName description: anyOf: - type: string minLength: 1 maxLength: 250 description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. title: ApiKeyDescription - type: "null" description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. key: type: string pattern: ^[a-z\d_:]*\*\*\*\*$ description: An obfuscated version of this API key, prefixed with `pdl_` and containing `_apikey_ `. title: ApiKeySecretRedacted status: type: string enum: - active - expired - revoked description: Status of this API key. title: ApiKeyStatus permissions: type: array items: oneOf: - type: string enum: - address.read - address.write - adjustment.read - adjustment.write - business.read - business.write - checkout_domain.read - checkout_domain.write - client_token.read - client_token.write - customer.read - customer.write - customer_auth_token.write - customer_portal_session.write - discount.read - discount.write - metrics.read - notification.read - notification.write - notification_setting.read - notification_setting.write - notification_simulation.read - notification_simulation.write - payment_method.read - payment_method.write - price.read - price.write - product.read - product.write - report.read - report.write - subscription.read - subscription.write - transaction.read - transaction.write x-enum-descriptions: address_read: description: View customer addresses and include address data in API responses. address_write: description: Create and update customer addresses. adjustment_read: description: View adjustments and credit notes for transactions. adjustment_write: description: Create new adjustments for transactions. business_read: description: View customer businesses and include business data in API responses. business_write: description: Create and update customer businesses. checkout_domain_read: description: View checkout domains, their approval status, and payment method verification status. checkout_domain_write: description: Delete checkout domains, and trigger payment method verification (Apple Pay) for approved checkout domains. client_token_read: description: View client-side tokens. client_token_write: description: Create and update client-side tokens. customer_read: description: View customers, including credit balances, and include customer data in API responses. customer_write: description: Create new customers and update existing customer information. customer_auth_token_write: description: Generate authentication tokens for customers. customer_portal_session_write: description: Create new customer portal sessions for customers to manage their subscriptions, payment methods, and more. discount_read: description: View discounts and include discount data in API responses. discount_write: description: Create new discounts and modify existing discount information. metrics_read: description: View metrics data including revenue, subscribers, and conversion timeseries. notification_read: description: View event history, sent notifications, notification delivery logs, and include event data in API responses. notification_write: description: Replay notifications. notification_setting_read: description: View settings for notifications. notification_setting_write: description: Create, update, and delete notification settings. notification_simulation_read: description: View notification simulations, simulation runs, and events within a simulation run. notification_simulation_write: description: Create and modify notification simulations, create a run for a simulation, and replay events within a run for a simulation. payment_method_read: description: View saved payment methods for customers. payment_method_write: description: Delete payment methods for customers. price_read: description: View prices and include price data in API responses. price_write: description: Create new prices and modify existing price information. product_read: description: View products and include product data in API responses. product_write: description: Create new products and modify existing product information. report_read: description: View and download report data. report_write: description: Create new reports. subscription_read: description: View subscriptions and preview subscription updates and charges. subscription_write: description: Create one-time charges, update subscriptions, and manage subscription status. transaction_read: description: View transactions, preview transactions and prices, access invoices, and include transaction data in API responses. transaction_write: description: Create, update, and revise transactions, and update payment methods. description: Permissions assigned to this API key. Determines what actions the API key can perform. exposed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was first exposed. `null` if never exposed. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key expires. last_used_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was last used (accurate to within 1 hour). `null` if never used. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - key - status - permissions - exposed_at - expires_at - last_used_at - created_at - updated_at type: object description: New or changed entity. examples: api_key.updated: summary: api_key.updated value: event_id: evt_01jkdr0rc527wcjdg1txsdxhtg event_type: api_key.updated occurred_at: "2025-04-21T12:37:12.892738Z" notification_id: ntf_01jkdr1mgbe62eqkh3p0fq8b0j data: id: apikey_01jkdpbhazdpn3wpcya45as9tg name: CRM integration description: Used to authenticate with the API for storing Paddle customer and subscription data in our CRM. status: active key: pdl_live_apikey_01jkdpbhaz**** permissions: - address.read - business.read - customer.read - subscription.read expires_at: "2025-06-26T06:58:38.517522Z" last_used_at: "2025-04-21T11:35:42.428390Z" created_at: "2025-03-26T06:58:38.517522Z" updated_at: "2025-04-21T12:37:12.892738Z" exposed_at: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/a-p-i-keys/api_key-updated description: api_key.updated api_key.expired: post: operationId: api_key-expired summary: api_key.expired description: Occurs when an API key has expired. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - API keys requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^apikey_[a-z\d]{26}$ description: Unique Paddle ID for this API key entity, prefixed with `apikey_`. title: API Key ID examples: - apikey_01ghbkd0frb9k95cnhwd1bxpvk name: type: string minLength: 1 maxLength: 150 description: Short name of this API key. Typically unique and human-identifiable. title: ApiKeyName description: anyOf: - type: string minLength: 1 maxLength: 250 description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. title: ApiKeyDescription - type: "null" description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. key: type: string pattern: ^[a-z\d_:]*\*\*\*\*$ description: An obfuscated version of this API key, prefixed with `pdl_` and containing `_apikey_ `. title: ApiKeySecretRedacted status: type: string enum: - active - expired - revoked description: Status of this API key. title: ApiKeyStatus permissions: type: array items: oneOf: - type: string enum: - address.read - address.write - adjustment.read - adjustment.write - business.read - business.write - checkout_domain.read - checkout_domain.write - client_token.read - client_token.write - customer.read - customer.write - customer_auth_token.write - customer_portal_session.write - discount.read - discount.write - metrics.read - notification.read - notification.write - notification_setting.read - notification_setting.write - notification_simulation.read - notification_simulation.write - payment_method.read - payment_method.write - price.read - price.write - product.read - product.write - report.read - report.write - subscription.read - subscription.write - transaction.read - transaction.write x-enum-descriptions: address_read: description: View customer addresses and include address data in API responses. address_write: description: Create and update customer addresses. adjustment_read: description: View adjustments and credit notes for transactions. adjustment_write: description: Create new adjustments for transactions. business_read: description: View customer businesses and include business data in API responses. business_write: description: Create and update customer businesses. checkout_domain_read: description: View checkout domains, their approval status, and payment method verification status. checkout_domain_write: description: Delete checkout domains, and trigger payment method verification (Apple Pay) for approved checkout domains. client_token_read: description: View client-side tokens. client_token_write: description: Create and update client-side tokens. customer_read: description: View customers, including credit balances, and include customer data in API responses. customer_write: description: Create new customers and update existing customer information. customer_auth_token_write: description: Generate authentication tokens for customers. customer_portal_session_write: description: Create new customer portal sessions for customers to manage their subscriptions, payment methods, and more. discount_read: description: View discounts and include discount data in API responses. discount_write: description: Create new discounts and modify existing discount information. metrics_read: description: View metrics data including revenue, subscribers, and conversion timeseries. notification_read: description: View event history, sent notifications, notification delivery logs, and include event data in API responses. notification_write: description: Replay notifications. notification_setting_read: description: View settings for notifications. notification_setting_write: description: Create, update, and delete notification settings. notification_simulation_read: description: View notification simulations, simulation runs, and events within a simulation run. notification_simulation_write: description: Create and modify notification simulations, create a run for a simulation, and replay events within a run for a simulation. payment_method_read: description: View saved payment methods for customers. payment_method_write: description: Delete payment methods for customers. price_read: description: View prices and include price data in API responses. price_write: description: Create new prices and modify existing price information. product_read: description: View products and include product data in API responses. product_write: description: Create new products and modify existing product information. report_read: description: View and download report data. report_write: description: Create new reports. subscription_read: description: View subscriptions and preview subscription updates and charges. subscription_write: description: Create one-time charges, update subscriptions, and manage subscription status. transaction_read: description: View transactions, preview transactions and prices, access invoices, and include transaction data in API responses. transaction_write: description: Create, update, and revise transactions, and update payment methods. description: Permissions assigned to this API key. Determines what actions the API key can perform. exposed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was first exposed. `null` if never exposed. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key expires. last_used_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was last used (accurate to within 1 hour). `null` if never used. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - key - status - permissions - exposed_at - expires_at - last_used_at - created_at - updated_at type: object description: New or changed entity. examples: api_key.expired: summary: api_key.expired value: event_id: evt_01jkdr0rc527wcjdg1txsdxhth event_type: api_key.expired occurred_at: "2025-03-26T06:58:38.517522Z" notification_id: ntf_01jkdr1mgbe62eqkh3p0fq8b0k data: id: apikey_01jkdpbhazdpn3wpcya45as9tg name: CRM integration description: Used to authenticate with the API for storing Paddle customer data in our CRM. status: expired key: pdl_live_apikey_01jkdpbhaz**** permissions: - address.read - business.read - customer.read - subscription.read - transaction.read expires_at: "2025-06-26T06:58:38.517522Z" last_used_at: "2025-06-26T05:54:22.738201Z" created_at: "2025-03-26T06:58:38.517522Z" updated_at: "2025-03-26T06:58:38.517522Z" exposed_at: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/a-p-i-keys/api_key-expired description: api_key.expired api_key.expiring: post: operationId: api_key-expiring summary: api_key.expiring description: Occurs when an API key expires in 7 days. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - API keys requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^apikey_[a-z\d]{26}$ description: Unique Paddle ID for this API key entity, prefixed with `apikey_`. title: API Key ID examples: - apikey_01ghbkd0frb9k95cnhwd1bxpvk name: type: string minLength: 1 maxLength: 150 description: Short name of this API key. Typically unique and human-identifiable. title: ApiKeyName description: anyOf: - type: string minLength: 1 maxLength: 250 description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. title: ApiKeyDescription - type: "null" description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. key: type: string pattern: ^[a-z\d_:]*\*\*\*\*$ description: An obfuscated version of this API key, prefixed with `pdl_` and containing `_apikey_ `. title: ApiKeySecretRedacted status: type: string enum: - active - expired - revoked description: Status of this API key. title: ApiKeyStatus permissions: type: array items: oneOf: - type: string enum: - address.read - address.write - adjustment.read - adjustment.write - business.read - business.write - checkout_domain.read - checkout_domain.write - client_token.read - client_token.write - customer.read - customer.write - customer_auth_token.write - customer_portal_session.write - discount.read - discount.write - metrics.read - notification.read - notification.write - notification_setting.read - notification_setting.write - notification_simulation.read - notification_simulation.write - payment_method.read - payment_method.write - price.read - price.write - product.read - product.write - report.read - report.write - subscription.read - subscription.write - transaction.read - transaction.write x-enum-descriptions: address_read: description: View customer addresses and include address data in API responses. address_write: description: Create and update customer addresses. adjustment_read: description: View adjustments and credit notes for transactions. adjustment_write: description: Create new adjustments for transactions. business_read: description: View customer businesses and include business data in API responses. business_write: description: Create and update customer businesses. checkout_domain_read: description: View checkout domains, their approval status, and payment method verification status. checkout_domain_write: description: Delete checkout domains, and trigger payment method verification (Apple Pay) for approved checkout domains. client_token_read: description: View client-side tokens. client_token_write: description: Create and update client-side tokens. customer_read: description: View customers, including credit balances, and include customer data in API responses. customer_write: description: Create new customers and update existing customer information. customer_auth_token_write: description: Generate authentication tokens for customers. customer_portal_session_write: description: Create new customer portal sessions for customers to manage their subscriptions, payment methods, and more. discount_read: description: View discounts and include discount data in API responses. discount_write: description: Create new discounts and modify existing discount information. metrics_read: description: View metrics data including revenue, subscribers, and conversion timeseries. notification_read: description: View event history, sent notifications, notification delivery logs, and include event data in API responses. notification_write: description: Replay notifications. notification_setting_read: description: View settings for notifications. notification_setting_write: description: Create, update, and delete notification settings. notification_simulation_read: description: View notification simulations, simulation runs, and events within a simulation run. notification_simulation_write: description: Create and modify notification simulations, create a run for a simulation, and replay events within a run for a simulation. payment_method_read: description: View saved payment methods for customers. payment_method_write: description: Delete payment methods for customers. price_read: description: View prices and include price data in API responses. price_write: description: Create new prices and modify existing price information. product_read: description: View products and include product data in API responses. product_write: description: Create new products and modify existing product information. report_read: description: View and download report data. report_write: description: Create new reports. subscription_read: description: View subscriptions and preview subscription updates and charges. subscription_write: description: Create one-time charges, update subscriptions, and manage subscription status. transaction_read: description: View transactions, preview transactions and prices, access invoices, and include transaction data in API responses. transaction_write: description: Create, update, and revise transactions, and update payment methods. description: Permissions assigned to this API key. Determines what actions the API key can perform. exposed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was first exposed. `null` if never exposed. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key expires. last_used_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was last used (accurate to within 1 hour). `null` if never used. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - key - status - permissions - exposed_at - expires_at - last_used_at - created_at - updated_at type: object description: New or changed entity. examples: api_key.expiring: summary: api_key.expiring value: event_id: evt_01jkdr0rc527wcjdg1txsdxhtj event_type: api_key.expiring occurred_at: "2025-06-21T06:58:38.517522Z" notification_id: ntf_01jkdr1mgbe62eqkh3p0fq8b0m data: id: apikey_01jkdpbhazdpn3wpcya45as9tg name: CRM integration description: Used to authenticate with the API for storing Paddle customer data in our CRM. status: active key: pdl_live_apikey_01jkdpbhaz**** permissions: - address.read - business.read - customer.read - subscription.read - transaction.read expires_at: "2025-06-26T06:58:38.517522Z" last_used_at: "2025-06-21T05:46:53.238201Z" created_at: "2025-03-26T06:58:38.517522Z" updated_at: "2025-03-26T06:58:38.517522Z" exposed_at: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/a-p-i-keys/api_key-expiring description: api_key.expiring api_key.revoked: post: operationId: api_key-revoked summary: api_key.revoked description: Occurs when an API key has been revoked. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - API keys requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^apikey_[a-z\d]{26}$ description: Unique Paddle ID for this API key entity, prefixed with `apikey_`. title: API Key ID examples: - apikey_01ghbkd0frb9k95cnhwd1bxpvk name: type: string minLength: 1 maxLength: 150 description: Short name of this API key. Typically unique and human-identifiable. title: ApiKeyName description: anyOf: - type: string minLength: 1 maxLength: 250 description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. title: ApiKeyDescription - type: "null" description: Short description of this API key. Typically gives details about what the API key is used for and where it's used. key: type: string pattern: ^[a-z\d_:]*\*\*\*\*$ description: An obfuscated version of this API key, prefixed with `pdl_` and containing `_apikey_ `. title: ApiKeySecretRedacted status: type: string enum: - active - expired - revoked description: Status of this API key. title: ApiKeyStatus permissions: type: array items: oneOf: - type: string enum: - address.read - address.write - adjustment.read - adjustment.write - business.read - business.write - checkout_domain.read - checkout_domain.write - client_token.read - client_token.write - customer.read - customer.write - customer_auth_token.write - customer_portal_session.write - discount.read - discount.write - metrics.read - notification.read - notification.write - notification_setting.read - notification_setting.write - notification_simulation.read - notification_simulation.write - payment_method.read - payment_method.write - price.read - price.write - product.read - product.write - report.read - report.write - subscription.read - subscription.write - transaction.read - transaction.write x-enum-descriptions: address_read: description: View customer addresses and include address data in API responses. address_write: description: Create and update customer addresses. adjustment_read: description: View adjustments and credit notes for transactions. adjustment_write: description: Create new adjustments for transactions. business_read: description: View customer businesses and include business data in API responses. business_write: description: Create and update customer businesses. checkout_domain_read: description: View checkout domains, their approval status, and payment method verification status. checkout_domain_write: description: Delete checkout domains, and trigger payment method verification (Apple Pay) for approved checkout domains. client_token_read: description: View client-side tokens. client_token_write: description: Create and update client-side tokens. customer_read: description: View customers, including credit balances, and include customer data in API responses. customer_write: description: Create new customers and update existing customer information. customer_auth_token_write: description: Generate authentication tokens for customers. customer_portal_session_write: description: Create new customer portal sessions for customers to manage their subscriptions, payment methods, and more. discount_read: description: View discounts and include discount data in API responses. discount_write: description: Create new discounts and modify existing discount information. metrics_read: description: View metrics data including revenue, subscribers, and conversion timeseries. notification_read: description: View event history, sent notifications, notification delivery logs, and include event data in API responses. notification_write: description: Replay notifications. notification_setting_read: description: View settings for notifications. notification_setting_write: description: Create, update, and delete notification settings. notification_simulation_read: description: View notification simulations, simulation runs, and events within a simulation run. notification_simulation_write: description: Create and modify notification simulations, create a run for a simulation, and replay events within a run for a simulation. payment_method_read: description: View saved payment methods for customers. payment_method_write: description: Delete payment methods for customers. price_read: description: View prices and include price data in API responses. price_write: description: Create new prices and modify existing price information. product_read: description: View products and include product data in API responses. product_write: description: Create new products and modify existing product information. report_read: description: View and download report data. report_write: description: Create new reports. subscription_read: description: View subscriptions and preview subscription updates and charges. subscription_write: description: Create one-time charges, update subscriptions, and manage subscription status. transaction_read: description: View transactions, preview transactions and prices, access invoices, and include transaction data in API responses. transaction_write: description: Create, update, and revise transactions, and update payment methods. description: Permissions assigned to this API key. Determines what actions the API key can perform. exposed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was first exposed. `null` if never exposed. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key expires. last_used_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this API key was last used (accurate to within 1 hour). `null` if never used. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - key - status - permissions - exposed_at - expires_at - last_used_at - created_at - updated_at type: object description: New or changed entity. examples: api_key.revoked: summary: api_key.revoked value: event_id: evt_01jkdr0rc527wcjdg1txsdxhtl event_type: api_key.revoked occurred_at: "2025-06-24T12:58:38.746382Z" notification_id: ntf_01jkdr1mgbe62eqkh3p0fq8b0v data: id: apikey_01jkdpbhazdpn3wpcya45as9tg name: CRM integration description: Used to authenticate with the API for storing Paddle customer data in our CRM. status: revoked key: pdl_live_apikey_01jkdpbhaz**** permissions: - address.read - business.read - customer.read - subscription.read - transaction.read expires_at: "2025-06-26T06:58:38.517522Z" last_used_at: "2025-06-24T05:54:22.738201Z" created_at: "2025-03-26T06:58:38.517522Z" updated_at: "2025-06-24T12:58:38.746382Z" exposed_at: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/a-p-i-keys/api_key-revoked description: api_key.revoked business.created: post: operationId: business-created summary: business.created description: Occurs when an business is created. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Businesses requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01ghbmaszjgjd47g5f3d9vw7hg customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: The ID of the customer this business belongs to. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs name: type: string maxLength: 1024 description: Full name. title: Name minLength: 1 examples: - Paddle.com Market Limited company_number: anyOf: - type: string - type: "null" minLength: 1 maxLength: 1024 description: Company number for this business. examples: - "08172165" tax_identifier: anyOf: - type: string - type: "null" minLength: 1 maxLength: 1024 description: Tax or VAT Number for this business. examples: - ABC0123456789 status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. contacts: type: array items: type: object required: - name - email properties: name: type: string maxLength: 1024 description: Full name of this contact. title: Name email: type: string minLength: 1 maxLength: 320 format: email description: Email address for this contact. title: Email address examples: - test@paddle.com custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - customer_id - name - company_number - tax_identifier - status - contacts - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: business.created: summary: business.created value: event_id: evt_01hv8hkrsnhgn77dk3443p62je event_type: business.created occurred_at: "2024-04-12T06:58:38.517522Z" notification_id: ntf_01hv8hkrvm7grqzht4jbq8neyz data: id: biz_01hv8hkr641vmpwytx38znv56k name: Uplift Inc. status: active contacts: - name: Parker Jones email: parker@example.com created_at: "2024-04-12T06:58:37.892Z" updated_at: "2024-04-12T06:58:37.892Z" custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null company_number: "555775291485" tax_identifier: "555952383" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/businesses/business-created description: business.created business.imported: post: operationId: business-imported summary: business.imported description: Occurs when an business is imported. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Businesses requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01ghbmaszjgjd47g5f3d9vw7hg customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: The ID of the customer this business belongs to. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs name: type: string maxLength: 1024 description: Full name. title: Name minLength: 1 examples: - Paddle.com Market Limited company_number: anyOf: - type: string - type: "null" minLength: 1 maxLength: 1024 description: Company number for this business. examples: - "08172165" tax_identifier: anyOf: - type: string - type: "null" minLength: 1 maxLength: 1024 description: Tax or VAT Number for this business. examples: - ABC0123456789 status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. contacts: type: array items: type: object required: - name - email properties: name: type: string maxLength: 1024 description: Full name of this contact. title: Name email: type: string minLength: 1 maxLength: 320 format: email description: Email address for this contact. title: Email address examples: - test@paddle.com custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - customer_id - name - company_number - tax_identifier - status - contacts - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: business.imported: summary: business.imported value: event_id: evt_01hv8j0zfjnmns8fgbxyz2wsp4 event_type: business.imported occurred_at: "2024-04-12T07:05:51.346952Z" notification_id: ntf_01hv8j0zhn3zcmz0vcvcmk8hmr data: id: biz_01hv8hkr641vmpwytx38znv56k name: HighFly LLC. status: active contacts: - name: Blair Lopez email: blair@example.com created_at: "2024-04-12T07:05:50.887Z" updated_at: "2024-04-12T07:05:50.887Z" custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: external_id: 1fc0727f-d3d5-43a0-907a-f3c002535ca0 imported_from: paddle_classic company_number: "555829503785" tax_identifier: "555810433" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/businesses/business-imported description: business.imported business.updated: post: operationId: business-updated summary: business.updated description: Occurs when an business is updated. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Businesses requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01ghbmaszjgjd47g5f3d9vw7hg customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: The ID of the customer this business belongs to. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs name: type: string maxLength: 1024 description: Full name. title: Name minLength: 1 examples: - Paddle.com Market Limited company_number: anyOf: - type: string - type: "null" minLength: 1 maxLength: 1024 description: Company number for this business. examples: - "08172165" tax_identifier: anyOf: - type: string - type: "null" minLength: 1 maxLength: 1024 description: Tax or VAT Number for this business. examples: - ABC0123456789 status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. contacts: type: array items: type: object required: - name - email properties: name: type: string maxLength: 1024 description: Full name of this contact. title: Name email: type: string minLength: 1 maxLength: 320 format: email description: Email address for this contact. title: Email address examples: - test@paddle.com custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - customer_id - name - company_number - tax_identifier - status - contacts - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: business.updated: summary: business.updated value: event_id: evt_01hv8hr6nwtrnt3gwrz3apjfzh event_type: business.updated occurred_at: "2024-04-12T07:01:03.805047Z" notification_id: ntf_01hv8hr6r2vcfjtjjsqv7t5179 data: id: biz_01hv8hkr641vmpwytx38znv56k name: Uplift Inc. status: active contacts: - name: Parker Jones email: parker@example.com - name: Jo Riley email: jo@example.com - name: Jesse Garcia email: jo@example.com created_at: "2024-04-12T06:58:37.892Z" updated_at: "2024-04-12T07:01:03.510528Z" custom_data: crm_id: eb9b8d9b-7dd6-48e6-8c39-8557bba5eaa9 customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null company_number: "555775291485" tax_identifier: "555952383" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/businesses/business-updated description: business.updated client_token.created: post: operationId: client_token-created summary: client_token.created description: Occurs when a client-side token is created. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Client tokens requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^ctkn_[a-z\d]{26}$ description: Unique Paddle ID for this client-side token entity, prefixed with `ctkn_`. title: ClientTokenID examples: - ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: type: string description: A client-side token, prefixed with `test` or `live` depending on the environment of your account. Pass as the `token` parameter when initializing Paddle.js to authenticate. title: ClientTokenToken name: type: string minLength: 1 maxLength: 150 description: Short name of this client-side token. Typically unique and human-identifiable. title: ClientTokenName description: anyOf: - type: string minLength: 1 maxLength: 500 description: Short description of this client-side token. Typically gives details about what the token is used for and where it's used. title: ClientTokenDescription - type: "null" status: type: string enum: - active - revoked description: Status of this client-side token. title: ClientTokenStatus x-enum-descriptions: active: description: Client-side token is active. The token can be used to authenticate Paddle.js. revoked: description: Client-side token is revoked. The token can't be used to authenticate Paddle.js. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" revoked_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this client-side token was revoked. `null` if not revoked. required: - id - token - name - description - status - created_at - updated_at - revoked_at type: object description: New or changed entity. examples: client_token.created: summary: client_token.created value: event_id: evt_01jkdr0rc527wcjdg1txsdxhtf event_type: client_token.created occurred_at: "2025-06-26T14:36:14.695521Z" notification_id: ntf_01jkdr1mgbe62eqkh3p0fq8b0h data: id: ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: live_7d279f61a3499fed520f7cd8c08 name: Pricing page integration description: Used to display prices and open checkout within our pricing page on our marketing domain. status: active created_at: "2025-06-26T14:36:14.695521Z" updated_at: "2025-06-26T14:36:14.695521Z" revoked_at: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/client-tokens/client_token-created description: client_token.created client_token.revoked: post: operationId: client_token-revoked summary: client_token.revoked description: Occurs when a client-side token is revoked. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Client tokens requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^ctkn_[a-z\d]{26}$ description: Unique Paddle ID for this client-side token entity, prefixed with `ctkn_`. title: ClientTokenID examples: - ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: type: string description: A client-side token, prefixed with `test` or `live` depending on the environment of your account. Pass as the `token` parameter when initializing Paddle.js to authenticate. title: ClientTokenToken name: type: string minLength: 1 maxLength: 150 description: Short name of this client-side token. Typically unique and human-identifiable. title: ClientTokenName description: anyOf: - type: string minLength: 1 maxLength: 500 description: Short description of this client-side token. Typically gives details about what the token is used for and where it's used. title: ClientTokenDescription - type: "null" status: type: string enum: - active - revoked description: Status of this client-side token. title: ClientTokenStatus x-enum-descriptions: active: description: Client-side token is active. The token can be used to authenticate Paddle.js. revoked: description: Client-side token is revoked. The token can't be used to authenticate Paddle.js. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" revoked_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this client-side token was revoked. `null` if not revoked. required: - id - token - name - description - status - created_at - updated_at - revoked_at type: object description: New or changed entity. examples: client_token.revoked: summary: client_token.revoked value: event_id: evt_01jkdr0rc527wcjdg1txsdxhtf event_type: client_token.revoked occurred_at: "2025-06-27T11:26:10.253482Z" notification_id: ntf_01jkb92mpl7v4rfg8x3q5wz7bn data: id: ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: live_7d279f61a3499fed520f7cd8c08 name: Pricing page integration description: Used to display prices and open checkout within our pricing page on our marketing domain. status: revoked created_at: "2025-06-26T14:36:14.695521Z" updated_at: "2025-06-27T11:26:10.253482Z" revoked_at: "2025-06-27T11:26:10.253482Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/client-tokens/client_token-revoked description: client_token.revoked client_token.updated: post: operationId: client_token-updated summary: client_token.updated description: Occurs when a client-side token is updated. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Client tokens requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^ctkn_[a-z\d]{26}$ description: Unique Paddle ID for this client-side token entity, prefixed with `ctkn_`. title: ClientTokenID examples: - ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: type: string description: A client-side token, prefixed with `test` or `live` depending on the environment of your account. Pass as the `token` parameter when initializing Paddle.js to authenticate. title: ClientTokenToken name: type: string minLength: 1 maxLength: 150 description: Short name of this client-side token. Typically unique and human-identifiable. title: ClientTokenName description: anyOf: - type: string minLength: 1 maxLength: 500 description: Short description of this client-side token. Typically gives details about what the token is used for and where it's used. title: ClientTokenDescription - type: "null" status: type: string enum: - active - revoked description: Status of this client-side token. title: ClientTokenStatus x-enum-descriptions: active: description: Client-side token is active. The token can be used to authenticate Paddle.js. revoked: description: Client-side token is revoked. The token can't be used to authenticate Paddle.js. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" revoked_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this client-side token was revoked. `null` if not revoked. required: - id - token - name - description - status - created_at - updated_at - revoked_at type: object description: New or changed entity. examples: client_token.updated: summary: client_token.updated value: event_id: evt_01jkdr0rc527wcjdg1txsdxhtf event_type: client_token.updated occurred_at: "2025-06-27T11:26:10.253482Z" notification_id: ntf_01jkr4d5s6f7g8h9j1k2l3q4rs data: id: ctkn_01ghbkd0frb9k95cnhwd1bxpvk token: live_7d279f61a3499fed520f7cd8c08 name: Pricing page integration description: Used to display prices and open checkout within our pricing page on our marketing domain. status: revoked created_at: "2025-06-26T14:36:14.695521Z" updated_at: "2025-06-27T11:26:10.253482Z" revoked_at: "2025-06-27T11:26:10.253482Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/client-tokens/client_token-updated description: client_token.updated customer.created: post: operationId: customer-created summary: customer.created description: Occurs when an customer is created. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Customers requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs name: anyOf: - type: string maxLength: 1024 description: Full name. title: Name - type: "null" minLength: 1 maxLength: 1024 examples: - Dipen Lad email: type: string minLength: 1 maxLength: 1024 format: email description: Email address for this entity. title: Email address examples: - dipen.lad@paddle.com marketing_consent: type: boolean description: Whether this customer opted into marketing from you. `false` unless customers check the marketing consent box when using Paddle Checkout. Set automatically by Paddle. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. locale: type: string description: A short form locale tag following the IETF BCP 47 standard. default: en import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - name - email - marketing_consent - status - custom_data - locale - import_meta - created_at - updated_at type: object description: New or changed entity. examples: customer.created: summary: customer.created value: event_id: evt_01hv6y1jtn1fr98zq3cvarxx2e event_type: customer.created occurred_at: "2024-04-11T15:57:25.205966Z" notification_id: ntf_01hv6y1jx2m6n1qk95m0cj69dg data: id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 name: Jo Brown email: jo@example.com locale: en status: active created_at: "2024-04-11T15:57:24.813Z" updated_at: "2024-04-11T15:57:24.813Z" custom_data: null import_meta: null marketing_consent: false security: - {} externalDocs: url: https://developer.paddle.com/webhooks/customers/customer-created description: customer.created customer.imported: post: operationId: customer-imported summary: customer.imported description: Occurs when an customer is imported. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Customers requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs name: anyOf: - type: string maxLength: 1024 description: Full name. title: Name - type: "null" minLength: 1 maxLength: 1024 examples: - Dipen Lad email: type: string minLength: 1 maxLength: 1024 format: email description: Email address for this entity. title: Email address examples: - dipen.lad@paddle.com marketing_consent: type: boolean description: Whether this customer opted into marketing from you. `false` unless customers check the marketing consent box when using Paddle Checkout. Set automatically by Paddle. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. locale: type: string description: A short form locale tag following the IETF BCP 47 standard. default: en import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - name - email - marketing_consent - status - custom_data - locale - import_meta - created_at - updated_at type: object description: New or changed entity. examples: customer.imported: summary: customer.imported value: event_id: evt_01hv6ymvpf2r40gjas86q60bah event_type: customer.imported occurred_at: "2024-04-11T16:07:56.879683Z" notification_id: ntf_01hv6ymvrgdcdkv3jx4x0h2qsv data: id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 name: Lex Taylor email: lex@example.com locale: en status: active created_at: "2024-04-11T16:07:56.554Z" updated_at: "2024-04-11T16:07:56.554Z" custom_data: null import_meta: external_id: 4f626321-f3af-46f6-925e-d1cb315e89f0 imported_from: paddle_classic marketing_consent: false security: - {} externalDocs: url: https://developer.paddle.com/webhooks/customers/customer-imported description: customer.imported customer.updated: post: operationId: customer-updated summary: customer.updated description: Occurs when an customer is updated. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Customers requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01ghbm8g2qxsjp07p5ywsy61cs name: anyOf: - type: string maxLength: 1024 description: Full name. title: Name - type: "null" minLength: 1 maxLength: 1024 examples: - Dipen Lad email: type: string minLength: 1 maxLength: 1024 format: email description: Email address for this entity. title: Email address examples: - dipen.lad@paddle.com marketing_consent: type: boolean description: Whether this customer opted into marketing from you. `false` unless customers check the marketing consent box when using Paddle Checkout. Set automatically by Paddle. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. locale: type: string description: A short form locale tag following the IETF BCP 47 standard. default: en import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - name - email - marketing_consent - status - custom_data - locale - import_meta - created_at - updated_at type: object description: New or changed entity. examples: customer.updated: summary: customer.updated value: event_id: evt_01hv6y672w8rvq8zgcq3cm3nv0 event_type: customer.updated occurred_at: "2024-04-11T15:59:57.020285Z" notification_id: ntf_01hv6y674wys2vjt7ztv4tzskj data: id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 name: Jo Brown-Anderson email: jo@example.com locale: en status: active created_at: "2024-04-11T15:57:24.813Z" updated_at: "2024-04-11T15:59:56.658719Z" custom_data: null import_meta: null marketing_consent: false security: - {} externalDocs: url: https://developer.paddle.com/webhooks/customers/customer-updated description: customer.updated discount_group.created: post: operationId: discount_group-created summary: discount_group.created description: |- Occurs when a discount group is created. Payload includes the complete discount_group entity. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Discount groups requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^dsg_[a-z\d]{26}$ description: Unique Paddle ID for this discount group, prefixed with `dsg_`. title: Discount Group ID examples: - dsg_01js2gqehzccfkywgx1jk2mtsp status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. name: type: string minLength: 1 maxLength: 500 description: Name of this discount group, typically something short and memorable for categorization. Not shown to customers. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - status - name - import_meta - created_at - updated_at type: object description: New or changed entity. examples: discount_group.created: summary: discount_group.created value: event_id: evt_01hv6scz1kqjp8wx6ft1mc3kd2 event_type: discount_group.created occurred_at: "2024-11-28T14:36:15.283806Z" notification_id: ntf_01hv6scz45nrn82tmkw4ywb71k data: id: dsg_01js2gqehzccfkywgx1jk2mtsp name: Black Friday 2024 status: active import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:36:14.695Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/discount-groups/discount_group-created description: discount_group.created discount_group.updated: post: operationId: discount_group-updated summary: discount_group.updated description: Occurs when a discount group is updated. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Discount groups requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^dsg_[a-z\d]{26}$ description: Unique Paddle ID for this discount group, prefixed with `dsg_`. title: Discount Group ID examples: - dsg_01js2gqehzccfkywgx1jk2mtsp status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. name: type: string minLength: 1 maxLength: 500 description: Name of this discount group, typically something short and memorable for categorization. Not shown to customers. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - status - name - import_meta - created_at - updated_at type: object description: New or changed entity. examples: discount_group.updated: summary: discount_group.updated value: event_id: evt_01hv6scz1kqjp8wx6ft1mc3kd2 event_type: discount_group.updated occurred_at: "2024-11-28T14:36:15.283806Z" notification_id: ntf_01hv6scz45nrn82tmkw4ywb71k data: id: dsg_01js2gqehzccfkywgx1jk2mtsp name: Cyber Monday 2025 status: active import_meta: null created_at: "2024-11-28T14:36:14.695Z" updated_at: "2024-11-28T14:39:14.695Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/discount-groups/discount_group-updated description: discount_group.updated discount.created: post: operationId: discount-created summary: discount.created description: |- Occurs when a discount is created. Payload includes the complete discount entity, except `times_used`. This field changes frequently, so isn't included in payloads. [Get a discount using the API](https://developer.paddle.com/api-reference/discounts/get-discount) to see the latest value. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Discounts requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. expired: description: |- Discount has expired. Automatically set by Paddle when the `expires_at` date elapses. Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. used: description: |- Discount has reached the maximum amount of redemptions. Automatically set by Paddle when the `usage_limit` is reached. Used discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. description: type: string minLength: 1 maxLength: 500 description: Short description for this discount for your reference. Not shown to customers. enabled_for_checkout: type: boolean description: Whether this discount can be redeemed by customers at checkout (`true`) or not (`false`). code: anyOf: - type: string minLength: 1 maxLength: 32 pattern: ^[a-zA-Z0-9]{1,32}$ description: Unique code that customers can use to apply this discount at checkout. Use letters and numbers only, up to 32 characters. Not case-sensitive. title: Discount code - type: "null" minLength: 1 maxLength: 32 pattern: ^[a-zA-Z0-9]{1,32}$ type: type: string enum: - flat - flat_per_seat - percentage description: Type of discount. Determines how this discount impacts the checkout or transaction total. title: DiscountType x-enum-descriptions: flat: description: Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`. flat_per_seat: description: Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`. percentage: description: Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%. amount: type: string description: Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency. currency_code: anyOf: - type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand - type: "null" recur: type: boolean description: Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). maximum_recurring_intervals: anyOf: - type: integer - type: "null" minimum: 1 description: |- Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever. Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. usage_limit: anyOf: - type: integer - type: "null" minimum: 1 description: |- Maximum number of times this discount can be redeemed. This is an overall limit for this discount, rather than a per-customer limit. `null` if this discount can be redeemed an unlimited amount of times. Paddle counts a usage as a redemption on a checkout, transaction, or the initial application against a subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. restrict_to: anyOf: - type: array items: type: string pattern: ^(pri|pro)_[a-z\d]{26}$ - type: "null" maxItems: 50 description: Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. uniqueItems: true expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" mode: anyOf: - type: string enum: - standard - custom description: Discount mode. Standard discounts are considered part of your catalog and are shown in the Paddle dashboard. title: DiscountMode x-enum-descriptions: custom: description: Non-catalog discount. Can be created via the API, or by Paddle for checkout recovery discounts. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard discount. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" discount_group_id: anyOf: - type: string pattern: ^dsg_[a-z\d]{26}$ description: Unique Paddle ID for this discount group, prefixed with `dsg_`. title: Discount Group ID examples: - dsg_01js2gqehzccfkywgx1jk2mtsp - type: "null" pattern: ^dsg_[a-z\d]{26}$ examples: - dsg_01js2gqehzccfkywgx1jk2mtsp custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - status - description - enabled_for_checkout - code - type - amount - currency_code - recur - maximum_recurring_intervals - usage_limit - restrict_to - expires_at - mode - discount_group_id - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: discount.created: summary: discount.created value: event_id: evt_01hv6scz1kqjp8wx6ft1mc3kd2 event_type: discount.created occurred_at: "2024-04-11T14:36:15.283806Z" notification_id: ntf_01hv6scz45nrn82tmkw4ywb71k data: id: dsc_01hv6scyf7qdnzcdq01t2y8dx4 description: All orders (10% off) code: BF10OFF type: percentage amount: "10" currency_code: USD mode: standard status: active discount_group_id: dsg_01js2gqehzccfkywgx1jk2mtsp recur: true maximum_recurring_intervals: 3 usage_limit: null restrict_to: [] enabled_for_checkout: true expires_at: "2024-12-03T00:00:00Z" created_at: "2024-04-11T14:36:14.695Z" updated_at: "2024-04-11T14:36:14.695Z" custom_data: null import_meta: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/discounts/discount-created description: discount.created discount.imported: post: operationId: discount-imported summary: discount.imported description: |- Occurs when a discount is imported. Payload includes the complete discount entity, except `times_used`. This field changes frequently, so isn't included in payloads. [Get a discount using the API](https://developer.paddle.com/api-reference/discounts/get-discount) to see the latest value. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Discounts requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. expired: description: |- Discount has expired. Automatically set by Paddle when the `expires_at` date elapses. Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. used: description: |- Discount has reached the maximum amount of redemptions. Automatically set by Paddle when the `usage_limit` is reached. Used discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. description: type: string minLength: 1 maxLength: 500 description: Short description for this discount for your reference. Not shown to customers. enabled_for_checkout: type: boolean description: Whether this discount can be redeemed by customers at checkout (`true`) or not (`false`). code: anyOf: - type: string minLength: 1 maxLength: 32 pattern: ^[a-zA-Z0-9]{1,32}$ description: Unique code that customers can use to apply this discount at checkout. Use letters and numbers only, up to 32 characters. Not case-sensitive. title: Discount code - type: "null" minLength: 1 maxLength: 32 pattern: ^[a-zA-Z0-9]{1,32}$ type: type: string enum: - flat - flat_per_seat - percentage description: Type of discount. Determines how this discount impacts the checkout or transaction total. title: DiscountType x-enum-descriptions: flat: description: Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`. flat_per_seat: description: Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`. percentage: description: Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%. amount: type: string description: Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency. currency_code: anyOf: - type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand - type: "null" recur: type: boolean description: Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). maximum_recurring_intervals: anyOf: - type: integer - type: "null" minimum: 1 description: |- Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever. Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. usage_limit: anyOf: - type: integer - type: "null" minimum: 1 description: |- Maximum number of times this discount can be redeemed. This is an overall limit for this discount, rather than a per-customer limit. `null` if this discount can be redeemed an unlimited amount of times. Paddle counts a usage as a redemption on a checkout, transaction, or the initial application against a subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. restrict_to: anyOf: - type: array items: type: string pattern: ^(pri|pro)_[a-z\d]{26}$ - type: "null" maxItems: 50 description: Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. uniqueItems: true expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" mode: anyOf: - type: string enum: - standard - custom description: Discount mode. Standard discounts are considered part of your catalog and are shown in the Paddle dashboard. title: DiscountMode x-enum-descriptions: custom: description: Non-catalog discount. Can be created via the API, or by Paddle for checkout recovery discounts. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard discount. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" discount_group_id: anyOf: - type: string pattern: ^dsg_[a-z\d]{26}$ description: Unique Paddle ID for this discount group, prefixed with `dsg_`. title: Discount Group ID examples: - dsg_01js2gqehzccfkywgx1jk2mtsp - type: "null" pattern: ^dsg_[a-z\d]{26}$ examples: - dsg_01js2gqehzccfkywgx1jk2mtsp custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - status - description - enabled_for_checkout - code - type - amount - currency_code - recur - maximum_recurring_intervals - usage_limit - restrict_to - expires_at - mode - discount_group_id - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: discount.imported: summary: discount.imported value: event_id: evt_01hdnnd4x84s4r5br068y3rm6d event_type: discount.imported occurred_at: "2025-06-12T09:35:17.929027Z" notification_id: ntf_01hdnnd505rcs80ss56rfn7qa2 data: id: dsc_01gv599b6zkj42fkpxftjeca8f description: Legacy customer discount code: ZJFYC3K9KT type: flat amount: "1000" currency_code: USD mode: standard status: active discount_group_id: null recur: true maximum_recurring_intervals: null usage_limit: null restrict_to: - pri_01h19fp7wgbasj0h1627jknp7f enabled_for_checkout: true expires_at: "2027-06-12T09:18:00Z" created_at: "2023-03-10T08:13:06.655Z" updated_at: "2023-06-05T09:18:46.63Z" custom_data: null import_meta: external_id: fc1ba9bc-8ddb-11ee-b9d1-0242ac120002 imported_from: paddle_classic security: - {} externalDocs: url: https://developer.paddle.com/webhooks/discounts/discount-imported description: discount.imported discount.updated: post: operationId: discount-updated summary: discount.updated description: |- Occurs when a discount is updated. Payload includes the complete discount entity, except `times_used`. This field changes frequently, so isn't included in payloads. [Get a discount using the API](https://developer.paddle.com/api-reference/discounts/get-discount) to see the latest value. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Discounts requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. expired: description: |- Discount has expired. Automatically set by Paddle when the `expires_at` date elapses. Expired discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. used: description: |- Discount has reached the maximum amount of redemptions. Automatically set by Paddle when the `usage_limit` is reached. Used discounts can't be redeemed against transactions or checkouts, but can be applied when updating subscriptions. description: type: string minLength: 1 maxLength: 500 description: Short description for this discount for your reference. Not shown to customers. enabled_for_checkout: type: boolean description: Whether this discount can be redeemed by customers at checkout (`true`) or not (`false`). code: anyOf: - type: string minLength: 1 maxLength: 32 pattern: ^[a-zA-Z0-9]{1,32}$ description: Unique code that customers can use to apply this discount at checkout. Use letters and numbers only, up to 32 characters. Not case-sensitive. title: Discount code - type: "null" minLength: 1 maxLength: 32 pattern: ^[a-zA-Z0-9]{1,32}$ type: type: string enum: - flat - flat_per_seat - percentage description: Type of discount. Determines how this discount impacts the checkout or transaction total. title: DiscountType x-enum-descriptions: flat: description: Discounts a checkout or transaction by a flat amount, for example -$100. Requires `currency_code`. flat_per_seat: description: Discounts a checkout or transaction by a flat amount per unit, for example -$100 per user. Requires `currency_code`. percentage: description: Discounts a checkout or transaction by a percentage of the total, for example -10%. Maximum 100%. amount: type: string description: Amount to discount by. For `percentage` discounts, must be an amount between `0.01` and `100`. For `flat` and `flat_per_seat` discounts, amount in the lowest denomination for a currency. currency_code: anyOf: - type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand - type: "null" recur: type: boolean description: Whether this discount applies for multiple subscription billing periods (`true`) or not (`false`). maximum_recurring_intervals: anyOf: - type: integer - type: "null" minimum: 1 description: |- Number of subscription billing periods that this discount recurs for. Requires `recur`. `null` if this discount recurs forever. Subscription renewals, midcycle changes, and one-time charges billed to a subscription aren't considered a redemption. `times_used` is not incremented in these cases. usage_limit: anyOf: - type: integer - type: "null" minimum: 1 description: |- Maximum number of times this discount can be redeemed. This is an overall limit for this discount, rather than a per-customer limit. `null` if this discount can be redeemed an unlimited amount of times. Paddle counts a usage as a redemption on a checkout, transaction, or the initial application against a subscription. Transactions created for subscription renewals, midcycle changes, and one-time charges aren't considered a redemption. restrict_to: anyOf: - type: array items: type: string pattern: ^(pri|pro)_[a-z\d]{26}$ - type: "null" maxItems: 50 description: Product or price IDs that this discount is for. When including a product ID, all prices for that product can be discounted. `null` if this discount applies to all products and prices. uniqueItems: true expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" mode: anyOf: - type: string enum: - standard - custom description: Discount mode. Standard discounts are considered part of your catalog and are shown in the Paddle dashboard. title: DiscountMode x-enum-descriptions: custom: description: Non-catalog discount. Can be created via the API, or by Paddle for checkout recovery discounts. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard discount. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" discount_group_id: anyOf: - type: string pattern: ^dsg_[a-z\d]{26}$ description: Unique Paddle ID for this discount group, prefixed with `dsg_`. title: Discount Group ID examples: - dsg_01js2gqehzccfkywgx1jk2mtsp - type: "null" pattern: ^dsg_[a-z\d]{26}$ examples: - dsg_01js2gqehzccfkywgx1jk2mtsp custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - status - description - enabled_for_checkout - code - type - amount - currency_code - recur - maximum_recurring_intervals - usage_limit - restrict_to - expires_at - mode - discount_group_id - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: discount.updated: summary: discount.updated value: event_id: evt_01hv6spb5cxrwekm2agmr173c1 event_type: discount.updated occurred_at: "2024-04-11T14:41:22.604848Z" notification_id: ntf_01hv6spb7v0f0tfg6wa3m8rgcr data: id: dsc_01hv6scyf7qdnzcdq01t2y8dx4 description: All orders (10% off) code: BF10OFF type: percentage amount: "10" currency_code: null mode: standard status: active discount_group_id: dsg_01js2gqehzccfkywgx1jk2mtsp recur: true maximum_recurring_intervals: 3 usage_limit: null restrict_to: - pro_01gsz4t5hdjse780zja8vvr7jg - pro_01gsz4s0w61y0pp88528f1wvvb enabled_for_checkout: true expires_at: "2024-12-03T00:00:00Z" created_at: "2024-04-11T14:36:14.695Z" updated_at: "2024-04-11T14:41:22.343Z" custom_data: null import_meta: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/discounts/discount-updated description: discount.updated payment_method.saved: post: operationId: payment_method-saved summary: payment_method.saved description: Occurs when a payment method is saved. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Payment methods requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for the payment method, prefixed with `paymtd_` title: Payment Method ID examples: - paymtd_01hmypstbdx6vgg6k98ntc6hz6 customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for the customer, prefixed with `ctm_` title: Customer ID examples: - ctm_01gj3jd0a9mwvt5t6zszvrjx5n address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for the address, prefixed with `add_` title: Address ID examples: - add_01gv32pw30ctm9ycm5xykn20kk type: type: string enum: - alipay - apple_pay - blik - card - google_pay - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - payco - paypal - pix - samsung_pay - upi - wechat_pay description: Type of payment method saved. title: SavedPaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. kakao_pay: description: Kakao Pay, a popular payment method in South Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in South Korea. payco: description: Payco, a popular payment method in South Korea. paypal: description: PayPal. pix: description: Pix, popular in Brazil. samsung_pay: description: Samsung Pay, a popular payment method in South Korea. upi: description: Unified Payments Interface (UPI), popular in India. wechat_pay: description: WeChat Pay, a popular payment method in China. origin: type: string enum: - saved_during_purchase - subscription - subscription_saved_during_purchase description: Describes how this payment method was saved. title: PaymentMethodOrigin x-enum-descriptions: saved_during_purchase: description: The customer chose to save this payment method while purchasing a one-time item. subscription: description: The customer purchased a subscription, so this payment method was saved for future purchases. subscription_saved_during_purchase: description: The customer chose to save the payment method when purchasing a subscription. saved_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was saved. Set automatically by Paddle. title: Saved at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - customer_id - address_id - type - origin - saved_at - updated_at type: object description: New or changed entity. examples: payment_method.saved: summary: payment_method.saved value: event_id: evt_01hwvkmsge7bhq1a31s35784zt event_type: payment_method.saved occurred_at: "2024-05-02T02:55:25.198953Z" notification_id: ntf_01hwvkmsknrgqw4z1598qw4ypt data: id: paymtd_01hs8zx6x377xfsfrt2bqsevbw customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01hv8gq3318ktkfengj2r75gfx type: card origin: saved_during_purchase saved_at: "2024-05-02T02:55:25.198953Z" updated_at: "2024-05-02T02:55:25.198953Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/payment-methods/payment_method-saved description: payment_method.saved payment_method.deleted: post: operationId: payment_method-deleted summary: payment_method.deleted description: Occurs when a payment method is deleted. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Payment methods requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: type: object properties: id: type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for the payment method, prefixed with `paymtd_` title: Payment Method ID examples: - paymtd_01hmypstbdx6vgg6k98ntc6hz6 customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for the customer, prefixed with `ctm_` title: Customer ID examples: - ctm_01gj3jd0a9mwvt5t6zszvrjx5n address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for the address, prefixed with `add_` title: Address ID examples: - add_01gv32pw30ctm9ycm5xykn20kk type: type: string enum: - alipay - apple_pay - blik - card - google_pay - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - payco - paypal - pix - samsung_pay - upi - wechat_pay description: Type of payment method saved. title: SavedPaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. kakao_pay: description: Kakao Pay, a popular payment method in South Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in South Korea. payco: description: Payco, a popular payment method in South Korea. paypal: description: PayPal. pix: description: Pix, popular in Brazil. samsung_pay: description: Samsung Pay, a popular payment method in South Korea. upi: description: Unified Payments Interface (UPI), popular in India. wechat_pay: description: WeChat Pay, a popular payment method in China. origin: type: string enum: - saved_during_purchase - subscription - subscription_saved_during_purchase description: Describes how this payment method was saved. title: PaymentMethodOrigin x-enum-descriptions: saved_during_purchase: description: The customer chose to save this payment method while purchasing a one-time item. subscription: description: The customer purchased a subscription, so this payment method was saved for future purchases. subscription_saved_during_purchase: description: The customer chose to save the payment method when purchasing a subscription. saved_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was saved. Set automatically by Paddle. title: Saved at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" deletion_reason: type: string enum: - replaced_by_newer_version - api description: Reason why this payment method was deleted. x-enum-descriptions: replaced_by_newer_version: description: Customer supplied payment details that matched this saved payment method entity, so Paddle created a replacement entity and deleted this one. api: description: Saved payment method deleted using the API. required: - id - customer_id - address_id - type - origin - saved_at - updated_at description: New or changed entity. examples: payment_method.deleted: summary: payment_method.deleted value: event_id: evt_01hwz6k64a210xcvsdbg3y4vmr event_type: payment_method.deleted occurred_at: "2024-05-03T12:24:18.826338Z" notification_id: ntf_01hwz6k66fp6cxtxyt6551wv7z data: id: paymtd_01hs8zx6x377xfsfrt2bqsevbw customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 address_id: add_01hv8gq3318ktkfengj2r75gfx deletion_reason: api type: card origin: saved_during_purchase saved_at: "2024-05-02T02:55:25.198953Z" updated_at: "2024-05-03T12:24:18.826338Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/payment-methods/payment_method-deleted description: payment_method.deleted payout.created: post: operationId: payout-created summary: payout.created description: Occurs when a payout is initiated by Paddle. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Payouts requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string description: The ID associated with this payout status: type: string enum: - unpaid - paid description: The current status of a payout x-enum-descriptions: unpaid: description: Payout is unpaid. Typically means it has been created, but is not yet completed. paid: description: Payout is paid. amount: type: string description: The amount paid, or due to be paid to your bank account currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Supported three-letter ISO 4217 currency code for payouts from Paddle. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand remittance_reference: type: string description: Reference number on the payout and remittance advice document required: - id - status - amount - currency_code - remittance_reference type: object description: New or changed entity. examples: payout.created: summary: payout.created value: event_id: evt_01h2b06f69w9aw3eymqs1dfa2q event_type: payout.created occurred_at: "2023-06-01T13:30:38.138984Z" notification_id: ntf_01h2b06f84qsjzdw8rywe3j4gt data: id: payout_01gsz4vmqbjk3x4vvtafffd540 status: unpaid amount: "10000" currency_code: USD remittance_reference: "10374" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/payouts/payout-created description: payout.created payout.paid: post: operationId: payout-paid summary: payout.paid description: Occurs when a payout is paid. This is usually the working day before the funds credit your account. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Payouts requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string description: The ID associated with this payout status: type: string enum: - unpaid - paid description: The current status of a payout x-enum-descriptions: unpaid: description: Payout is unpaid. Typically means it has been created, but is not yet completed. paid: description: Payout is paid. amount: type: string description: The amount paid, or due to be paid to your bank account currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Supported three-letter ISO 4217 currency code for payouts from Paddle. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand remittance_reference: type: string description: Reference number on the payout and remittance advice document required: - id - status - amount - currency_code - remittance_reference type: object description: New or changed entity. examples: payout.paid: summary: payout.paid value: event_id: evt_01h2b0tqg1xkgnkfmprsnrjn0s event_type: payout.paid occurred_at: "2023-06-07T13:30:38.138984Z" notification_id: ntf_01h2b0tqkhfqd094y9pys30xyw data: id: payout_01gsz4vmqbjk3x4vvtafffd540 status: paid amount: "10000" currency_code: USD remittance_reference: "10374" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/payouts/payout-paid description: payout.paid price.created: post: operationId: price-created summary: price.created description: |- Occurs when a price is created. `created_at` and `updated_at` may be `null` in events that occurred before this field was added to price entities. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Prices requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8x8sawmvhz1pv30nge1ke product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: anyOf: - type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. created_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" - type: "null" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: price.created: summary: price.created value: event_id: evt_01hv0vaxeypbdcfw039a3gmc78 event_type: price.created occurred_at: "2024-04-09T07:14:38.686498Z" notification_id: ntf_01hv0vaxj3znpd9vdpp3efa4n4 data: id: pri_01hv0vax6rv18t4tamj848ne4d name: Monthly (per seat) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 unit_price: amount: "500" currency_code: USD custom_data: null description: Monthly (per seat) with 14 day trial import_meta: null trial_period: interval: day frequency: 14 requires_payment_method: false billing_cycle: interval: month frequency: 1 unit_price_overrides: [] created_at: "2024-04-09T07:14:38.424504286Z" updated_at: "2024-04-09T07:14:38.424504359Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/prices/price-created description: price.created price.imported: post: operationId: price-imported summary: price.imported description: |- Occurs when a price is imported. `created_at` and `updated_at` may be `null` in events that occurred before this field was added to price entities. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Prices requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8x8sawmvhz1pv30nge1ke product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: anyOf: - type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. created_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" - type: "null" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: price.imported: summary: price.imported value: event_id: evt_01hgarz844zdfws6djn9rz6qm7 event_type: price.imported occurred_at: "2024-01-01T13:31:34.071379Z" notification_id: ntf_01hd46rrqkrbndwzrarcew6t21 data: id: pri_01gsz95g2zrkagg294kpstx54r product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz type: standard description: Monthly (recurring addon) name: Monthly (recurring addon) billing_cycle: interval: month frequency: 1 trial_period: null tax_mode: account_setting unit_price: amount: "25000" currency_code: USD unit_price_overrides: [] custom_data: null status: active quantity: minimum: 1 maximum: 1 import_meta: external_id: fc1ba9bc-8ddb-11ee-b9d1-0242ac120002 imported_from: paddle_classic created_at: "2024-01-01T13:31:34.071379Z" updated_at: "2024-01-01T13:31:34.071379Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/prices/price-imported description: price.imported price.updated: post: operationId: price-updated summary: price.updated description: |- Occurs when a price is updated. `created_at` and `updated_at` may be `null` in events that occurred before this field was added to price entities. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Prices requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8x8sawmvhz1pv30nge1ke product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: anyOf: - type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. created_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" - type: "null" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: New or changed entity. examples: price.updated: summary: price.updated value: event_id: evt_01hv0vd770td3m64srybj8453a event_type: price.updated occurred_at: "2024-04-09T07:15:54.208116Z" notification_id: ntf_01hv0vd7900qdtv6h6w8m2h6qf data: id: pri_01hv0vax6rv18t4tamj848ne4d name: Monthly (per seat) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 unit_price: amount: "500" currency_code: USD custom_data: null description: Monthly (per seat) with 14 day trial import_meta: null trial_period: interval: day frequency: 14 requires_payment_method: false billing_cycle: interval: month frequency: 1 unit_price_overrides: - unit_price: amount: "700" currency_code: EUR country_codes: - IE - FR - DE - unit_price: amount: "600" currency_code: GBP country_codes: - GB created_at: "2024-01-01T13:31:34.071379Z" updated_at: "2024-04-09T07:15:54.208116Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/prices/price-updated description: price.updated product.created: post: operationId: product-created summary: product.created description: |- Occurs when a product is created. `updated_at` may be `null` in events that occurred before this field was added to product entities. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Products requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01ghbkd0frb9k95cnhwd1bxpvk name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: anyOf: - type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Product tax category. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: New or changed entity. examples: product.created: summary: product.created value: event_id: evt_01htz88y5k59y9rrv15p72dv91 event_type: product.created occurred_at: "2024-04-08T16:22:16.499189Z" notification_id: ntf_01htz88y8sg8cww5jdj4q68yq0 data: id: pro_01htz88xpr0mm7b3ta2pjkr7w2 name: AeroEdit Student type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: false flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null description: Essential tools for student pilots to manage flight logs, analyze performance, and plan routes, and ensure compliance. Valid student pilot certificate from the FAA required. import_meta: null tax_category: standard created_at: "2024-04-08T16:22:16.024Z" updated_at: "2024-04-08T16:22:16.024Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/products/product-created description: product.created product.imported: post: operationId: product-imported summary: product.imported description: |- Occurs when a product is imported. `updated_at` may be `null` in events that occurred before this field was added to product entities. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Products requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01ghbkd0frb9k95cnhwd1bxpvk name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: anyOf: - type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Product tax category. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: New or changed entity. examples: product.imported: summary: product.imported value: event_id: evt_01hgas2cm8r02nxryp83jqvg6k event_type: product.imported occurred_at: "2024-01-28T10:54:46.181Z" notification_id: ntf_01hd46rqryfc8d7d5yz595k2k6 data: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support tax_category: standard type: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: external_id: 16a2c842-8ddc-11ee-b9d1-0242ac120002 imported_from: paddle_classic created_at: "2024-01-28T10:54:46.181Z" updated_at: "2024-01-28T10:54:46.181Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/products/product-imported description: product.imported product.updated: post: operationId: product-updated summary: product.updated description: |- Occurs when a product is updated. `updated_at` may be `null` in events that occurred before this field was added to product entities. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Products requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01ghbkd0frb9k95cnhwd1bxpvk name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: anyOf: - type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. - type: "null" tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Product tax category. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" - type: "null" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: New or changed entity. examples: product.updated: summary: product.updated value: event_id: evt_01htz8kd4g9npcy0c76y5pvrs5 event_type: product.updated occurred_at: "2024-04-08T16:27:59.504385Z" notification_id: ntf_01htz8kd6sysr4sqefs5a9qqc0 data: id: pro_01htz88xpr0mm7b3ta2pjkr7w2 name: AeroEdit for learner pilots type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: false flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null description: Essential tools for student pilots to manage flight logs, analyze performance, and plan routes, and ensure compliance. Valid student pilot certificate from the FAA required. import_meta: null tax_category: standard created_at: "2024-04-08T16:22:16.024Z" updated_at: "2024-04-08T16:27:59.074Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/products/product-updated description: product.updated report.created: post: operationId: report-created summary: report.created description: Occurs when an report is created. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Reports requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: oneOf: - type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this report, prefixed with `rep_` title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf status: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. updated_at: type: string format: date-time description: RFC 3339 datetime string of when this report was last updated. title: Updated at examples: - "2024-10-13T07:20:50.52Z" created_at: type: string format: date-time description: RFC 3339 datetime string of when this report was created. title: Created at examples: - "2024-10-12T07:20:50.52Z" type: type: string enum: - adjustments - adjustment_line_items description: Type of report to create. title: AdjustmentsReportType examples: - adjustments x-enum-descriptions: adjustments: description: Adjustments reports contain information about refunds, credits, and chargebacks. adjustment_line_items: description: Adjustments reports contain information about refunds, credits, and chargebacks. The report is broken down by line item level. filters: type: array items: type: object required: - name - operator - value properties: name: type: string enum: - action - currency_code - status - updated_at x-enum-descriptions: action: description: Filter by adjustment action. Pass an array of strings containing any valid value for the `action` field against an adjustment. currency_code: description: Filter by transaction or adjustment currency. Pass an array of strings containing any valid supported three-letter ISO 4217 currency code. status: description: Filter by transaction or adjustment status. Pass an array of strings containing any valid value for the `status` field against a transaction or an adjustment. updated_at: description: Filter by transaction or adjustment updated date. Pass an RFC 3339 datetime string. description: Field name to filter by. title: AdjustmentsReportFilterName operator: anyOf: - type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string enum: - pending_approval - approved - rejected - reversed description: |- Status of this adjustment. Set automatically by Paddle. Most refunds for live accounts are created with the status of `pending_approval` until reviewed by Paddle, but some are automatically approved. For sandbox accounts, Paddle automatically approves refunds every ten minutes. Credit adjustments don't require approval from Paddle, so they're created as `approved`. x-enum-descriptions: pending_approval: description: Adjustment is pending approval by Paddle. Most refunds for live accounts must be approved by Paddle. approved: description: Adjustment is approved. Default for credits. Set when Paddle approves a refund that was `pending_approval`. rejected: description: Adjustment has been rejected. Set when Paddle rejects a refund that was `pending_approval`. reversed: description: Adjustment has been reversed. Set by Paddle when a `chargeback_reversal` or `credit_reversal` adjustment is created for this adjustment. - type: array items: type: string enum: - credit - refund - chargeback - chargeback_reverse - chargeback_warning - chargeback_warning_reverse - credit_reverse description: How this adjustment impacts the related transaction. title: AdjustmentAction x-enum-descriptions: credit: description: Credits some or all the related transaction. refund: description: Refunds some or all the related transaction. Must be approved by Paddle in most cases. chargeback: description: Chargeback for the related transaction. Automatically created by Paddle when a customer successfully disputes a charge. chargeback_reverse: description: Reversal of a chargeback for the related transaction. Automatically created by Paddle when Paddle contests a chargeback successfully. chargeback_warning: description: Warning of an upcoming chargeback for the related transaction. Automatically created by Paddle. chargeback_warning_reverse: description: Reversal of a chargeback warning for the related transaction. Automatically created by Paddle. credit_reverse: description: Reversal of a credit for the related transaction. Automatically created by Paddle. - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: string format: date - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: Filter criteria for this report. If omitted when creating, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. title: AdjustmentsReportFilters maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Report entity when working with adjustments reports. title: ReportAdjustments - type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this report, prefixed with `rep_` title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf status: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. updated_at: type: string format: date-time description: RFC 3339 datetime string of when this report was last updated. title: Updated at examples: - "2024-10-13T07:20:50.52Z" created_at: type: string format: date-time description: RFC 3339 datetime string of when this report was created. title: Created at examples: - "2024-10-12T07:20:50.52Z" type: type: string enum: - transactions - transaction_line_items description: Type of report to create. title: TransactionsReportType examples: - transactions x-enum-descriptions: transactions: description: Transactions reports contain information about revenue received, past due invoices, draft and issued invoices, and canceled transactions. transaction_line_items: description: Transactions reports contain information about revenue received, past due invoices, draft and issued invoices, and canceled transactions. The report is broken down by line item level. filters: type: array items: type: object required: - name - operator - value properties: name: type: string enum: - collection_mode - currency_code - origin - status - updated_at description: Field name to filter by. title: TransactionsReportFilterName x-enum-descriptions: collection_mode: description: Filter by collection mode. Pass an array of strings containing any valid value for the `collection_mode` field against a transaction. currency_code: description: Filter by transaction or adjustment currency. Pass an array of strings containing any valid supported three-letter ISO 4217 currency code. origin: description: Filter by transaction origin. Pass an array of strings containing any valid value for the origin field against a transaction. status: description: Filter by transaction or adjustment status. Pass an array of strings containing any valid value for the `status` field against a transaction or an adjustment. updated_at: description: Filter by transaction or adjustment updated date. Pass an RFC 3339 datetime string. operator: anyOf: - type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. title: TransactionsReportFilters maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Report entity when working with transactions reports. title: ReportTransactions - type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this report, prefixed with `rep_` title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf status: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. updated_at: type: string format: date-time description: RFC 3339 datetime string of when this report was last updated. title: Updated at examples: - "2024-10-13T07:20:50.52Z" created_at: type: string format: date-time description: RFC 3339 datetime string of when this report was created. title: Created at examples: - "2024-10-12T07:20:50.52Z" type: type: string enum: - products_prices description: Type of report to create. title: ProductsPricesReportType examples: - products_prices x-enum-descriptions: products_prices: description: Products and prices reports contain information about your products and prices. May include non-catalog products and prices. filters: type: array items: type: object required: - name - operator - value properties: name: type: string enum: - product_status - price_status - product_type - price_type - product_updated_at - price_updated_at description: Field name to filter by. title: ProductPricesReportFilterName x-enum-descriptions: product_status: description: Filter by product status. Pass an array of strings containing any valid value for the `status` field against a product. price_status: description: Filter by price status. Pass an array of strings containing any valid value for the `status` field against a price. product_type: description: Filter by product type. Pass an array of strings containing any valid value for the `type` field against a product. price_type: description: Filter by price type. Pass an array of strings containing any valid value for the `type` field against a price. product_updated_at: description: Filter by product `updated_at` date. Pass an RFC 3339 datetime string. price_updated_at: description: Filter by price `updated_at` date. Pass an RFC 3339 datetime string. operator: anyOf: - type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. description: List of filters applied to this report. title: ProductPricesReportFilters maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `product_updated_at` and `price_updated_at` are greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Report entity when working with the products and prices report. title: ReportProductsPrices - type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this report, prefixed with `rep_` title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf status: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. updated_at: type: string format: date-time description: RFC 3339 datetime string of when this report was last updated. title: Updated at examples: - "2024-10-13T07:20:50.52Z" created_at: type: string format: date-time description: RFC 3339 datetime string of when this report was created. title: Created at examples: - "2024-10-12T07:20:50.52Z" type: type: string enum: - discounts description: Type of report to create. title: DiscountsReportType examples: - discounts x-enum-descriptions: discounts: description: Discounts reports contain information about your product and checkout discounts. filters: type: array items: type: object required: - name - operator - value properties: name: type: string enum: - type - status - updated_at description: Field name to filter by. title: DiscountsReportFilterName x-enum-descriptions: type: description: Filter by discount type. Pass an array of strings containing any valid value for the `type` field against a discount. status: description: Filter by discount status. Pass an array of strings containing any valid value for the `status` field against a discount. updated_at: description: Filter by discount updated date. Pass an RFC 3339 datetime string. operator: anyOf: - type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. title: DiscountsReportFilters maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Report entity when working with the discounts report. title: ReportDiscounts description: New or changed entity. examples: report.created: summary: report.created value: event_id: evt_01hvgdpb99hxbjje8npcvk3za0 event_type: report.created occurred_at: "2024-04-15T08:24:04.137829Z" notification_id: ntf_01hvgdpbc5rqqxh6j1daqs7n3x data: id: rep_01hvgdpayq6kjzyk4hz5m02cpn rows: null type: adjustments status: pending filters: - name: updated_at value: "2024-04-15" operator: lt - name: updated_at value: "2024-01-01" operator: gte - name: status value: - pending_approval - approved operator: null - name: action value: - refund - chargeback operator: null created_at: "2024-04-15T08:24:03.799Z" expires_at: null updated_at: "2024-04-15T08:24:03.799Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/reports/report-created description: report.created report.updated: post: operationId: report-updated summary: report.updated description: Occurs when an report is updated. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Reports requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: oneOf: - type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this report, prefixed with `rep_` title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf status: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. updated_at: type: string format: date-time description: RFC 3339 datetime string of when this report was last updated. title: Updated at examples: - "2024-10-13T07:20:50.52Z" created_at: type: string format: date-time description: RFC 3339 datetime string of when this report was created. title: Created at examples: - "2024-10-12T07:20:50.52Z" type: type: string enum: - adjustments - adjustment_line_items description: Type of report to create. title: AdjustmentsReportType examples: - adjustments x-enum-descriptions: adjustments: description: Adjustments reports contain information about refunds, credits, and chargebacks. adjustment_line_items: description: Adjustments reports contain information about refunds, credits, and chargebacks. The report is broken down by line item level. filters: type: array items: type: object required: - name - operator - value properties: name: type: string enum: - action - currency_code - status - updated_at x-enum-descriptions: action: description: Filter by adjustment action. Pass an array of strings containing any valid value for the `action` field against an adjustment. currency_code: description: Filter by transaction or adjustment currency. Pass an array of strings containing any valid supported three-letter ISO 4217 currency code. status: description: Filter by transaction or adjustment status. Pass an array of strings containing any valid value for the `status` field against a transaction or an adjustment. updated_at: description: Filter by transaction or adjustment updated date. Pass an RFC 3339 datetime string. description: Field name to filter by. title: AdjustmentsReportFilterName operator: anyOf: - type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string enum: - pending_approval - approved - rejected - reversed description: |- Status of this adjustment. Set automatically by Paddle. Most refunds for live accounts are created with the status of `pending_approval` until reviewed by Paddle, but some are automatically approved. For sandbox accounts, Paddle automatically approves refunds every ten minutes. Credit adjustments don't require approval from Paddle, so they're created as `approved`. x-enum-descriptions: pending_approval: description: Adjustment is pending approval by Paddle. Most refunds for live accounts must be approved by Paddle. approved: description: Adjustment is approved. Default for credits. Set when Paddle approves a refund that was `pending_approval`. rejected: description: Adjustment has been rejected. Set when Paddle rejects a refund that was `pending_approval`. reversed: description: Adjustment has been reversed. Set by Paddle when a `chargeback_reversal` or `credit_reversal` adjustment is created for this adjustment. - type: array items: type: string enum: - credit - refund - chargeback - chargeback_reverse - chargeback_warning - chargeback_warning_reverse - credit_reverse description: How this adjustment impacts the related transaction. title: AdjustmentAction x-enum-descriptions: credit: description: Credits some or all the related transaction. refund: description: Refunds some or all the related transaction. Must be approved by Paddle in most cases. chargeback: description: Chargeback for the related transaction. Automatically created by Paddle when a customer successfully disputes a charge. chargeback_reverse: description: Reversal of a chargeback for the related transaction. Automatically created by Paddle when Paddle contests a chargeback successfully. chargeback_warning: description: Warning of an upcoming chargeback for the related transaction. Automatically created by Paddle. chargeback_warning_reverse: description: Reversal of a chargeback warning for the related transaction. Automatically created by Paddle. credit_reverse: description: Reversal of a credit for the related transaction. Automatically created by Paddle. - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: string format: date - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: Filter criteria for this report. If omitted when creating, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. title: AdjustmentsReportFilters maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Report entity when working with adjustments reports. title: ReportAdjustments - type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this report, prefixed with `rep_` title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf status: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. updated_at: type: string format: date-time description: RFC 3339 datetime string of when this report was last updated. title: Updated at examples: - "2024-10-13T07:20:50.52Z" created_at: type: string format: date-time description: RFC 3339 datetime string of when this report was created. title: Created at examples: - "2024-10-12T07:20:50.52Z" type: type: string enum: - transactions - transaction_line_items description: Type of report to create. title: TransactionsReportType examples: - transactions x-enum-descriptions: transactions: description: Transactions reports contain information about revenue received, past due invoices, draft and issued invoices, and canceled transactions. transaction_line_items: description: Transactions reports contain information about revenue received, past due invoices, draft and issued invoices, and canceled transactions. The report is broken down by line item level. filters: type: array items: type: object required: - name - operator - value properties: name: type: string enum: - collection_mode - currency_code - origin - status - updated_at description: Field name to filter by. title: TransactionsReportFilterName x-enum-descriptions: collection_mode: description: Filter by collection mode. Pass an array of strings containing any valid value for the `collection_mode` field against a transaction. currency_code: description: Filter by transaction or adjustment currency. Pass an array of strings containing any valid supported three-letter ISO 4217 currency code. origin: description: Filter by transaction origin. Pass an array of strings containing any valid value for the origin field against a transaction. status: description: Filter by transaction or adjustment status. Pass an array of strings containing any valid value for the `status` field against a transaction or an adjustment. updated_at: description: Filter by transaction or adjustment updated date. Pass an RFC 3339 datetime string. operator: anyOf: - type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. title: TransactionsReportFilters maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Report entity when working with transactions reports. title: ReportTransactions - type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this report, prefixed with `rep_` title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf status: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. updated_at: type: string format: date-time description: RFC 3339 datetime string of when this report was last updated. title: Updated at examples: - "2024-10-13T07:20:50.52Z" created_at: type: string format: date-time description: RFC 3339 datetime string of when this report was created. title: Created at examples: - "2024-10-12T07:20:50.52Z" type: type: string enum: - products_prices description: Type of report to create. title: ProductsPricesReportType examples: - products_prices x-enum-descriptions: products_prices: description: Products and prices reports contain information about your products and prices. May include non-catalog products and prices. filters: type: array items: type: object required: - name - operator - value properties: name: type: string enum: - product_status - price_status - product_type - price_type - product_updated_at - price_updated_at description: Field name to filter by. title: ProductPricesReportFilterName x-enum-descriptions: product_status: description: Filter by product status. Pass an array of strings containing any valid value for the `status` field against a product. price_status: description: Filter by price status. Pass an array of strings containing any valid value for the `status` field against a price. product_type: description: Filter by product type. Pass an array of strings containing any valid value for the `type` field against a product. price_type: description: Filter by price type. Pass an array of strings containing any valid value for the `type` field against a price. product_updated_at: description: Filter by product `updated_at` date. Pass an RFC 3339 datetime string. price_updated_at: description: Filter by price `updated_at` date. Pass an RFC 3339 datetime string. operator: anyOf: - type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. description: List of filters applied to this report. title: ProductPricesReportFilters maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `product_updated_at` and `price_updated_at` are greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Report entity when working with the products and prices report. title: ReportProductsPrices - type: object required: - id - status - rows - expires_at - updated_at - created_at - type - filters properties: id: type: string pattern: ^[a-z]{3,10}_[a-z\d]{26}$ description: Unique Paddle ID for this report, prefixed with `rep_` title: PaddleID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf - txn_01h04vsbhqc62t8hmd4z3b578c - sub_01h04vsc0qhwtsbsxh3422wjs4 - rep_01h9apkx1d320kpvvfyezr96k0 - pro_01gsz97mq9pa4fkyy0wqenepkz - pri_01gsz8z1q1n00f12qt82y31smh - ntfset_01gt21c5pdx9q1e4mh1xrsjjn6 - ntflog_01gyfq570sy1nsv2123sbs68kv - ntf_01ghbkd0frb9k95cnhwd1bxpvk - evt_01gks14ge726w50ch2tmaw2a1x - dsc_01gv5kpg05xp104ek2fmgjwttf - ctm_01grnn4zta5a1mf02jjze7y2ys - biz_01grrebrzaee2qj2fqqhmcyzaj - adjitm_01gw4rs4kex0prncwfne87ft8x - adj_01gya6twkp8y0tv1e19rsgst9m - add_01gm302t81w94gyjpjpqypkzkf status: type: string enum: - pending - ready - failed - expired description: |- Status of this report. Set automatically by Paddle. Reports are created as `pending` initially, then move to `ready` when they're available to download. title: ReportStatus x-enum-descriptions: pending: description: Report created, but Paddle is processing it. It's not yet ready for download. ready: description: Report fully processed by Paddle and ready for download. failed: description: There was a problem processing this report. expired: description: Report has expired and is no longer accessible. default: pending rows: anyOf: - type: integer - type: "null" description: Number of records in this report. `null` if the report is `pending`. expires_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this report expires. The report is no longer available to download after this date. updated_at: type: string format: date-time description: RFC 3339 datetime string of when this report was last updated. title: Updated at examples: - "2024-10-13T07:20:50.52Z" created_at: type: string format: date-time description: RFC 3339 datetime string of when this report was created. title: Created at examples: - "2024-10-12T07:20:50.52Z" type: type: string enum: - discounts description: Type of report to create. title: DiscountsReportType examples: - discounts x-enum-descriptions: discounts: description: Discounts reports contain information about your product and checkout discounts. filters: type: array items: type: object required: - name - operator - value properties: name: type: string enum: - type - status - updated_at description: Field name to filter by. title: DiscountsReportFilterName x-enum-descriptions: type: description: Filter by discount type. Pass an array of strings containing any valid value for the `type` field against a discount. status: description: Filter by discount status. Pass an array of strings containing any valid value for the `status` field against a discount. updated_at: description: Filter by discount updated date. Pass an RFC 3339 datetime string. operator: anyOf: - type: string enum: - lt - gte description: Operator to use when filtering. title: FilterOperator examples: - lt x-enum-descriptions: lt: description: Less than. gte: description: Greater than or equal to. - type: "null" description: Operator to use when filtering. Valid when filtering by `updated_at`, `null` otherwise. value: anyOf: - type: array items: type: string - type: string description: Value to filter by. Check the allowed values descriptions for the `name` field to see valid values for a field. description: List of filters applied to this report. title: DiscountsReportFilters maxItems: 10 description: Filter criteria for this report. If omitted, reports are filtered to include data updated in the last 30 days. This means `updated_at` is greater than or equal to (`gte`) the date 30 days ago from the time the report was generated. description: Report entity when working with the discounts report. title: ReportDiscounts description: New or changed entity. examples: report.updated: summary: report.updated value: event_id: evt_01hvgdpmap3espxga4jwzb0agp event_type: report.updated occurred_at: "2024-04-15T08:24:13.398892Z" notification_id: ntf_01hvgdpmd2g0dv4vpmys3z7bc3 data: id: rep_01hvgdpayq6kjzyk4hz5m02cpn rows: 8 type: adjustments status: ready filters: - name: updated_at value: "2024-04-15" operator: lt - name: updated_at value: "2024-01-01" operator: gte - name: status value: - pending_approval - approved operator: null - name: action value: - refund - chargeback operator: null created_at: "2024-04-15T08:24:03.799Z" expires_at: "2024-04-29T08:24:13.042686Z" updated_at: "2024-04-15T08:24:13.042692Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/reports/report-updated description: report.updated subscription.activated: post: operationId: subscription-activated summary: subscription.activated description: |- Occurs when a subscription becomes active. Its `status` field changes to `active`. This means any trial period has elapsed and Paddle has successfully billed the customer. Payload includes the complete subscription entity, except `management_urls` .Subscription management links are temporary, so they're not included. [Get a subscription using the API](https://developer.paddle.com/api-reference/subscriptions/get-subscription) to get management links for a subscription. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta type: object description: New or changed entity. examples: subscription.activated: summary: subscription.activated value: event_id: evt_01hv8x2adt2hy58b2w89p4py4d event_type: subscription.activated occurred_at: "2024-04-12T10:18:49.658605Z" notification_id: ntf_01hv8x2ag2hadnwngnf1qvegrp data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" status: active quantity: 10 recurring: true created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-04-12T10:18:48.831Z" trial_dates: null next_billed_at: "2024-05-12T10:18:47.635628Z" previously_billed_at: "2024-04-12T10:18:47.635628Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-04-12T10:18:48.831Z" trial_dates: null next_billed_at: "2024-05-12T10:18:47.635628Z" previously_billed_at: "2024-04-12T10:18:47.635628Z" status: active discount: null paused_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:18:48.831Z" started_at: "2024-04-12T10:18:47.635628Z" updated_at: "2024-04-12T10:18:48.831Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: "2024-05-12T10:18:47.635628Z" billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T10:18:47.635628Z" scheduled_change: null consent_requirements: [] current_billing_period: ends_at: "2024-05-12T10:18:47.635628Z" starts_at: "2024-04-12T10:18:47.635628Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-activated description: subscription.activated subscription.canceled: post: operationId: subscription-canceled summary: subscription.canceled description: |- Occurs when a subscription is canceled. Its `status` field changes to `canceled`. If you choose to cancel a subscription immediately, the subscription status changes to `canceled` and `subscription.canceled` occurs. If you choose to cancel a subscription on the next billing period, Paddle creates a scheduled change to say the subscription should be canceled on the next billing date. [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) occurs at this point. On the next billing date, the subscription status changes to `canceled` and `subscription.canceled` occurs. Payload includes the complete subscription entity, except `management_urls`. Subscription management links are temporary, so they're not included. [Get a subscription using the API](https://developer.paddle.com/api-reference/subscriptions/get-subscription) to get management links for a subscription. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta type: object description: New or changed entity. examples: subscription.canceled: summary: subscription.canceled value: event_id: evt_01hv90vbenb5d4spnjbbcfh3nk event_type: subscription.canceled occurred_at: "2024-04-12T11:24:55.637846Z" notification_id: ntf_01hv90vbk0t9skkjqazdq3emtz data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" status: active quantity: 20 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.76Z" trial_dates: null next_billed_at: null previously_billed_at: "2024-04-12T10:37:59.556997Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" trial_dates: null next_billed_at: null previously_billed_at: "2024-04-12T10:37:59.556997Z" - price: id: pri_01gsz95g2zrkagg294kpstx54r name: Monthly (recurring addon) type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:59:52.159927Z" product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz unit_price: amount: "25000" currency_code: USD updated_at: "2024-04-09T07:27:48.018296Z" custom_data: null description: Monthly (recurring addon) import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T10:49:38.765Z" updated_at: "2024-04-12T10:49:38.765Z" trial_dates: null next_billed_at: null previously_billed_at: "2024-04-12T10:49:38.765Z" status: canceled discount: null paused_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:38:00.761Z" started_at: "2024-04-12T10:37:59.556997Z" updated_at: "2024-04-12T11:24:54.873Z" business_id: null canceled_at: "2024-04-12T11:24:54.868Z" custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: null billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T10:37:59.556997Z" scheduled_change: null consent_requirements: [] current_billing_period: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-canceled description: subscription.canceled subscription.created: post: operationId: subscription-created summary: subscription.created description: |- Occurs when a subscription is created. Paddle automatically creates subscriptions for recurring items when automatically-collected transactions are `completed`, or when manually-collected transactions are `billed`. [`subscription.trialing`](/webhooks/subscriptions/subscription-trialing) or [`subscription.activated`](/webhooks/subscriptions/subscription-activated) typically follow. Payload includes the complete subscription entity, except `management_urls`. Subscription management links are temporary, so they're not included. [Get a subscription using the API](/api-reference/subscriptions/get-subscription) to get management links for a subscription. It also includes a `transaction_id` field, which contains the Paddle ID of the completed or billed transaction that caused Paddle to create this subscription. You can use this match the created subscription with related transaction events [as part of provisioning](/build/subscriptions/provision-access-webhooks). Other subscription events don't include this field, and it is not returned by the API when working with subscription entities. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: type: object properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" transaction_id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta - transaction_id description: New or changed entity. examples: subscription.created: summary: subscription.created value: event_id: evt_01hv8x2acma2gz7he8kg2s0hna event_type: subscription.created occurred_at: "2024-04-12T10:18:49.621022Z" notification_id: ntf_01hv8x2af22vrrz7k67g06x1kq data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" status: active quantity: 10 recurring: true created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-04-12T10:18:48.831Z" trial_dates: null next_billed_at: "2024-05-12T10:18:47.635628Z" previously_billed_at: "2024-04-12T10:18:47.635628Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-04-12T10:18:48.831Z" trial_dates: null next_billed_at: "2024-05-12T10:18:47.635628Z" previously_billed_at: "2024-04-12T10:18:47.635628Z" status: active discount: null paused_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:18:48.831Z" started_at: "2024-04-12T10:18:47.635628Z" updated_at: "2024-04-12T10:18:48.831Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: "2024-05-12T10:18:47.635628Z" transaction_id: txn_01hv8wptq8987qeep44cyrewp9 billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T10:18:47.635628Z" scheduled_change: null consent_requirements: [] current_billing_period: ends_at: "2024-05-12T10:18:47.635628Z" starts_at: "2024-04-12T10:18:47.635628Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-created description: subscription.created subscription.imported: post: operationId: subscription-imported summary: subscription.imported description: |- Occurs when a subscription is imported. [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) or [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) typically follow. Payload includes the complete subscription entity, except `management_urls`. Subscription management links are temporary, so they're not included. [Get a subscription using the API](https://developer.paddle.com/api-reference/subscriptions/get-subscription) to get management links for a subscription. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta type: object description: New or changed entity. examples: subscription.imported: summary: subscription.imported value: event_id: evt_01hv90ze5sg2gcazvqmqjwzcnf event_type: subscription.imported occurred_at: "2024-04-12T11:27:09.497701Z" notification_id: ntf_01hv90ze96bnqq3smhha1t9f4e data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" status: active quantity: 10 recurring: true created_at: "2024-04-12T11:27:08.658Z" updated_at: "2024-04-12T11:27:08.658Z" trial_dates: null next_billed_at: "2024-05-12T11:27:07.516245Z" previously_billed_at: "2024-04-12T11:27:07.516245Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T11:27:08.658Z" updated_at: "2024-04-12T11:27:08.658Z" trial_dates: null next_billed_at: "2024-05-12T11:27:07.516245Z" previously_billed_at: "2024-04-12T11:27:07.516245Z" status: active discount: null paused_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T11:27:08.658Z" started_at: "2024-04-12T11:27:07.516245Z" updated_at: "2024-04-12T11:27:08.658Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: external_id: 018c166c-4a55-78bd-ac69-d058a45303fb imported_from: paddle_classic billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: "2024-05-12T11:27:07.516245Z" billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T11:27:07.516245Z" scheduled_change: null consent_requirements: [] current_billing_period: ends_at: "2024-05-12T11:27:07.516245Z" starts_at: "2024-04-12T11:27:07.516245Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-imported description: subscription.imported subscription.past_due: post: operationId: subscription-past_due summary: subscription.past_due description: |- Occurs when a subscription has an unpaid transaction. Its `status` changes to `past_due`. Payload includes the complete subscription entity, except `management_urls`. Subscription management links are temporary, so they're not included. [Get a subscription using the API](https://developer.paddle.com/api-reference/subscriptions/get-subscription) to get management links for a subscription. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta type: object description: New or changed entity. examples: subscription.past_due: summary: subscription.past_due value: event_id: evt_01hv8xby85a4vxfhgx493xvhjd event_type: subscription.past_due occurred_at: "2024-05-12T10:19:26.014628Z" notification_id: ntf_01hv8xbycgekeyat76j9ah2k3d data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" status: active quantity: 10 recurring: true created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-05-12T10:19:26.007628Z" trial_dates: null next_billed_at: "2024-06-12T10:18:47.635628Z" previously_billed_at: "2024-05-12T10:18:47.635628Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T10:18:48.831Z" updated_at: "2024-05-12T10:19:26.010628Z" trial_dates: null next_billed_at: "2024-06-12T10:18:47.635628Z" previously_billed_at: "2024-05-12T10:18:47.635628Z" status: past_due discount: null paused_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:18:48.831Z" started_at: "2024-04-12T10:18:47.635628Z" updated_at: "2024-05-12T10:19:26.014628Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: "2024-06-12T10:18:47.635628Z" billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T10:18:47.635628Z" scheduled_change: null consent_requirements: [] current_billing_period: ends_at: "2024-06-12T10:18:47.635628Z" starts_at: "2024-05-12T10:18:47.635628Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-past_due description: subscription.past_due subscription.paused: post: operationId: subscription-paused summary: subscription.paused description: |- Occurs when a subscription is paused. Its `status` field changes to `paused`. If you choose to pause a subscription immediately, the subscription status changes to `paused` and `subscription.paused` occurs. If you choose to pause a subscription on the next billing period, Paddle creates a scheduled change to say the subscription should be paused on the next billing date. [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) occurs at this point. On the next billing date, the subscription status changes to `paused` and `subscription.paused` occurs. Payload includes the complete subscription entity, except `management_urls`. Subscription management links are temporary, so they're not included. [Get a subscription using the API](https://developer.paddle.com/api-reference/subscriptions/get-subscription) to get management links for a subscription. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta type: object description: New or changed entity. examples: subscription.paused: summary: subscription.paused value: event_id: evt_01hv95bn2k322d8y74ks0ppgmk event_type: subscription.paused occurred_at: "2024-04-12T12:43:44.083397Z" notification_id: ntf_01hv95bn52k92r8je00te7wfke data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" status: active quantity: 10 recurring: true created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:42:27.89Z" trial_dates: null next_billed_at: null previously_billed_at: "2024-04-12T12:42:27.185672Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:42:27.89Z" trial_dates: null next_billed_at: null previously_billed_at: "2024-04-12T12:42:27.185672Z" status: paused discount: null paused_at: "2024-04-12T12:43:43.214Z" address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T12:42:27.89Z" started_at: "2024-04-12T12:42:27.185672Z" updated_at: "2024-04-12T12:43:43.219Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: null billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T12:42:27.185672Z" scheduled_change: null consent_requirements: [] current_billing_period: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-paused description: subscription.paused subscription.resumed: post: operationId: subscription-resumed summary: subscription.resumed description: |- Occurs when a subscription is resumed after being paused. Its status field changes to `active`. When resumed, Paddle bills for the subscription immediately. [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) and other transaction events occur, depending on the collection mode. Payload includes the complete subscription entity, except `management_urls`. Subscription management links are temporary, so they're not included. [Get a subscription using the API](https://developer.paddle.com/api-reference/subscriptions/get-subscription) to get management links for a subscription. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta type: object description: New or changed entity. examples: subscription.resumed: summary: subscription.resumed value: event_id: evt_01hv95drrfx0yapgmnv0x59kk7 event_type: subscription.resumed occurred_at: "2024-04-12T12:44:53.391712Z" notification_id: ntf_01hv95drvs9bfmbtfgkrwsjgwa data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" status: active quantity: 10 recurring: true created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:44:51.311Z" trial_dates: null next_billed_at: "2024-05-12T12:44:51.27Z" previously_billed_at: "2024-04-12T12:44:51.27Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-12T10:42:45.476453Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T12:42:27.89Z" updated_at: "2024-04-12T12:44:51.312Z" trial_dates: null next_billed_at: "2024-05-12T12:44:51.27Z" previously_billed_at: "2024-04-12T12:44:51.27Z" status: active discount: null paused_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T12:42:27.89Z" started_at: "2024-04-12T12:42:27.185672Z" updated_at: "2024-04-12T12:44:51.309Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: "2024-05-12T12:44:51.27Z" billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T12:42:27.185672Z" scheduled_change: null consent_requirements: [] current_billing_period: ends_at: "2024-05-12T12:44:51.27Z" starts_at: "2024-04-12T12:44:51.27Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-resumed description: subscription.resumed subscription.trialing: post: operationId: subscription-trialing summary: subscription.trialing description: |- Occurs when a subscription enters trial period. Payload includes the complete subscription entity, except `management_urls`. Subscription management links are temporary, so they're not included. [Get a subscription using the API](https://developer.paddle.com/api-reference/subscriptions/get-subscription) to get management links for a subscription. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta type: object description: New or changed entity. examples: subscription.trialing: summary: subscription.trialing value: event_id: evt_01hv915jfwxvzkq35bfnpxs9ck event_type: subscription.trialing occurred_at: "2024-04-12T11:30:30.524449Z" notification_id: ntf_01hv915jjxeqf1t0wrbqzkjh6g data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01hv0vax6rv18t4tamj848ne4d name: Monthly (per seat) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2024-04-09T07:14:38.424504Z" product_id: pro_01htz88xpr0mm7b3ta2pjkr7w2 unit_price: amount: "500" currency_code: USD updated_at: "2024-04-09T07:15:53.950721Z" custom_data: null description: Monthly (per seat) with 14 day trial import_meta: null trial_period: interval: day frequency: 14 requires_payment_method: false billing_cycle: interval: month frequency: 1 unit_price_overrides: - unit_price: amount: "700" currency_code: EUR country_codes: - IE - FR - DE - unit_price: amount: "600" currency_code: GBP country_codes: - GB product: id: pro_01htz88xpr0mm7b3ta2pjkr7w2 name: AeroEdit for learner pilots type: standard tax_category: standard description: Essential tools for student pilots to manage flight logs, analyze performance, and plan routes, and ensure compliance. Valid student pilot certificate from the FAA required. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: false flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: null status: active import_meta: null created_at: "2024-04-08T16:22:16.024Z" updated_at: "2024-04-08T16:27:59.074Z" status: trialing quantity: 10 recurring: true created_at: "2024-04-12T11:30:29.648Z" updated_at: "2024-04-12T11:30:29.648Z" trial_dates: ends_at: "2024-04-26T11:30:29.637Z" starts_at: "2024-04-12T11:30:29.637Z" next_billed_at: "2024-04-26T11:30:29.637Z" previously_billed_at: null status: trialing discount: null paused_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T11:30:29.648Z" started_at: "2024-04-12T11:30:29.637Z" updated_at: "2024-04-12T11:30:29.648Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: "2024-04-26T11:30:29.637Z" billing_details: null collection_mode: automatic first_billed_at: null scheduled_change: null consent_requirements: [] current_billing_period: ends_at: "2024-04-26T11:30:29.637Z" starts_at: "2024-04-12T11:30:29.637Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-trialing description: subscription.trialing subscription.updated: post: operationId: subscription-updated summary: subscription.updated description: |- Occurs when a subscription is updated. Payload includes the complete subscription entity, except `management_urls`. Subscription management links are temporary, so they're not included. [Get a subscription using the API](https://developer.paddle.com/api-reference/subscriptions/get-subscription) to get management links for a subscription. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Subscriptions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 status: type: string enum: - active - canceled - past_due - paused - trialing description: Status of this subscription. Set automatically by Paddle. Use the pause subscription or cancel subscription operations to change. title: SubscriptionStatus x-enum-descriptions: active: description: Subscription is active. Paddle is billing for this subscription and related transactions aren't past due. canceled: description: Subscription is canceled. Automatically set by Paddle when a subscription is canceled. When a subscription is set to cancel on the next billing period, a scheduled change for the cancellation is created. The subscription status moves to canceled when the scheduled change takes effect. past_due: description: Subscription has an overdue payment. Automatically set by Paddle when payment fails for an automatically-collected transaction, or when payment terms have elapsed for a manually-collected transaction (an invoice). paused: description: Subscription is paused. Automatically set by Paddle when a subscription is paused. When a subscription is set to pause on the next billing period, a scheduled change for the pause is created. The subscription status moves to `paused` when the scheduled change takes effect. trialing: description: Subscription is in trial. customer_id: type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys address_id: type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand created_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" started_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription started. This may be different from `first_billed_at` if the subscription started in trial. first_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was first billed. This may be different from `started_at` if the subscription started in trial. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription is next scheduled to be billed. paused_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was paused. Set automatically by Paddle when the pause subscription operation is used. `null` if not paused. canceled_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this subscription was canceled. Set automatically by Paddle when the cancel subscription operation is used. `null` if not canceled. discount: anyOf: - type: object required: - id - starts_at - ends_at - type properties: id: type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf starts_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount was first applied. `null` for canceled subscriptions where a discount was redeemed but never applied to a transaction. ends_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this discount no longer applies. Where a discount has `maximum_recurring_intervals`, this is the date of the last billing period where this discount applies. `null` where a discount recurs forever. type: type: string enum: - recurring - one-off description: Whether this discount applies for multiple billing periods. title: SubscriptionDiscountType x-enum-descriptions: recurring: description: Discount applies to multiple billing periods. one-off: description: Discount applies to a single billing period only. Returned when a subscription is created in trial with a discount. The discount is removed from the subscription on renewal. description: Details of the discount applied to this subscription. title: SubscriptionDiscountTimePeriod - type: "null" collection_mode: anyOf: - type: string enum: - automatic - manual description: How payment is collected. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. - type: "null" description: How payment is collected for transactions created for this subscription. `automatic` for checkout, `manual` for invoices. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" current_billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Current billing period for this subscription. Set automatically by Paddle based on the billing cycle. `null` for `paused` and `canceled` subscriptions. billing_cycle: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How often this subscription renews. Set automatically by Paddle based on the prices on this subscription. scheduled_change: anyOf: - type: object required: - action - effective_at - resume_at properties: action: type: string enum: - cancel - pause - resume description: Kind of change that's scheduled to be applied to this subscription. title: ScheduledChangeAction x-enum-descriptions: cancel: description: Subscription is scheduled to cancel. Its status changes to `canceled` on the `effective_at` date. pause: description: Subscription is scheduled to pause. Its status changes to `paused` on the `effective_at` date. resume: description: Subscription is scheduled to resume. Its status changes to `active` on the `effective_at` date. effective_at: type: string format: date-time description: RFC 3339 datetime string of when this scheduled change takes effect. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" resume_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a paused subscription should resume. Only used for `pause` scheduled changes. description: Change that's scheduled to be applied to a subscription. Use the pause subscription, cancel subscription, and resume subscription operations to create scheduled changes. `null` if no scheduled changes. title: Subscription scheduled change - type: "null" items: type: array items: type: object required: - status - quantity - recurring - created_at - updated_at - previously_billed_at - next_billed_at - trial_dates - price - product properties: status: type: string enum: - active - inactive - trialing description: Status of this subscription item. Set automatically by Paddle. title: SubscriptionItemStatus x-enum-descriptions: active: description: This item is active. It is not in trial and Paddle bills for it. inactive: description: This item is not active. Set when the related subscription is paused. trialing: description: This item is in trial. Paddle has not billed for it. quantity: type: number minimum: 1 description: Quantity of this item on the subscription. recurring: type: boolean description: Whether this is a recurring item. `false` if one-time. created_at: type: string format: date-time description: RFC 3339 datetime string of when this item was added to this subscription. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this item was last updated on this subscription. title: Updated at examples: - "2024-10-13T07:20:50.52Z" previously_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item was last billed. next_billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this item is next scheduled to be billed. trial_dates: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Trial dates for this item. price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Related price entity for this item. This reflects the price entity at the time it was added to the subscription. title: Price product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this item. This reflects the product entity at the time it was added to the subscription. title: Product description: Represents a subscription item. title: Subscription item consent_requirements: anyOf: - type: array items: type: object required: - id - requirement - status - created_at - consent_period - granted_at - voided_at properties: id: type: string pattern: ^subconreq_[a-z\d]{26}$ description: Unique Paddle ID for this subscription consent requirement entity, prefixed with `subconreq_`. title: Subscription Consent Requirement ID examples: - subconreq_01gm302t81w94gyjpjpqypkzkf requirement: type: string enum: - trial_ending - introductory_discount_ending description: Type of consent required for successful renewal. x-enum-descriptions: trial_ending: description: Consent required because the trial period is ending. introductory_discount_ending: description: Consent required because an initial discount is ending. status: type: string enum: - pending - granted - voided description: Status of this consent requirement. x-enum-descriptions: pending: description: Consent not yet granted. Subscription is canceled on next renewal. granted: description: Consent granted. Subscription renews normally. voided: description: Consent voided. Consent requirement is no longer applicable, either because the consent is no longer required, or another consent requirement has replaced it. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" consent_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Period during which consent for this subscription can be granted. `null` if there is no `next_billed_at` or the consent requirement does not apply to the current billing period. granted_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when the customer granted their consent. `null` if not yet granted. voided_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when consent was voided or no longer required. `null` if not voided. description: Represents a specific condition under which explicit customer consent is, or was, mandated for a subscription renewal. title: SubscriptionConsentRequirement - type: "null" description: List of active consent requirements for the subscription's current billing period. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" required: - id - status - customer_id - address_id - business_id - currency_code - created_at - updated_at - started_at - first_billed_at - next_billed_at - paused_at - canceled_at - discount - collection_mode - billing_details - current_billing_period - billing_cycle - scheduled_change - items - consent_requirements - custom_data - import_meta type: object description: New or changed entity. examples: subscription.updated: summary: subscription.updated value: event_id: evt_01hv8ytwcg91n07pa4jmvsdcst event_type: subscription.updated occurred_at: "2024-04-12T10:49:43.056742Z" notification_id: ntf_01hv8ytwevhn1sdtwzhf4rz548 data: id: sub_01hv8x29kz0t586xy6zn1a62ny items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard tax_category: standard description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png custom_data: features: aircraft_performance: true compliance_monitoring: true flight_log_management: true payment_by_invoice: false route_planning: true sso: false suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. status: active import_meta: null created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" status: active quantity: 20 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:49:38.76Z" trial_dates: null next_billed_at: "2024-05-12T10:37:59.556997Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard tax_category: standard description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png custom_data: null status: active import_meta: null created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T10:38:00.761Z" updated_at: "2024-04-12T10:38:00.761Z" trial_dates: null next_billed_at: "2024-05-12T10:37:59.556997Z" previously_billed_at: "2024-04-12T10:37:59.556997Z" - price: id: pri_01gsz95g2zrkagg294kpstx54r name: Monthly (recurring addon) type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:59:52.159927Z" product_id: pro_01gsz92krfzy3hcx5h5rtgnfwz unit_price: amount: "25000" currency_code: USD updated_at: "2024-04-09T07:27:48.018296Z" custom_data: null description: Monthly (recurring addon) import_meta: null trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] product: id: pro_01gsz92krfzy3hcx5h5rtgnfwz name: VIP support type: standard tax_category: standard description: Get exclusive access to our expert team of product specialists, available to help you make the most of your AeroEdit subscription. image_url: https://paddle.s3.amazonaws.com/user/165798/qgyipKJwRtq98YNboipo_vip-support.png custom_data: null status: active import_meta: null created_at: "2023-02-23T13:58:17.615Z" updated_at: "2024-04-05T15:44:02.893Z" status: active quantity: 1 recurring: true created_at: "2024-04-12T10:49:38.765Z" updated_at: "2024-04-12T10:49:38.765Z" trial_dates: null next_billed_at: "2024-05-12T10:37:59.556997Z" previously_billed_at: "2024-04-12T10:49:38.765Z" status: active discount: null paused_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:38:00.761Z" started_at: "2024-04-12T10:37:59.556997Z" updated_at: "2024-04-12T10:49:38.771Z" business_id: null canceled_at: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 import_meta: null billing_cycle: interval: month frequency: 1 currency_code: USD next_billed_at: "2024-05-12T10:37:59.556997Z" billing_details: null collection_mode: automatic first_billed_at: "2024-04-12T10:37:59.556997Z" scheduled_change: null consent_requirements: - id: subconreq_01hv8z8vpk6z4r6ea5f6g2q8yz requirement: introductory_discount_ending status: pending created_at: "2024-04-12T10:38:00.761Z" consent_period: starts_at: "2024-05-05T10:37:59.556997Z" ends_at: "2024-05-12T10:37:59.556997Z" granted_at: null voided_at: null current_billing_period: ends_at: "2024-05-12T10:37:59.556997Z" starts_at: "2024-04-12T10:37:59.556997Z" security: - {} externalDocs: url: https://developer.paddle.com/webhooks/subscriptions/subscription-updated description: subscription.updated transaction.billed: post: operationId: transaction-billed summary: transaction.billed description: |- Occurs when a transaction is billed. Its `status` field changes to `billed` and `billed_at` is populated. Marking a transaction as billed is typically used when working with manually-collected transactions to issue an invoice. It's not typically part of checkout workflows, where collection mode is automatic. Transactions are marked as billed when: * You update its status to `billed` using the API. * You send an invoice (a manually-collected transaction) using the Paddle dashboard. Billed transactions get an invoice number. They're considered legal records, so they can't be deleted or changed. [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) events occur immediately after to add: * `invoice_number`, and `invoice_id` if not already present. * If manually-collected, the newly created `subscription_id` for any recurring items. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.billed: summary: transaction.billed value: event_id: evt_01hv8xqmb9e8y66q4hb54cfsf9 event_type: transaction.billed occurred_at: "2024-04-12T10:30:27.945096Z" notification_id: ntf_01hv8xqmdrrnsp7rvaf1264cp2 data: id: txn_01hv8m0mnx3sj85e7gxc6kga03 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: api status: billed details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" proration: null unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv8wt98jahpbm1t1v1sd067y totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" proration: null unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" proration: null unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null adjusted_payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" checkout: url: null payments: [] billed_at: "2024-04-12T10:30:27.198043152Z" address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T07:40:38.00704Z" invoice_id: inv_01hv8m0nn5nbvdejcvv9cpg8jf updated_at: "2024-04-12T10:30:27.584874645Z" revised_at: null business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 currency_code: USD billing_period: ends_at: "2025-04-11T23:59:00Z" starts_at: "2024-04-12T00:00:00Z" invoice_number: null billing_details: payment_terms: interval: day frequency: 14 enable_checkout: false purchase_order_number: PO-123 additional_information: null collection_mode: manual subscription_id: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-billed description: transaction.billed transaction.canceled: post: operationId: transaction-canceled summary: transaction.canceled description: |- Occurs when a transaction is canceled. Its `status` field changes to `canceled`. Marking a transaction as canceled is typically used when working with manually-collected transactions to say that an invoice was created in error. It's not typically part of checkout workflows, where collection mode is automatic. Transactions are marked as canceled when: * You update its status to `canceled` using the API. * You cancel an invoice (a manually-collected transaction) using the Paddle dashboard. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.canceled: summary: transaction.canceled value: event_id: evt_01hv8xsew895m2bswfcezebbjw event_type: transaction.canceled occurred_at: "2024-04-12T10:31:27.880764Z" notification_id: ntf_01hv8xseze1cnv8k83cnhtn4zr data: id: txn_01hv8m0mnx3sj85e7gxc6kga03 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: api status: canceled details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" proration: null unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv8wt98jahpbm1t1v1sd067y totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" proration: null unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" proration: null unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null adjusted_payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" checkout: url: null payments: [] billed_at: "2024-04-12T10:30:27.198043Z" address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T07:40:38.00704Z" invoice_id: inv_01hv8m0nn5nbvdejcvv9cpg8jf updated_at: "2024-04-12T10:31:27.360716923Z" revised_at: null business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 currency_code: USD billing_period: ends_at: "2025-04-11T23:59:00Z" starts_at: "2024-04-12T00:00:00Z" invoice_number: 325-10567 billing_details: payment_terms: interval: day frequency: 14 enable_checkout: false purchase_order_number: PO-123 additional_information: null collection_mode: manual subscription_id: sub_01hv8xqmay5w5rfsnzkxzgy0yp security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-canceled description: transaction.canceled transaction.completed: post: operationId: transaction-completed summary: transaction.completed description: |- Occurs when a transaction is completed. Its status field changes to `completed`. Transactions move to completed after they're `paid`. After a transaction is paid, Paddle starts completed transaction processing. This involves: * Logging details of the successful payment against `transaction.payments[]`. * Adding information about fees, earnings, and totals for payouts to the transaction entity. * For automatically-collected transactions, creating a subscription for any recurring items and adding the related `subscription_id` to the transaction entity. * For automatically-collected transactions, adding an `invoice_number` and `invoice_id` to the transaction entity. [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) occurs as Paddle updates a paid transaction. When all processing is completed, a transaction is marked as completed and `transaction.completed` occurs. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.completed: summary: transaction.completed value: event_id: evt_01hv8x2axb33yr5y238zfwcn5p event_type: transaction.completed occurred_at: "2024-04-12T10:18:50.155553Z" notification_id: ntf_01hv8x2azy7scaan4s0eb0273x data: id: txn_01hv8wptq8987qeep44cyrewp9 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: web status: completed details: totals: fee: "3311" tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" proration: null - id: txnitm_01hv8wt98jahpbm1t1v1sd067y totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" proration: null - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" proration: null payout_totals: fee: "3311" tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" exchange_rate: "1" fee_rate: "0.05" tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "3311" tax: "5315" total: "65215" earnings: "56589" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" adjusted_payout_totals: null checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wptq8987qeep44cyrewp9 payments: - amount: "65215" status: captured created_at: "2024-04-12T10:18:33.579142Z" error_code: null captured_at: "2024-04-12T10:18:47.635628Z" method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "3184" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern paypal: null payment_method_id: paymtd_01hv8x1tpjfnttxddw73xnqx6s payment_attempt_id: 937640dd-e3dc-40df-a16c-bb75aafd8f71 stored_payment_method_id: 281ff2ca-8550-42b9-bf39-15948e7de62d - amount: "65215" status: error created_at: "2024-04-12T10:15:57.888183Z" error_code: declined captured_at: null method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "0002" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern paypal: null payment_method_id: paymtd_01hv8wx2mka7dfsqjjsxh1ne7z payment_attempt_id: 8f72cfa6-26b4-4a57-91dc-8f2708f7822d stored_payment_method_id: a78ece50-356f-4e0c-b72d-ad5368b0a0d9 billed_at: "2024-04-12T10:18:48.294633Z" address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:12:33.2014Z" invoice_id: inv_01hv8x29nsh54c2pgt0hnq0zkx updated_at: "2024-04-12T10:18:49.738971238Z" revised_at: null business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: null currency_code: USD billing_period: ends_at: "2024-05-12T10:18:47.635628Z" starts_at: "2024-04-12T10:18:47.635628Z" invoice_number: 325-10566 billing_details: null collection_mode: automatic subscription_id: sub_01hv8x29kz0t586xy6zn1a62ny security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-completed description: transaction.completed transaction.created: post: operationId: transaction-created summary: transaction.created description: |- Occurs when a transaction is created. Paddle creates a transaction when: * Customers open checkout. * You create an invoice in the Paddle dashboard. You may also create a transaction using the API: * Create a manually-collected transaction to create and send an invoice. * Create an automatically-collected transaction and pass to a checkout to collect for payment. Where a transaction has `items`, `customer_id`, and `address_id`, [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) occurs immediately after. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.created: summary: transaction.created value: event_id: evt_01hv8wpv7nkct05j2zxxvpz6dm event_type: transaction.created occurred_at: "2024-04-12T10:12:33.653418Z" notification_id: ntf_01hv8wpva216nz1ykxf3m3vwyr data: id: txn_01hv8wptq8987qeep44cyrewp9 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: web status: draft details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" proration: null - id: txnitm_01hv8wt98jahpbm1t1v1sd067y totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" proration: null - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" proration: null payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" adjusted_payout_totals: null checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wptq8987qeep44cyrewp9 payments: [] billed_at: null address_id: null created_at: "2024-04-12T10:12:33.201400507Z" invoice_id: null updated_at: "2024-04-12T10:12:33.201400507Z" revised_at: null business_id: null custom_data: null customer_id: null discount_id: null currency_code: USD billing_period: null invoice_number: null billing_details: null collection_mode: automatic subscription_id: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-created description: transaction.created transaction.paid: post: operationId: transaction-paid summary: transaction.paid description: |- Occurs when a transaction is paid. Its status field changes to `paid`. Transactions are paid when payment has been captured successfully, but Paddle hasn't yet fully processed the transaction internally. For example: * Payout totals may not be present. * Automatically-collected transactions for recurring items might not yet have a `subscription_id`. * Automatically-collected transactions might not yet have an `invoice_number`. Transactions move to `completed` and [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) occurs when they're fully processed. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.paid: summary: transaction.paid value: event_id: evt_01hv8x29mtm3f42a00bp5v8va9 event_type: transaction.paid occurred_at: "2024-04-12T10:18:48.858999Z" notification_id: ntf_01hv8x29q0j8ttnj51q5024qfp data: id: txn_01hv8wptq8987qeep44cyrewp9 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: web status: paid details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "0" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" proration: null unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv8wt98jahpbm1t1v1sd067y totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" proration: null unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" proration: null unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null adjusted_payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wptq8987qeep44cyrewp9 payments: - amount: "65215" status: captured created_at: "2024-04-12T10:18:33.579142Z" error_code: null captured_at: "2024-04-12T10:18:47.635628Z" method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "3184" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern paypal: null payment_method_id: paymtd_01hv8x1tpjfnttxddw73xnqx6s payment_attempt_id: 937640dd-e3dc-40df-a16c-bb75aafd8f71 stored_payment_method_id: 281ff2ca-8550-42b9-bf39-15948e7de62d - amount: "65215" status: error created_at: "2024-04-12T10:15:57.888183Z" error_code: declined captured_at: null method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "0002" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern paypal: null payment_method_id: paymtd_01hv8wx2mka7dfsqjjsxh1ne7z payment_attempt_id: 8f72cfa6-26b4-4a57-91dc-8f2708f7822d stored_payment_method_id: a78ece50-356f-4e0c-b72d-ad5368b0a0d9 billed_at: "2024-04-12T10:18:48.294633821Z" address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:12:33.2014Z" invoice_id: null updated_at: "2024-04-12T10:18:48.294635093Z" revised_at: null business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: null currency_code: USD billing_period: null invoice_number: null billing_details: null collection_mode: automatic subscription_id: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-paid description: transaction.paid transaction.past_due: post: operationId: transaction-past_due summary: transaction.past_due description: |- Occurs when a transaction becomes past due. Its `status` field changes to `past_due`. * Automatically-collected transactions for subscription renewals become past due when a payment attempt fails. * Manually-collected transactions become past due when no payment has been received and the payment terms have elapsed. The status against the related subscription for a transaction also changes to `past_due`, and [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) occurs. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.past_due: summary: transaction.past_due value: event_id: evt_01hv8xbx1sxvjqpp24m7j3xthf event_type: transaction.past_due occurred_at: "2024-04-12T10:24:03.642083Z" notification_id: ntf_01hv8xbx5rj101psexq5wndwd3 data: id: txn_01hv8xbtmb6zc7c264ycteehth items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: rate: "1" billing_period: ends_at: "2024-06-12T10:18:47.635628Z" starts_at: "2024-05-12T10:18:47.635628Z" - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: rate: "1" billing_period: ends_at: "2024-06-12T10:18:47.635628Z" starts_at: "2024-05-12T10:18:47.635628Z" origin: subscription_recurring status: past_due details: totals: fee: null tax: "3549" total: "43549" credit: "0" balance: "43549" discount: "0" earnings: null subtotal: "40000" grand_total: "43549" grand_total_tax: "3549" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8xbv0wdggp4a9338b18ckn totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" proration: rate: "1" billing_period: ends_at: "2024-06-12T10:18:47.635628Z" starts_at: "2024-05-12T10:18:47.635628Z" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv8xbv0wdggp4a933cx2m9qc totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" proration: rate: "1" billing_period: ends_at: "2024-06-12T10:18:47.635628Z" starts_at: "2024-05-12T10:18:47.635628Z" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" payout_totals: null adjusted_payout_totals: null tax_rates_used: - totals: tax: "3549" total: "43549" discount: "0" subtotal: "40000" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "3549" total: "43549" earnings: "0" subtotal: "40000" grand_total: "43549" grand_total_tax: "3549" currency_code: USD retained_fee: "0" checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8xbtmb6zc7c264ycteehth payments: - amount: "43549" status: error created_at: "2024-04-12T10:24:01.692772Z" error_code: authentication_failed captured_at: null method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "3184" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern paypal: null payment_method_id: paymtd_01hv8x1tpjfnttxddw73xnqx6s payment_attempt_id: ff8123f6-9cfc-4f04-9984-75e4ad04b169 stored_payment_method_id: 281ff2ca-8550-42b9-bf39-15948e7de62d billed_at: "2024-04-12T10:24:01.163479Z" address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:24:01.588479Z" invoice_id: null updated_at: "2024-04-12T10:24:03.19700142Z" revised_at: null business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: null currency_code: USD billing_period: ends_at: "2024-06-12T10:18:47.635628Z" starts_at: "2024-05-12T10:18:47.635628Z" invoice_number: null billing_details: null collection_mode: automatic subscription_id: sub_01hv8x29kz0t586xy6zn1a62ny security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-past_due description: transaction.past_due transaction.payment_failed: post: operationId: transaction-payment_failed summary: transaction.payment_failed description: |- Occurs when a payment fails for a transaction. The `payments` array is updated with details of the payment attempt. Typically happens for automatically-collected transactions, but may occur for manually-collected transactions (invoices) where a customer pays using Paddle Checkout and their payment is declined. If related to a subscription renewal: * The transaction status changes to `past_due` and [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) occurs. * The related subscription status changes to `past_due` and [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) occurs. Manually-collected transactions are marked as `past_due` when the payment terms have elapsed. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.payment_failed: summary: transaction.payment_failed value: event_id: evt_01hv8wx4vr9w6zsv6xss0b8az9 event_type: transaction.payment_failed occurred_at: "2024-04-12T10:16:00.120972Z" notification_id: ntf_01hv8wx4ywcj8pptnpeq1rrvzm data: id: txn_01hv8wptq8987qeep44cyrewp9 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: web status: ready details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null price_id: pri_01gsz8x8sawmvhz1pv30nge1ke quantity: 10 tax_rate: "0.08875" proration: null unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv8wt98jahpbm1t1v1sd067y totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null price_id: pri_01h1vjfevh5etwq3rb416a23h2 quantity: 1 tax_rate: "0.08875" proration: null unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null price_id: pri_01gsz98e27ak2tyhexptwc58yk quantity: 1 tax_rate: "0.08875" proration: null unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null adjusted_payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wptq8987qeep44cyrewp9 payments: - amount: "65215" status: error created_at: "2024-04-12T10:15:57.888183Z" error_code: declined captured_at: null method_details: type: card underlying_details: null south_korea_local_card: null card: type: visa last4: "0002" expiry_year: 2025 expiry_month: 1 cardholder_name: Michael McGovern paypal: null payment_method_id: paymtd_01hv8wx2mka7dfsqjjsxh1ne7z payment_attempt_id: 8f72cfa6-26b4-4a57-91dc-8f2708f7822d stored_payment_method_id: a78ece50-356f-4e0c-b72d-ad5368b0a0d9 billed_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:12:33.2014Z" invoice_id: null updated_at: "2024-04-12T10:14:26.325076Z" revised_at: null business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: null currency_code: USD billing_period: null invoice_number: null billing_details: null collection_mode: automatic subscription_id: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-payment_failed description: transaction.payment_failed transaction.ready: post: operationId: transaction-ready summary: transaction.ready description: |- Occurs when a transaction is ready to be billed. Its `status` field changes to `ready`. Transactions are ready when they have all the required fields against them to be transitioned to `billed` or `completed`. This includes `items`, `customer_id`, and `address_id`. Paddle automatically marks transactions as `ready` when these fields are present. When working with manually-collected transactions (invoices), [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) may occur immediately after to add `invoice_id` and `adjusted_totals`. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.ready: summary: transaction.ready value: event_id: evt_01hv8wt9q80exvgq58y668kszj event_type: transaction.ready occurred_at: "2024-04-12T10:14:26.792582Z" notification_id: ntf_01hv8wt9sx34v7vmjffpbt4dbt data: id: txn_01hv8wptq8987qeep44cyrewp9 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: web status: ready details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n price_id: pri_01gsz8x8sawmvhz1pv30nge1ke totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" proration: null product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv8wt98jahpbm1t1v1sd067y price_id: pri_01h1vjfevh5etwq3rb416a23h2 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" proration: null product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 price_id: pri_01gsz98e27ak2tyhexptwc58yk totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" proration: null product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null adjusted_payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" checkout: url: https://aeroedit.com/pay?_ptxn=txn_01hv8wptq8987qeep44cyrewp9 payments: [] billed_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T10:12:33.2014Z" invoice_id: null updated_at: "2024-04-12T10:14:26.325076344Z" revised_at: null business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: null currency_code: USD billing_period: null invoice_number: null billing_details: null collection_mode: automatic subscription_id: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-ready description: transaction.ready transaction.revised: post: operationId: transaction-revised summary: transaction.revised description: Occurs when a transaction is revised. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.revised: summary: transaction.revised value: event_id: evt_01hzpwdkc41q67tbawb73h0t7p event_type: transaction.revised occurred_at: "2024-06-06T13:39:40.036493Z" notification_id: ntf_01hzpwdkj9akeqyv4padq7ndwc data: id: txn_01hv8m0mnx3sj85e7gxc6kga03 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: api status: billed details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n price_id: pri_01gsz8x8sawmvhz1pv30nge1ke totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" proration: null product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv8wt98jahpbm1t1v1sd067y price_id: pri_01h1vjfevh5etwq3rb416a23h2 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" proration: null product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 price_id: pri_01gsz98e27ak2tyhexptwc58yk totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" proration: null product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null adjusted_payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" checkout: url: null payments: [] billed_at: "2024-04-12T10:30:27.198043152Z" address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T07:40:38.00704Z" invoice_id: inv_01hv8m0nn5nbvdejcvv9cpg8jf updated_at: "2024-04-12T10:30:27.584874645Z" revised_at: "2024-04-12T10:30:27.584874645Z" business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 currency_code: USD billing_period: ends_at: "2025-04-11T23:59:00Z" starts_at: "2024-04-12T00:00:00Z" invoice_number: null billing_details: payment_terms: interval: day frequency: 14 enable_checkout: false purchase_order_number: PO-123 additional_information: null collection_mode: manual subscription_id: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-revised description: transaction.revised transaction.updated: post: operationId: transaction-updated summary: transaction.updated description: |- Occurs when a transaction is updated. Specific events occur for status changes. `transaction.updated` may also occur after a status change events to add additional fields to the transaction after Paddle has completed internal processing for a transaction. For example, [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) occurs when a transaction status changes to `billed`. `transaction.updated` occurs immediately after to add an `invoice_number`. parameters: - $ref: "#/components/parameters/PaddleSignatureHeader" responses: "200": description: |- Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message. If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule. tags: - Transactions requestBody: required: true content: application/json: schema: type: object required: - event_id - event_type - occurred_at - notification_id - data properties: event_id: type: string pattern: ^evt_[a-z\d]{26}$ description: Unique Paddle ID for this event, prefixed with `evt_`. title: Event ID examples: - evt_01gks14ge726w50ch2tmaw2a1x event_type: type: string enum: - address.created - address.imported - address.updated - adjustment.created - adjustment.updated - api_key.created - api_key.expired - api_key.expiring - api_key.revoked - api_key.updated - api_key_exposure.created - business.created - business.imported - business.updated - client_token.created - client_token.revoked - client_token.updated - customer.created - customer.imported - customer.updated - discount.created - discount.imported - discount.updated - discount_group.created - discount_group.updated - payment_method.saved - payment_method.deleted - payout.created - payout.paid - price.created - price.imported - price.updated - product.created - product.imported - product.updated - report.created - report.updated - subscription.activated - subscription.canceled - subscription.created - subscription.imported - subscription.past_due - subscription.paused - subscription.resumed - subscription.trialing - subscription.updated - transaction.billed - transaction.canceled - transaction.completed - transaction.created - transaction.paid - transaction.past_due - transaction.payment_failed - transaction.ready - transaction.revised - transaction.updated description: Type of event sent by Paddle, in the format `entity.event_type`. title: Event type name x-enum-descriptions: address.created: description: An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event. address.imported: description: An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event. address.updated: description: An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event. adjustment.created: description: An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event. adjustment.updated: description: An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event. api_key.created: description: An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event. api_key.expired: description: An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event. api_key.expiring: description: An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event. api_key.revoked: description: An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event. api_key.updated: description: An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event. api_key_exposure.created: description: An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event. business.created: description: A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event. business.imported: description: A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event. business.updated: description: A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event. client_token.created: description: A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event. client_token.revoked: description: A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event. client_token.updated: description: A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event. customer.created: description: A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event. customer.imported: description: A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event. customer.updated: description: A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event. discount.created: description: A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event. discount.imported: description: A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event. discount.updated: description: A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event. discount_group.created: description: A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event. discount_group.updated: description: A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event. payment_method.saved: description: A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event. payment_method.deleted: description: A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event. payout.created: description: A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event. payout.paid: description: A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event. price.created: description: A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event. price.imported: description: A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event. price.updated: description: A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event. product.created: description: A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event. product.imported: description: A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event. product.updated: description: A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event. report.created: description: A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event. report.updated: description: A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event. subscription.activated: description: A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event. subscription.canceled: description: A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event. subscription.created: description: A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event. subscription.imported: description: A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event. subscription.past_due: description: A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event. subscription.paused: description: A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event. subscription.resumed: description: A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event. subscription.trialing: description: A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event. subscription.updated: description: A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event. transaction.billed: description: A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event. transaction.canceled: description: A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event. transaction.completed: description: A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event. transaction.created: description: A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event. transaction.paid: description: A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event. transaction.past_due: description: A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event. transaction.payment_failed: description: A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event. transaction.ready: description: A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event. transaction.revised: description: A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event. transaction.updated: description: A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event. occurred_at: type: string format: date-time description: RFC 3339 datetime string of when this event occurred. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" notification_id: type: string pattern: ^ntf_[a-z\d]{26}$ description: Unique Paddle ID for this notification, prefixed with `ntf_`. title: Notification ID examples: - ntf_01ghbkd0frb9k95cnhwd1bxpvk data: properties: id: type: string pattern: ^txn_[a-z\d]{26}$ description: Unique Paddle ID for this transaction entity, prefixed with `txn_`. title: Transaction ID examples: - txn_01h04vsbhqc62t8hmd4z3b578c status: type: string enum: - draft - ready - billed - paid - completed - canceled - past_due description: Status of this transaction. You may set a transaction to `billed` or `canceled`, other statuses are set automatically by Paddle. Automatically-collected transactions may return `completed` if payment is captured successfully, or `past_due` if payment failed. x-enum-descriptions: draft: description: Transaction is missing required fields. Typically the first stage of a checkout before customer details are captured. ready: description: Transaction has all of the required fields to be marked as `billed` or `completed`. billed: description: Transaction has been updated to `billed`. Billed transactions get an invoice number and are considered a legal record. They cannot be changed. Typically used as part of an invoice workflow. paid: description: Transaction is fully paid, but has not yet been processed internally. completed: description: Transaction is fully paid and processed. canceled: description: Transaction has been updated to `canceled`. If an invoice, it's no longer due. past_due: description: Transaction is past due. Occurs for automatically-collected transactions when the related subscription is in dunning, and for manually-collected transactions when payment terms have elapsed. customer_id: anyOf: - type: string pattern: ^ctm_[a-z\d]{26}$ description: Unique Paddle ID for this customer entity, prefixed with `ctm_`. title: Customer ID examples: - ctm_01grnn4zta5a1mf02jjze7y2ys - type: "null" description: Paddle ID of the customer that this transaction is for, prefixed with `ctm_`. address_id: anyOf: - type: string pattern: ^add_[a-z\d]{26}$ description: Unique Paddle ID for this address entity, prefixed with `add_`. title: Address ID examples: - add_01gm302t81w94gyjpjpqypkzkf - type: "null" description: Paddle ID of the address that this transaction is for, prefixed with `add_`. business_id: anyOf: - type: string pattern: ^biz_[a-z\d]{26}$ description: Unique Paddle ID for this business entity, prefixed with `biz_`. title: Business ID examples: - biz_01grrebrzaee2qj2fqqhmcyzaj - type: "null" description: Paddle ID of the business that this transaction is for, prefixed with `biz_`. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. Must be `USD`, `EUR`, or `GBP` if `collection_mode` is `manual`. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand origin: oneOf: - type: string enum: - api - subscription_charge - subscription_payment_method_change - subscription_recurring - subscription_update - web x-enum-descriptions: api: description: Transaction created via the Paddle API. subscription_charge: description: Transaction created automatically by Paddle as a result of a one-time charge for a subscription. subscription_payment_method_change: description: Transaction created automatically as part of updating a payment method. May be a zero value transaction. subscription_recurring: description: Transaction created automatically by Paddle as a result of a subscription renewal. subscription_update: description: Transaction created automatically by Paddle as a result of an update to a subscription. web: description: Transaction created automatically by Paddle.js for a checkout. description: Describes how this transaction was created. subscription_id: anyOf: - type: string pattern: ^sub_[a-z\d]{26}$ description: Unique Paddle ID for this subscription entity, prefixed with `sub_`. title: Subscription ID examples: - sub_01h04vsc0qhwtsbsxh3422wjs4 - type: "null" description: Paddle ID of the subscription that this transaction is for, prefixed with `sub_`. invoice_id: anyOf: - type: string - type: "null" pattern: ^inv_[a-z\d]{26}$ description: Paddle ID of the invoice that this transaction is related to, prefixed with `inv_`. Used for compatibility with the Paddle Invoice API, which is now deprecated. This field is scheduled to be removed in the next version of the Paddle API. deprecated: true examples: - inv_01ghbk4xjn4qdsmstcwzgcgg35 invoice_number: anyOf: - type: string - type: "null" description: Invoice number for this transaction. Automatically generated by Paddle when you mark a transaction as `billed` where `collection_mode` is `manual`. examples: - 123-45678 collection_mode: type: string enum: - automatic - manual description: How payment is collected for this transaction. `automatic` for checkout, `manual` for invoices. title: Collection mode x-enum-descriptions: automatic: description: Payment is collected automatically using a checkout initially, then using a payment method on file. manual: description: Payment is collected manually. Customers are sent an invoice with payment terms and can make a payment offline or using a checkout. Requires `billing_details`. discount_id: anyOf: - type: string pattern: ^dsc_[a-z\d]{26}$ description: Unique Paddle ID for this discount, prefixed with `dsc_`. title: Discount ID examples: - dsc_01gv5kpg05xp104ek2fmgjwttf - type: "null" description: Paddle ID of the discount applied to this transaction, prefixed with `dsc_`. billing_details: anyOf: - type: object required: - enable_checkout - purchase_order_number - additional_information - payment_terms properties: enable_checkout: type: boolean description: Whether the related transaction may be paid using Paddle Checkout. If omitted when creating a transaction, defaults to `false`. default: false purchase_order_number: type: string maxLength: 100 description: Customer purchase order number. Appears on invoice documents. additional_information: anyOf: - type: string - type: "null" maxLength: 1500 description: Notes or other information to include on this invoice. Appears on invoice documents. payment_terms: properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. required: - interval - frequency type: object title: Duration description: How long a customer has to pay this invoice once issued. description: Details for invoicing. Required if `collection_mode` is `manual`. title: Billing details - type: "null" description: Details for invoicing. Required if `collection_mode` is `manual`. billing_period: anyOf: - type: object required: - starts_at - ends_at properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" title: Time period - type: "null" description: Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for. items: type: array items: type: object required: - price - quantity - proration properties: price: properties: id: type: string pattern: ^pri_[a-z\d]{26}$ description: Unique Paddle ID for this price, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh product_id: type: string pattern: ^pro_[a-z\d]{26}$ description: Paddle ID for the product that this price is for, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz description: type: string minLength: 2 maxLength: 500 description: Internal description for this price, not shown to customers. Typically notes for your team. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard name: anyOf: - type: string minLength: 1 maxLength: 150 description: Name of this price, shown to customers at checkout and on invoices. Typically describes how often the related product bills. title: Price Name - type: "null" billing_cycle: anyOf: - type: object required: - interval - frequency properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. title: Duration - type: "null" description: How often this price should be charged. `null` if price is non-recurring (one-time). trial_period: anyOf: - type: object required: - interval - frequency - requires_payment_method properties: interval: type: string enum: - day - week - month - year description: Unit of time. frequency: type: integer minimum: 1 description: Amount of time. requires_payment_method: type: boolean description: Whether this price requires a payment method (`true`) or not (`false`) when trialing. If `false`, customers can sign up for subscription without entering their payment details, often referred to as a "cardless trial." title: Price Requires Payment Method default: true unit_price: anyOf: - type: object required: - amount properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: A representation of monetary value unformatted in the lowest denomination with optional currency code. title: Money with optional currency - type: "null" description: Trial price. Customers are billed this amount for the duration of the trial period. Applies to all customers except those in countries with `unit_price_overrides`. If `null`, customers are not charged during the trial. unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money with optional currency description: Override price for the trial period. Customers located in the listed countries are charged the override price during the trial. title: Unit price trial override additionalProperties: false maxItems: 250 description: List of unit price overrides for trial pricing. Use to override base trial price with a custom trial price and currency for a country or group of countries. title: Price Trial Duration - type: "null" description: Trial period for the product related to this price. The billing cycle begins once the trial period is over. `null` for no trial period. Requires `billing_cycle`. tax_mode: type: string enum: - account_setting - external - internal - location description: How tax is calculated for this price. title: Tax mode x-enum-descriptions: account_setting: description: Prices use the setting from your account. external: description: Prices are exclusive of tax. internal: description: Prices are inclusive of tax. location: description: Prices are inclusive or exclusive of tax, depending on the country of the transaction. default: account_setting unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Base price. This price applies to all customers, except for customers located in countries where you have `unit_price_overrides`. title: Money unit_price_overrides: type: array items: type: object required: - country_codes - unit_price properties: country_codes: type: array items: oneOf: - type: string enum: - AD - AE - AG - AI - AL - AM - AO - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BL - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BZ - CA - CC - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - MA - MC - MD - ME - MF - MG - MH - MK - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NL - NO - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VG - VI - VN - VU - WF - WS - XK - YT - ZA - ZM description: Two-letter ISO 3166-1 alpha-2 representation of a supported country. x-enum-descriptions: AD: description: Andorra AE: description: United Arab Emirates AG: description: Antigua and Barbuda AI: description: Anguilla AL: description: Albania AM: description: Armenia AO: description: Angola AR: description: Argentina AS: description: American Samoa AT: description: Austria AU: description: Australia AW: description: Aruba AX: description: Åland Islands AZ: description: Azerbaijan BA: description: Bosnia and Herzegovina BB: description: Barbados BD: description: Bangladesh BE: description: Belgium BF: description: Burkina Faso BG: description: Bulgaria BH: description: Bahrain BI: description: Burundi BJ: description: Benin BL: description: Saint Barthélemy BM: description: Bermuda BN: description: Brunei BO: description: Bolivia BQ: description: Caribbean Netherlands (Bonaire, Sint Eustatius, and Saba) BR: description: Brazil BS: description: Bahamas BT: description: Bhutan BV: description: Bouvet Island BW: description: Botswana BZ: description: Belize CA: description: Canada CC: description: Cocos Islands CG: description: Republic of Congo CH: description: Switzerland CI: description: Côte d'Ivoire (Ivory Coast) CK: description: Cook Islands CL: description: Chile CM: description: Cameroon CN: description: China CO: description: Colombia CR: description: Costa Rica CV: description: Cape Verde CW: description: Curaçao CX: description: Christmas Island CY: description: Cyprus CZ: description: Czechia (Czech Republic) DE: description: Germany DJ: description: Djibouti DK: description: Denmark DM: description: Dominica DO: description: Dominican Republic DZ: description: Algeria EC: description: Ecuador EE: description: Estonia EG: description: Egypt EH: description: Western Sahara ER: description: Eritrea ES: description: Spain ET: description: Ethiopia FI: description: Finland FJ: description: Fiji FK: description: Falkland Islands FM: description: Micronesia FO: description: Faroe Islands FR: description: France GA: description: Gabon GB: description: United Kingdom GD: description: Grenada GE: description: Georgia GF: description: French Guiana GG: description: Guernsey GH: description: Ghana GI: description: Gibraltar GL: description: Greenland GM: description: Gambia GN: description: Guinea GP: description: Guadeloupe GQ: description: Equatorial Guinea GR: description: Greece GS: description: South Georgia and the South Sandwich Islands GT: description: Guatemala GU: description: Guam GW: description: Guinea-Bissau GY: description: Guyana HK: description: Hong Kong HM: description: Heard Island and McDonald Islands HN: description: Honduras HR: description: Croatia HU: description: Hungary ID: description: Indonesia IE: description: Ireland IL: description: Israel IM: description: Isle of Man IN: description: India IO: description: British Indian Ocean Territory IQ: description: Iraq IS: description: Iceland IT: description: Italy JE: description: Jersey JM: description: Jamaica JO: description: Jordan JP: description: Japan KE: description: Kenya KG: description: Kyrgyzstan KH: description: Cambodia KI: description: Kiribati KM: description: Comoros KN: description: Saint Kitts and Nevis KR: description: South Korea KW: description: Kuwait KY: description: Cayman Islands KZ: description: Kazakhstan LA: description: Lao People's Democratic Republic (Laos) LB: description: Lebanon LC: description: Saint Lucia LI: description: Liechtenstein LK: description: Sri Lanka LR: description: Liberia LS: description: Lesotho LT: description: Lithuania LU: description: Luxembourg LV: description: Latvia MA: description: Morocco MC: description: Monaco MD: description: Moldova ME: description: Montenegro MF: description: Saint Martin MG: description: Madagascar MH: description: Marshall Islands MK: description: Macedonia MN: description: Mongolia MO: description: Macao MP: description: Northern Mariana Islands MQ: description: Martinique MR: description: Mauritania MS: description: Montserrat MT: description: Malta MU: description: Mauritius MV: description: Maldives MW: description: Malawi MX: description: Mexico MY: description: Malaysia MZ: description: Mozambique NA: description: Namibia NC: description: New Caledonia NE: description: Niger NF: description: Norfolk Island NG: description: Nigeria NL: description: Netherlands NO: description: Norway NP: description: Nepal NR: description: Nauru NU: description: Niue NZ: description: New Zealand OM: description: Oman PA: description: Panama PE: description: Peru PF: description: French Polynesia PG: description: Papua New Guinea PH: description: Philippines PK: description: Pakistan PL: description: Poland PM: description: Saint Pierre and Miquelon PN: description: Pitcairn PR: description: Puerto Rico PS: description: Palestinian territories PT: description: Portugal PW: description: Palau PY: description: Paraguay QA: description: Qatar RE: description: Reunion RO: description: Romania RS: description: Republic of Serbia RW: description: Rwanda SA: description: Saudi Arabia SB: description: Solomon Islands SC: description: Seychelles SE: description: Sweden SG: description: Singapore SH: description: Saint Helena SI: description: Slovenia SJ: description: Svalbard and Jan Mayen SK: description: Slovakia SL: description: Sierra Leone SM: description: San Marino SN: description: Senegal SR: description: Suriname ST: description: São Tomé and Príncipe SV: description: El Salvador SX: description: Sint Maarten SZ: description: Swaziland TC: description: Turks and Caicos Islands TD: description: Chad TF: description: French Southern and Antarctic Lands TG: description: Togo TH: description: Thailand TJ: description: Tajikistan TK: description: Tokelau TL: description: Timor-Leste TM: description: Turkmenistan TN: description: Tunisia TO: description: Tonga TR: description: Turkey TT: description: Trinidad and Tobago TV: description: Tuvalu TW: description: Taiwan TZ: description: Tanzania UA: description: Ukraine UG: description: Uganda UM: description: United States Minor Outlying Islands US: description: United States UY: description: Uruguay UZ: description: Uzbekistan VA: description: Holy See (Vatican City) VC: description: Saint Vincent and the Grenadines VG: description: British Virgin Islands VI: description: U.S. Virgin Islands VN: description: Vietnam VU: description: Vanuatu WF: description: Wallis and Futuna WS: description: Samoa XK: description: Kosovo YT: description: Mayotte ZA: description: South Africa ZM: description: Zambia minItems: 1 description: Supported two-letter ISO 3166-1 alpha-2 country code. Customers located in the listed countries are charged the override price. uniqueItems: true unit_price: properties: amount: type: string description: Amount in the lowest denomination for the currency, e.g. 10 USD = 1000 (cents). Although represented as a string, this value must be a valid integer. currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Supported three-letter ISO 4217 currency code. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand required: - amount - currency_code type: object description: Override price. This price applies to customers located in the countries for this unit price override. title: Money title: Unit price override additionalProperties: false maxItems: 250 description: List of unit price overrides. Use to override the base price with a custom price and currency for a country or group of countries. quantity: properties: minimum: type: integer minimum: 1 maximum: 999999999 description: Minimum quantity of the product related to this price that can be bought. Required if `maximum` set. examples: - 1 default: 1 maximum: type: integer minimum: 1 maximum: 999999999 description: Maximum quantity of the product related to this price that can be bought. Required if `minimum` set. Must be greater than or equal to the `minimum` value. examples: - 100 default: 100 required: - minimum - maximum type: object title: price_quantity examples: - minimum: 1 maximum: 100 description: Limits on how many times the related product can be purchased at this price. Useful for discount campaigns. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - product_id - description - type - name - billing_cycle - trial_period - tax_mode - unit_price - unit_price_overrides - quantity - status - custom_data - import_meta - created_at - updated_at type: object description: Represents a price entity. title: Price quantity: type: integer description: Quantity of this item on the transaction. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: TransactionItem minItems: 1 maxItems: 100 description: List of items on this transaction. For calculated totals, use `details.line_items`. details: type: object required: - tax_rates_used - totals - adjusted_totals - payout_totals - adjusted_payout_totals - line_items properties: tax_rates_used: type: array items: type: object required: - tax_rate - totals properties: tax_rate: type: string description: Rate used to calculate tax for this transaction. examples: - "0.2" totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Calculated totals for the tax applied to this transaction. title: Totals description: List of tax rates applied for this transaction. totals: type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" earnings: anyOf: - type: string - type: "null" description: Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the total for a transaction. These numbers can be negative when dealing with subscription updates that result in credit. adjusted_totals: type: object required: - subtotal - tax - total - grand_total - grand_total_tax - fee - retained_fee - earnings - currency_code properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" grand_total: type: string description: Total due after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: anyOf: - type: string - type: "null" description: Total fee taken by Paddle for this transaction. `null` until the transaction is `completed` and the fee is processed. examples: - "825" retained_fee: type: string description: Total Paddle fees retained for this adjustment. examples: - "300" earnings: anyOf: - type: string - type: "null" description: |- Total earnings for this transaction. This is the total minus the Paddle fee. `null` until the transaction is `completed` and the fee is processed. examples: - "15675" currency_code: type: string enum: - USD - EUR - GBP - JPY - AUD - CAD - CHF - HKD - SGD - SEK - ARS - BRL - CLP - CNY - COP - CZK - DKK - HUF - ILS - INR - KRW - MXN - NOK - NZD - PEN - PLN - RUB - THB - TRY - TWD - UAH - VND - ZAR description: Three-letter ISO 4217 currency code of the currency used for this transaction. title: Currency code x-enum-descriptions: USD: description: United States Dollar EUR: description: Euro GBP: description: Pound Sterling JPY: description: Japanese Yen AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc HKD: description: Hong Kong Dollar SGD: description: Singapore Dollar SEK: description: Swedish Krona ARS: description: Argentine Peso BRL: description: Brazilian Real CLP: description: Chilean Peso CNY: description: Chinese Yuan COP: description: Colombian Peso CZK: description: Czech Koruna DKK: description: Danish Krone HUF: description: Hungarian Forint ILS: description: Israeli Shekel INR: description: Indian Rupee KRW: description: South Korean Won MXN: description: Mexican Peso NOK: description: Norwegian Krone NZD: description: New Zealand Dollar PEN: description: Peruvian Sol PLN: description: Polish Zloty RUB: description: Russian Ruble THB: description: Thai Baht TRY: description: Turkish Lira TWD: description: New Taiwan Dollar UAH: description: Ukrainian Hryvnia VND: description: Vietnamese Dong ZAR: description: South African Rand description: Breakdown of the totals for a transaction after adjustments. title: Transaction totals (adjusted) payout_totals: anyOf: - type: object required: - subtotal - discount - tax - total - credit - credit_to_balance - balance - grand_total - grand_total_tax - fee - earnings - currency_code - exchange_rate - fee_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" credit: type: string description: Total credit applied to this transaction. This includes credits applied using a customer's credit balance and adjustments to a `billed` transaction. examples: - "0" credit_to_balance: type: string description: Additional credit generated from negative `details.line_items`. This credit is added to the customer balance. examples: - "0" balance: type: string description: Total due on a transaction after credits and any payments. examples: - "16500" grand_total: type: string description: Total due on a transaction after credits but before any payments. examples: - "16500" grand_total_tax: type: string description: Net tax amount included in `grand_total`. Equals the full `tax` amount unless credits are applied, in which case this value is proportionally reduced. examples: - "83" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" default: "1" fee_rate: type: string description: Paddle fee rate that was applied to this transaction. examples: - "0.05" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. title: Transaction payout totals - type: "null" description: Breakdown of the payout total for a transaction. `null` until the transaction is `completed`. Returned in your payout currency. adjusted_payout_totals: anyOf: - type: object required: - subtotal - tax - total - fee - retained_fee - chargeback_fee - earnings - currency_code - exchange_rate properties: subtotal: type: string description: Total before tax and fees. examples: - "15000" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after tax. examples: - "16500" fee: type: string description: Total fee taken by Paddle for this payout. examples: - "825" retained_fee: type: string description: Paddle fees retained for this adjustment. examples: - "300" chargeback_fee: properties: amount: type: string description: Chargeback fee converted into the payout currency. examples: - "1680" original: anyOf: - type: object required: - amount - currency_code properties: amount: type: string description: Fee amount for this chargeback in the original currency. examples: - "1500" currency_code: type: string enum: - AUD - CAD - EUR - GBP - USD description: Three-letter ISO 4217 currency code for the original chargeback fee. title: Currency code (chargebacks) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar EUR: description: Euro GBP: description: Pound Sterling USD: description: United States Dollar examples: - USD description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. - type: "null" description: Chargeback fee before conversion to the payout currency. `null` when the chargeback fee is the same as the payout currency. required: - amount - original type: object description: Details of any chargeback fees incurred for this transaction. earnings: type: string description: Total earnings for this payout. This is the subtotal minus the Paddle fee, excluding chargeback fees. examples: - "15675" currency_code: type: string enum: - AUD - CAD - CHF - CNY - CZK - DKK - EUR - GBP - HUF - PLN - SEK - USD - ZAR description: Three-letter ISO 4217 currency code used for the payout for this transaction. If your primary currency has changed, this reflects the primary currency at the time the transaction was billed. title: Currency code (payouts) x-enum-descriptions: AUD: description: Australian Dollar CAD: description: Canadian Dollar CHF: description: Swiss Franc CNY: description: Chinese Yuan CZK: description: Czech Koruna DKK: description: Danish Krone EUR: description: Euro GBP: description: Pound Sterling HUF: description: Hungarian Forint PLN: description: Polish Zloty SEK: description: Swedish Krona USD: description: United States Dollar ZAR: description: South African Rand exchange_rate: type: string description: Currency exchange rate, including margin if applicable. `1.0` if the transaction currency matches your payout currency. title: currency_exchange_rate examples: - "1.0513135" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. title: Transaction payout totals (adjusted) - type: "null" description: Breakdown of the payout total for a transaction after adjustments. `null` until the transaction is `completed`. line_items: type: array items: type: object required: - price_id - quantity - proration - tax_rate - unit_totals - totals - product - id properties: price_id: type: string pattern: ^pri_[a-z\d]{26}$ description: Paddle ID for the price related to this transaction line item, prefixed with `pri_`. title: Price ID examples: - pri_01gsz8z1q1n00f12qt82y31smh quantity: type: integer description: Quantity of this transaction line item. proration: anyOf: - type: object required: - rate - billing_period properties: rate: type: string description: Rate used to calculate proration. x-external-readOnly: true billing_period: properties: starts_at: type: string format: date-time description: RFC 3339 datetime string of when this period starts. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" ends_at: type: string format: date-time description: RFC 3339 datetime string of when this period ends. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" required: - starts_at - ends_at type: object title: Time period description: Billing period that proration is based on. x-external-readOnly: true description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. title: Proration - type: "null" description: How proration was calculated for this item. Populated when a transaction is created from a subscription change, where `proration_billing_mode` was `prorated_immediately` or `prorated_next_billing_period`. Set automatically by Paddle. tax_rate: type: string description: Rate used to calculate tax for this transaction line item. examples: - "0.2" unit_totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of the charge for one unit in the lowest denomination of a currency (e.g. cents for USD). title: Totals totals: properties: subtotal: type: string description: Subtotal before discount, tax, and deductions. If an item, unit price multiplied by quantity. examples: - "15000" discount: type: string description: |- Total discount as a result of any discounts applied. Except for percentage discounts, Paddle applies tax to discounts based on the line item `price.tax_mode`. If `price.tax_mode` for a line item is `internal`, Paddle removes tax from the discount applied. examples: - "0" tax: type: string description: Total tax on the subtotal. examples: - "1500" total: type: string description: Total after discount and tax. examples: - "16500" required: - subtotal - discount - tax - total type: object description: Breakdown of a charge in the lowest denomination of a currency (e.g. cents for USD). title: Totals product: properties: id: type: string pattern: ^pro_[a-z\d]{26}$ description: Unique Paddle ID for this product, prefixed with `pro_`. title: Product ID examples: - pro_01gsz97mq9pa4fkyy0wqenepkz name: type: string minLength: 1 maxLength: 200 description: Name of this product. title: Product Name description: anyOf: - type: string - type: "null" maxLength: 2048 description: Short description for this product. type: type: string enum: - custom - standard description: Type of item. Standard items are considered part of your catalog and are shown in the Paddle dashboard. title: CatalogType x-enum-descriptions: custom: description: Non-catalog item. Typically created for a specific transaction or subscription. Not returned when listing or shown in the Paddle dashboard. standard: description: Standard item. Can be considered part of your catalog and reused across transactions and subscriptions easily. default: standard tax_category: type: string enum: - digital-goods - ebooks - implementation-services - professional-services - saas - software-programming-services - standard - training-services - website-hosting description: Tax category for this product. Used for charging the correct rate of tax. Selected tax category must be enabled on your Paddle account. title: Tax category x-enum-descriptions: digital-goods: description: Non-customizable digital files or media (not software) acquired with an up front payment that can be accessed without any physical product being delivered. ebooks: description: Digital books and educational material which is sold with permanent rights for use by the customer. implementation-services: description: Remote configuration, set-up, and integrating software on behalf of a customer. professional-services: description: Services that involve the application of your expertise and specialized knowledge of a software product. saas: description: Products that allow users to connect to and use online or cloud-based applications over the Internet. software-programmin-services: description: Services that can be used to customize and white label software products. standard: description: Software products that are pre-written and can be downloaded and installed onto a local device. training-services: description: Training and education services related to software products. website-hosting: description: Cloud storage service for personal or corporate information, assets, or intellectual property. image_url: anyOf: - type: string minLength: 1 format: uri description: A URL to an image. title: Image Url - type: "null" - type: string minLength: 0 maxLength: 0 title: Empty String description: Image for this product. Included in the checkout and on some customer documents. custom_data: anyOf: - type: object unevaluatedProperties: {} description: Your own structured key-value data. title: Custom Data example: customer_reference_id: abcd1234 - type: "null" description: Your own structured key-value data. status: type: string enum: - active - archived description: Whether this entity can be used in Paddle. title: Status x-enum-descriptions: active: description: Entity is active and can be used. archived: description: Entity is archived, so can't be used. default: active import_meta: anyOf: - type: object required: - imported_from properties: external_id: anyOf: - type: string minLength: 1 maxLength: 200 description: Reference or identifier for this entity from the provider where it was imported from. title: External ID examples: - 9b95b0b8-e10f-441a-862e-1936a6d818ab - type: "null" imported_from: type: string minLength: 1 maxLength: 200 description: Name of the platform or provider where this entity was imported from. examples: - paddle_classic description: Import information for this entity. `null` if this entity is not imported. title: ImportMeta - type: "null" description: Import information for this entity. `null` if this entity is not imported. x-external-readOnly: true created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" required: - id - name - description - type - tax_category - image_url - custom_data - status - import_meta - created_at - updated_at type: object description: Related product entity for this transaction line item price. Reflects the entity at the time it was added to the transaction. title: Product id: type: string pattern: ^txnitm_[a-z\d]{26}$ description: Unique Paddle ID for this transaction item, prefixed with `txnitm_`. Used when working with [adjustments](https://developer.paddle.com/build/transactions/create-transaction-adjustments). title: Transaction item ID examples: - txnitm_01gm302t81w94gyjpjpqypkzkf description: Information about line items for this transaction. Different from transaction `items` as they include totals calculated by Paddle. Considered the source of truth for line item totals. description: Calculated totals for a transaction, including proration, discounts, tax, and currency conversion. Considered the source of truth for totals on a transaction. title: TransactionDetails payments: type: array items: type: object required: - payment_attempt_id - stored_payment_method_id - payment_method_id - amount - status - error_code - method_details - created_at - captured_at properties: payment_attempt_id: type: string description: UUID for this payment attempt. examples: - 497f776b-851d-4ebf-89ab-8ba0f75d2d6a stored_payment_method_id: type: string description: UUID for the stored payment method used for this payment attempt. Deprecated - use `payment_method_id` instead. deprecated: true examples: - 7636e781-3969-49f4-9c77-8226232e28a6 payment_method_id: anyOf: - type: string pattern: ^paymtd_[a-z\d]{26}$ description: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`. title: Payment Method ID examples: - paymtd_01hkm9xwqpbbpr1ksmvg3sx3v1 - type: "null" description: Paddle ID of the payment method used for this payment attempt, prefixed with `paymtd_`. amount: type: string description: Amount for collection in the lowest denomination of a currency (e.g. cents for USD). examples: - "1050" status: type: string enum: - authorized - authorized_flagged - canceled - captured - error - action_required - pending_no_action_required - created - unknown - dropped description: Status of this payment attempt. x-enum-descriptions: authorized: description: Authorized but not captured. Payment attempt is incomplete. authorized_flagged: description: Authorized but not captured because it has been flagged as potentially fraudulent. Payment attempt is incomplete. canceled: description: Previously authorized payment attempt has been canceled. Typically when `authorized_flagged` payment attempts are rejected. captured: description: Payment captured successfully. Payment attempt is complete. error: description: Something went wrong and the payment attempt was unsuccessful. Check the `error_code` for more information. action_required: description: Customer must complete an action for this payment attempt to proceed. Typically means that the payment attempt requires 3DS. pending_no_action_required: description: Response required from the bank or payment provider. Transaction is pending. created: description: New payment attempt created. unknown: description: Payment attempt status not known. dropped: description: Payment attempt dropped by Paddle. error_code: anyOf: - type: string enum: - already_canceled - already_refunded - authentication_failed - blocked_card - canceled - declined - declined_not_retryable - expired_card - fraud - invalid_amount - invalid_payment_details - issuer_unavailable - not_enough_balance - preferred_network_not_supported - prepaid_card_not_supported - psp_error - redacted_payment_method - system_error - transaction_not_permitted - unknown description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. title: Error code x-enum-descriptions: already_canceled: description: Cancellation not possible because the amount has already been canceled. Not typically returned for payments. already_refunded: description: Refund is not possible because the amount has already been refunded. Not typically returned for payments. authentication_failed: description: Payment required a 3DS2 authentication challenge. The customer completed the challenge but was not successful. blocked_card: description: Payment method issuer has indicated that the card cannot be used as it is frozen, lost, damaged, or stolen. canceled: description: Customer has requested that the mandate for recurring payments be canceled. declined: description: Payment method has been declined, with no other information returned. declined_not_retryable: description: Payment method has been declined, and the issuer has indicated that it should not be retried. This could mean the account is closed or the customer revoked authorization to charge the payment method. expired_card: description: Payment method issuer has indicated that this card is expired. Expired cards may also return `invalid_payment_details`, depending on how a payment is routed. fraud: description: Payment method issuer or payment service provider flagged this payment as potentially fraudulent. invalid_amount: description: Payment method issuer or payment service provider cannot process a payment that is this high or low. invalid_payment_details: description: Payment service provider has indicated the payment method isn't valid. This typically means that it's expired. `expired_card` is returned by the payment method issuer, rather than the payment service provider. issuer_unavailable: description: Payment service provider couldn't reach the payment method issuer. not_enough_balance: description: Payment method declined because of insufficient funds, or fund limits being reached. preferred_network_not_supported: description: Payment method has been declined because the network scheme that the customer selected isn't supported by the payment service provider. prepaid_card_not_supported: description: Payment method has been declined because it's a prepaid card and prepaid cards are blocked on this Paddle account. psp_error: description: Something went wrong with the payment service provider, with no other information returned. redacted_payment_method: description: Payment service provider didn't receive payment method information as they've been redacted. system_error: description: Something went wrong with the Paddle platform. Try again later, or check status.paddle.com. transaction_not_permitted: description: Payment method issuer doesn't allow this kind of payment because of limits on the account, or legal or compliance reasons. unknown: description: Payment attempt unsuccessful, with no other information returned. - type: "null" description: Reason why a payment attempt failed. Returns `null` if payment captured successfully. method_details: type: object required: - type - underlying_details - south_korea_local_card - card - paypal properties: type: type: string enum: - alipay - apple_pay - bancontact - blik - card - google_pay - ideal - kakao_pay - korea_local - south_korea_local_card - mb_way - naver_pay - offline - payco - paypal - pix - samsung_pay - unknown - upi - wechat_pay - wire_transfer description: Type of payment method used for this payment attempt. title: PaymentMethodType x-enum-descriptions: alipay: description: Alipay, popular in China. apple_pay: description: Apple Pay on a supported Apple device. bancontact: description: Bancontact, popular in Belgium. blik: description: BLIK, a popular payment method in Poland. card: description: Credit or debit card. google_pay: description: Google Pay on a supported Android device, Chromebook, or Google Chrome browser. ideal: description: iDEAL, popular in the Netherlands. kakao_pay: description: Kakao Pay, a popular payment method in Korea. korea_local: description: Korean payment methods, which includes over 20 payment options for the Korean market. Check `underlying_payment_method.korea_local` for information about the Korean payment method used to pay. deprecated: true south_korea_local_card: description: Korean local credit or debit card. mb_way: description: MB WAY, a popular payment method in Portugal. naver_pay: description: Naver Pay, a popular payment method in Korea. paypal: description: PayPal. offline: description: Payment recorded offline. payco: description: Payco, a popular payment method in Korea. pix: description: Pix, popular in Brazil. Available in early access. samsung_pay: description: Samsung Pay, a popular payment method in Korea. unknown: description: Payment method not known. upi: description: Unified Payments Interface (UPI), popular in India. Available in early access. wechat_pay: description: WeChat Pay, a popular payment method in China. wire_transfer: description: Wire transfer, sometimes called bank transfer. underlying_details: anyOf: - type: object required: - korea_local properties: korea_local: anyOf: - type: object required: - type properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kakaopay - kbank - kdbbank - kookmin - kwangju - lotte - mg - naverpaycard - naverpaypoint - nh - payco - post - samsung - samsungpay - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: Korean market underlying payment method type x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드) citi: description: Card issued by Citi Bank in Korea. (한국씨티은행) hana: description: Card issued by Hana Bank in Korea. (하나카드) hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드) jeju: description: Card issued by Jeju Bank in Korea. (제주은행) jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행) kakaobank: description: Card issued by Kakaobank in Korea. (주식회사 카카오뱅크) kakaopay: description: KakaoPay digital wallet, popular in Korea. (카카오페이) kbank: description: Card issued by K Bank in Korea. (케이뱅크) kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행) kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행) kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행) lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드) mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고) naverpaycard: description: Card issued by Naver Pay in Korea. (네이버 페이) deprecated: true naverpaypoint: description: Naver Pay digital wallet, popular in Korea. (네이버 페이) deprecated: true nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행) payco: description: PayCo digital wallet, popular in Korea. (페이코) deprecated: true post: description: Card issued by Korea Post. (우체국예금보험) samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드) samsungpay: description: Samsung Pay digital wallet, popular in Korea. (삼성 월렛) deprecated: true savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회) shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행) shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협) suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행) tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크) unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행) description: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. title: Korean market underlying details - type: "null" description: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead. title: PaymentMethodUnderlyingDetails deprecated: true - type: "null" deprecated: true south_korea_local_card: anyOf: - type: object properties: type: type: string enum: - bc - citi - hana - hyundai - jeju - jeonbuk - kakaobank - kbank - kdbbank - kookmin - kwangju - lotte - mg - nh - post - samsung - savingsbank - shinhan - shinhyup - suhyup - tossbank - unknown - woori description: Type of Korean payment method used to pay. title: SouthKoreaLocalCardType x-enum-descriptions: bc: description: BC Card (BCard), a kind of card issued in Korea. (비씨카드). citi: description: Card issued by Citi Bank in Korea. (한국씨티은행). hana: description: Card issued by Hana Bank in Korea. (하나카드). hyundai: description: Hyundai Card, a credit card issued by Hyundai in Korea. (현대카드). jeju: description: Card issued by Jeju Bank in Korea. (제주은행). jeonbuk: description: Card issued by Jeonbuk Bank in Korea. (전북은행). kbank: description: Card issued by K Bank in Korea. (케이뱅크). kdbbank: description: Card issued by KDB Bank in Korea. (한국산업은행). kookmin: description: Card issued by Kookmin Bank in Korea. (국민은행). kwangju: description: Card issued by Kwangju Bank in Korea. (광주은행). lotte: description: Lotte Card, a credit card issued by the Lotte Corporation in Korea. (롯데카드). mg: description: Card issued by MG Community Credit Cooperatives (KFCC) in Korea. (MG새마을금고). nh: description: NH Card, a card issued by Nonghyup Bank in Korea. (NH농협은행). post: description: Card issued by Korea Post. (우체국예금보험). samsung: description: Samsung Card, a card issued by Samsung in Korea. (삼성카드). savingsbank: description: Card issued by the Korean Federation of Savings Banks in Korea. (저축은행중앙회). shinhan: description: Card issued by Shinhan Bank in Korea. (주식회사 신한은행). shinhyup: description: Card issued by the National Credit Unit Federation of Korea (Shinhyup) in Korea. (신한은행 신협). suhyup: description: Card issued by the National Federation of Fisheries Cooperation (Suhyup) in Korea. (수협은행). tossbank: description: Card issued by Toss Bank in Korea. (토스뱅크). unknown: description: Underlying payment method not recognized. woori: description: Card issued by Woori Bank in Korea. (주식회사 우리은행). last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" description: Information about the Korean payment method used to pay. title: SouthKoreaLocalCard - type: "null" description: Information about the Korean credit or debit card used to pay. `null` unless `type` is `south_korea_local_card`. card: anyOf: - type: object required: - type - last4 - expiry_month - expiry_year - cardholder_name properties: type: type: string enum: - american_express - diners_club - discover - jcb - mada - maestro - mastercard - union_pay - unknown - visa description: Type of credit or debit card used to pay. title: CardType x-enum-descriptions: american_express: description: American Express diners_club: description: Diners Club discover: description: Discover Card jcb: description: JCB Card, popular in Japan mada: description: Mada Card, popular in Saudi Arabia maestro: description: Maestro (debit card) mastercard: description: Mastercard union_pay: description: UnionPay, popular in China unknown: description: Card type unknown visa: description: Visa last4: type: string description: Last four digits of the card used to pay. title: Card Last Four examples: - "4242" expiry_month: type: integer description: Month of the expiry date of the card used to pay. title: Card Expiry Month examples: - 12 expiry_year: type: integer description: Year of the expiry date of the card used to pay. title: Card Expiry Year examples: - 2028 cardholder_name: type: string description: The name on the card used to pay. title: Cardholder Name description: Card metadata title: Card - type: "null" description: Information about the credit or debit card used to pay. `null` unless `type` is `card`. paypal: anyOf: - type: object required: - email - reference properties: email: type: string description: Email address associated with the PayPal account. examples: - john.doe@example.com reference: anyOf: - type: string - type: "null" description: PayPal billing agreement identifier. Only populated for subscription payments where a billing agreement was created between the customer and PayPal. `null` for one-off PayPal payments. description: PayPal payment attempt metadata title: PayPal (transaction) - type: "null" description: Information about the PayPal account used to pay. `null` unless `type` is `paypal`. description: Information about the payment method used for a payment attempt. title: Method details created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" captured_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this payment was captured. `null` if `status` is not `captured`. title: Transaction payment attempt description: List of payment attempts for this transaction, including successful payments. Sorted by `created_at` in descending order, so most recent attempts are returned first. checkout: anyOf: - type: object required: - url properties: url: anyOf: - type: string - type: "null" minLength: 1 maxLength: 2048 description: Paddle Checkout URL for this transaction, composed of the URL passed in the request or your default payment URL + `?_ptxn=` and the Paddle ID for this transaction. description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. title: TransactionCheckout - type: "null" description: Paddle Checkout details for this transaction. Returned for automatically-collected transactions and where `billing_details.enable_checkout` is `true` for manually-collected transactions; `null` otherwise. created_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was created. Set automatically by Paddle. title: Created at examples: - "2024-10-12T07:20:50.52Z" updated_at: type: string format: date-time description: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle. title: Updated at examples: - "2024-10-13T07:20:50.52Z" billed_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when this transaction was marked as `billed`. `null` for transactions that aren't `billed` or `completed`. Set automatically by Paddle. revised_at: anyOf: - type: string format: date-time description: RFC 3339 datetime string. title: Timestamp examples: - "2024-10-12T07:20:50.52Z" - type: "null" description: RFC 3339 datetime string of when a transaction was revised. Revisions describe an update to customer information for a billed or completed transaction. `null` if not revised. Set automatically by Paddle. required: - id - status - customer_id - address_id - business_id - custom_data - currency_code - origin - subscription_id - invoice_id - invoice_number - collection_mode - discount_id - billing_details - billing_period - items - details - payments - checkout - created_at - updated_at - billed_at - revised_at type: object description: New or changed entity. examples: transaction.updated: summary: transaction.updated value: event_id: evt_01hv8vzzb6rhnvxtf571ddsfgs event_type: transaction.updated occurred_at: "2024-04-12T10:00:04.198351Z" notification_id: ntf_01hv8vzzejmbstvpmpa2qf7sct data: id: txn_01hv8m0mnx3sj85e7gxc6kga03 items: - price: id: pri_01gsz8x8sawmvhz1pv30nge1ke name: Monthly (per seat) type: standard status: active quantity: maximum: 999 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T13:55:22.538367Z" product_id: pro_01gsz4t5hdjse780zja8vvr7jg unit_price: amount: "3000" currency_code: USD updated_at: "2024-04-11T13:54:52.254748Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 10 proration: null - price: id: pri_01h1vjfevh5etwq3rb416a23h2 name: Monthly (recurring addon) type: standard status: active quantity: maximum: 100 minimum: 1 tax_mode: account_setting created_at: "2023-06-01T13:31:12.625056Z" product_id: pro_01h1vjes1y163xfj1rh1tkfb65 unit_price: amount: "10000" currency_code: USD updated_at: "2024-04-09T07:23:00.907834Z" custom_data: null description: Monthly trial_period: null billing_cycle: interval: month frequency: 1 unit_price_overrides: [] import_meta: null quantity: 1 proration: null - price: id: pri_01gsz98e27ak2tyhexptwc58yk name: One-time addon type: standard status: active quantity: maximum: 1 minimum: 1 tax_mode: account_setting created_at: "2023-02-23T14:01:28.391712Z" product_id: pro_01gsz97mq9pa4fkyy0wqenepkz unit_price: amount: "19900" currency_code: USD updated_at: "2024-04-09T07:23:10.921392Z" custom_data: null description: One-time addon trial_period: null billing_cycle: null unit_price_overrides: [] import_meta: null quantity: 1 proration: null origin: api status: ready details: totals: fee: null tax: "5315" total: "65215" credit: "0" balance: "65215" discount: "0" earnings: null subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD credit_to_balance: "0" line_items: - id: txnitm_01hv8wt98jahpbm1t1tzr06z6n price_id: pri_01gsz8x8sawmvhz1pv30nge1ke totals: tax: "2662" total: "32662" discount: "0" subtotal: "30000" proration: null product: id: pro_01gsz4t5hdjse780zja8vvr7jg name: AeroEdit Pro type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png created_at: "2023-02-23T12:43:46.605Z" updated_at: "2024-04-05T15:53:44.687Z" custom_data: features: sso: false route_planning: true payment_by_invoice: false aircraft_performance: true compliance_monitoring: true flight_log_management: true suggested_addons: - pro_01h1vjes1y163xfj1rh1tkfb65 - pro_01gsz97mq9pa4fkyy0wqenepkz upgrade_description: Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring. description: Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations. tax_category: standard import_meta: null quantity: 10 tax_rate: "0.08875" unit_totals: tax: "266" total: "3266" discount: "0" subtotal: "3000" - id: txnitm_01hv8wt98jahpbm1t1v1sd067y price_id: pri_01h1vjfevh5etwq3rb416a23h2 totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" proration: null product: id: pro_01h1vjes1y163xfj1rh1tkfb65 name: Analytics addon type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png created_at: "2023-06-01T13:30:50.302Z" updated_at: "2024-04-05T15:47:17.163Z" custom_data: null description: Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights. tax_category: standard import_meta: null quantity: 1 tax_rate: "0.08875" unit_totals: tax: "887" total: "10887" discount: "0" subtotal: "10000" - id: txnitm_01hv8wt98jahpbm1t1v67vqnb6 price_id: pri_01gsz98e27ak2tyhexptwc58yk totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" proration: null product: id: pro_01gsz97mq9pa4fkyy0wqenepkz name: Custom domains type: standard status: active image_url: https://paddle.s3.amazonaws.com/user/165798/XIG7UXoJQHmlIAiKcnkA_custom-domains.png created_at: "2023-02-23T14:01:02.441Z" updated_at: "2024-04-05T15:43:28.971Z" custom_data: null description: Make AeroEdit truly your own with custom domains. Custom domains reinforce your brand identity and make it easy for your team to access your account. tax_category: standard import_meta: null quantity: 1 tax_rate: "0.08875" unit_totals: tax: "1766" total: "21666" discount: "0" subtotal: "19900" payout_totals: null adjusted_payout_totals: null tax_rates_used: - totals: tax: "5315" total: "65215" discount: "0" subtotal: "59900" tax_rate: "0.08875" adjusted_totals: fee: "0" tax: "5315" total: "65215" earnings: "0" subtotal: "59900" grand_total: "65215" grand_total_tax: "5315" currency_code: USD retained_fee: "0" checkout: url: null payments: [] billed_at: null address_id: add_01hv8gq3318ktkfengj2r75gfx created_at: "2024-04-12T07:40:38.00704Z" invoice_id: inv_01hv8m0nn5nbvdejcvv9cpg8jf updated_at: "2024-04-12T10:00:03.871169408Z" revised_at: null business_id: null custom_data: null customer_id: ctm_01hv6y1jedq4p1n0yqn5ba3ky4 discount_id: dsc_01gtgztp8fpchantd5g1wrksa3 currency_code: USD billing_period: ends_at: "2025-04-11T23:59:00Z" starts_at: "2024-04-12T00:00:00Z" invoice_number: null billing_details: payment_terms: interval: day frequency: 14 enable_checkout: false purchase_order_number: PO-123 additional_information: null collection_mode: manual subscription_id: null security: - {} externalDocs: url: https://developer.paddle.com/webhooks/transactions/transaction-updated description: transaction.updated