Simulation endpoints are available in development environments only β production returns
404 Not Found.Endpoint
The card must be active and belong to your tenant. Cards in
locked, canceled, or unactivated status cannot be used for simulation.Headers
Body
Any field not listed here returns
400.
Example request
Response
A successful response returns the transaction ID and status.200 OK β Approved
200 OK β Declined
The transaction triggers the same webhooks as a real authorization:
transaction.requestedβ Sent when the authorization request arrives.transaction.createdβ Sent when the authorization is approved.
Decline reasons
Use thedeclineReason field to simulate declined authorizations:
Example declined authorization
Cross-currency transactions
When thecurrency differs from USD (the billing currency), the system applies FX conversion:
- The merchant amount is converted to USD using current market rates.
- A Visa foreign exchange fee (1%) is applied.
- A Rain foreign exchange fee is applied (default 2%, or your tenant-specific rate if foreign currency fees are enabled for your tenant).
billingAmount in the transaction record reflects the total USD amount after all conversions and fees.
Errors
Behavior notes
- No real funds move. Simulations are fully mocked β the processor interaction is simulated internally.
- The transaction record is real. The simulation creates a real transaction record, queryable via the transactions API, that fires the same webhooks as a real authorization.
- Network is always VISA. Simulated authorizations use the VISA network regardless of the actual card network.