Whish Money Whish MoneyDevelopers
Guides

Going live

A short, practical checklist for the move from Sandbox to Production, with callbacks and IP allowlisting in place.

Do not skip
  • Test failure paths, not just success
  • Reconcile before retrying
  • Allowlist IPs both ways
  • Run a real transaction first

Going-live checklist

Work through these before switching an integration to Production. They map to the behaviour every Whish Money API shares.

1

Validate every flow in Sandbox

Exercise each endpoint, including the failure and challenge paths (for example the Bills OTP step), not just the happy path.

2

Handle pending and timeouts

Treat a timeout or code: 500 as unknown, not failed. Reconcile before you retry, refund, or cancel.

3

Make retries idempotent

Store your externalId or Request-id before sending, and after a timeout resend with that same value rather than a fresh one. On the Whish APIs the repeat returns the original result with retrieved: true; on International Money Transfer it returns transfer.already.done, and you then read the outcome via Get transfer status. A fresh id on retry is what creates duplicates.

4

Wire up callbacks

Where an API sends callbacks, confirm you receive them, respond HTTP 200, and confirm the outcome with the status endpoint before fulfilling.

5

Allowlist IPs both ways

Allowlist Whish callback source IPs on your side, and give Whish your server egress IPs for endpoints that require inbound allowlisting (Whish Pay refund, Direct Credit send).

6

Re-check reference data on Production

What your account is allowed to use is set per environment, so confirm it rather than reusing Sandbox values. For International Money Transfer, call List sending countries against Production and use the fromCountry ids it returns.

7

Switch to Production

Swap the base URL, load your Production credentials, and run a small real transaction end to end before full rollout.

IP allowlisting, in both directions

Two separate things are often confused. Set up whichever your integration uses.

DirectionWhat it meansWho acts
You → WhishSome endpoints (Whish Pay refund, Direct Credit send) only accept requests from registered source IPs.You send Whish your server egress IPs to allowlist.
Whish → youWhish calls your callback URL from a fixed set of source IPs.You allowlist Whish's callback IPs on your callback endpoint.

The current callback source IPs (per environment, for both platforms) are listed in the Reliability & Idempotency guide.

Keep reconciling

After go-live, keep confirming outcomes from a callback or the status endpoint rather than assumptions, and use each API's activity or statement endpoints where available to reconcile your ledger against Whish. If you hit a pending (code: 500) you cannot resolve, contact your Whish Money representative.