Skip to main content
When Jane gets her $49.00 back, Sam should not keep the commission. Tolt reverses it for you, and how depends on whether it was already paid.
txn_6Bv2Mq… refunded Tolt
Not paid out yet
commissioncomm_7XqLm2Kw…
typesale
amount0
statusrefunded
Already paid out
commissioncomm_9LpR4tWz…
typerefund
amount-1470
statusapproved

The negative commission nets against Sam’s next payout.

Paid commissions are never edited, so your payout history stays accurate. The clawback shows up as its own line.

Refunds from billing integrations

If Stripe, Paddle or Chargebee is connected, you do nothing. Tolt receives the refund from your billing provider and reverses the commission automatically.
Don’t also call the refund endpoint for payments a billing integration already tracks. You only need the API for transactions you created with POST /v2/transactions.

Refund through the API

Refund the Tolt transaction by its txn_ id. The whole transaction is refunded and every commission on it is reversed.
Refunding the same transaction twice returns 409 transaction_refunded.
If you stored your own charge id when you created the transaction, search for it:
Or save the txn_ id from the POST /v2/transactions response next to the charge in your database, so refunds need no lookup.

React to refunds

A refund fires transaction.updated with status: "refunded". Use it to update your own records or notify the partner.
See Sync your data for a complete, verified webhook handler.
Set a delayed approval (for example 30 days) on your flows to match your refund window. Most refunds then land before anything is paid, and no clawback is needed. See Approve commissions.