Skip to main content

Developers

Status updates, delivered to your server.

When a payment or payout changes status, Rainbow Pay sends a POST request to your callback URL. Your system can act on the outcome without depending on the customer's browser.

What a callback contains

Each notification identifies the operation by its token and type (payment or payout) and states its status — pending, approved or declined — together with your order number, the amount and the currency. Recurring payments also carry the recurring token you use for later charges.

Where callbacks are sent

Pass a callbackUrl when you create a payment or payout. A default callback URL can also be configured for your account.

Delivery and retries

A callback counts as delivered when your server responds with HTTP 200. If it responds with an error, delivery is retried on a schedule described in the API documentation — so your handler must cope with receiving the same notification more than once.

Verifying a callback

Each callback includes a signature. Verify it as described in the API documentation before acting on the notification, and reject anything that fails verification.

A reliable callback handler

Verify first

Check the signature before you read the status or change an order.

Be idempotent

Key your processing on the token and status so a repeated callback has no further effect.

Respond quickly

Return 200 once the notification is safely recorded; do slow work afterwards.

Reconcile

If in doubt, retrieve the payment by token and trust the API's answer.

More detail: Designing reliable payment callbacks · Notifications reference ↗ (opens in a new tab)

Ready to discuss your payment setup?

Tell us how your business accepts payments today and what you need from your next payment integration.

Cookie preferences

Choose which optional cookies we may use. Strictly necessary cookies are always active because the website cannot work without them.

  • Strictly necessary

    Security, load balancing, form protection and remembering your cookie choice.

    Always active

Read the Cookie Policy