Creates a new transaction.
Transactions are typically created with the status of draft or ready initially:
items against them, but don’t have all of the required fields for billing. Paddle creates draft transactions automatically when a checkout is opened.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:
billed. Payment is often by wire transfer.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.
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 permission schema or documentation.
Get an API key and select the permissions you need from the Paddle dashboard under Paddle > Developer Tools > Authentication.
Include related entities in the response. Use a comma-separated list to specify multiple entities.
address, adjustments, adjustments_totals, available_payment_methods, business, customer, discount Represents a transaction entity when creating transactions.
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.
1 - 100 elementsAdd 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.
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.
draft, ready, billed, paid, completed, canceled, past_due Paddle ID of the customer that this transaction is for, prefixed with ctm_. If omitted, transaction status is draft.
"ctm_01grnn4zta5a1mf02jjze7y2ys"
Paddle ID of the address that this transaction is for, prefixed with add_. Requires customer_id. If omitted, transaction status is draft.
"add_01gm302t81w94gyjpjpqypkzkf"
Paddle ID of the business that this transaction is for, prefixed with biz_. Requires customer_id.
"biz_01grrebrzaee2qj2fqqhmcyzaj"
Your own structured key-value data.
{ "customer_reference_id": "abcd1234" }Supported three-letter ISO 4217 currency code. Must be USD, EUR, or GBP if collection_mode is manual.
USD, EUR, GBP, JPY, AUD, CAD, CHF, HKD, SGD, SEK, ARS, BRL, CNY, COP, CZK, DKK, HUF, ILS, INR, KRW, MXN, NOK, NZD, PLN, RUB, THB, TRY, TWD, UAH, VND, ZAR 3How payment is collected for this transaction. automatic for checkout, manual for invoices. If omitted, defaults to automatic.
automatic, manual Paddle ID of the discount applied to this transaction, prefixed with dsc_.
"dsc_01gv5kpg05xp104ek2fmgjwttf"
Details for invoicing. Required if collection_mode is manual.
Time period that this transaction is for. Set automatically by Paddle for subscription renewals to describe the period that charges are for.
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.