Skip to main content

How to set up postbacks for partners?

Learn how to use postbacks on Tolt.

Damjan avatar
Written by Damjan
Updated this week

What are postbacks?

Postbacks let Tolt call your URL whenever certain events happen (e.g., referral or commission updates). They’re ideal for syncing data to your backend or third-party tools and for triggering automations. Delivery is asynchronous and retried on failure.

Where to enable & manage?

For Admins (app)

  • Path: Program settings → Marketing and tracking → Enable postbacks

  • What you can do: Enable/disable postbacks for the partners of your program.

For Partners (portal)

  • Path: Settings → Postbacks

  • What partners can do:

    • Create, edit or delete postbacks (You have to enter the name, endpoint URL and the event types).

    • Click on a postback to view the Postback logs and you can test the endpoint if you click on the Test URL button.

    • When clicked on a postback log, you can view the request payload and the response data for that log.

Supported event types

Referrals

  • referral.created

  • referral.updated

  • referral.deleted

Commissions

  • commission.created

  • commission.updated

  • commission.deleted

Request payload format

Every request payload for the commissions has this format:

Example:

{
"data": {
"id": "comm_1234567890",
"type": "reward",
"amount": "5000",
"status": "pending",
"payout_id": null,
"created_at": "2025-09-26T14:26:58.524Z",
"partner_id": "part_1234567890",
"program_id": "prg_1234567890",
"updated_at": "2025-09-26T14:27:04.220Z",
"customer_id": "cus_1234567890",
"approval_type": "manual"
},
"type": "commission.created",
"timestamp": "2025-09-26T14:27:08.226Z"
}

On the other hand, for referrals there is an added params object, which has the parameters of the link. Below is an example of how the request payload looks for the referrals, if the link is "https://test.com?utm_source=test"

{
"data": {
"id": "cus_1234567890",
"name": "John Doe",
"email": "[email protected]",
"status": "lead",
"created_at": "2025-10-02T13:39:47.661Z",
"identifier": "John Doe",
"partner_id": "part_1234567890",
"program_id": "prg_1234567890",
"updated_at": "2025-10-02T13:39:56.676Z"
},
"type": "referral.created",
"params": {
"utm_source": "test"
},
"timestamp": "2025-10-02T13:51:33.691Z"
}

Handling delivery failures

Automatic retries

If your webhook endpoint doesn’t respond, Tolt retries sending the message automatically after 1 minute. If it fails again, Tolt sends the message 2 more times after a delay of 5 minutes between each retry. Retries stop if you delete the postback or disable the postbacks.

Did this answer your question?