Skip to main content
POST
Create a transaction

Authorizations

Authorization
string
header
required

Tolt API key sent as a bearer token.

Body

application/json
amount
integer
required

The payment amount in the smallest unit of the program currency (cents for USD); percentage commissions are calculated from it. It must be 0 or more: to reverse a payment, refund its transaction instead of recording a negative amount.

Required range: 0 <= x <= 9007199254740991
customer_id
string
required

Id of the customer who paid (cus_...), as returned when listing customers. The transaction goes to that customer's partner and program, and the customer becomes active.

Minimum string length: 1
created_at
string<date-time>

When the payment happened, as a timestamp with a time zone, for example 2026-03-01T12:00:00Z. Reports and date filters place the transaction on this date. Defaults to now.

product_id
string

Id of the purchased product in your billing system. Commission flows can match on it.

Maximum string length: 255
product_name
string

Readable name of the purchased product, such as Pro plan. It is saved as the transaction's product name, which revenue_by_product groups revenue by; flows match on product_id, not on this name.

Maximum string length: 255
billing_type
string

Kind of payment: subscription for a recurring payment, or one_time. Commission flows can match on it.

Maximum string length: 255
charge_id
string

Id of the payment in your billing system, such as a Stripe charge id. A customer can have only one transaction per charge_id, so retrying a create with the same value returns 409 instead of booking the payment twice. An empty or whitespace-only charge_id is stored as no charge id and is not checked; any other value is stored and compared exactly as sent.

Maximum string length: 255
click_id
string

Id of the tracked click behind this payment, as returned when listing clicks. Commission flows use its link before falling back to the customer's link.

Minimum string length: 1
interval
string

Billing period of a subscription payment: month or year. Commission flows can match on it. Flows can also split a yearly payment into monthly commissions.

Maximum string length: 255
source
string

Where the transaction came from, such as stripe or api. Commissions that flows create from it copy this value.

Maximum string length: 255

Response

The created transaction

success
boolean
required
Example:

true

message
string
required
Example:

"Request successful"

data
object
required