validateOnly: true to validate a transfer without initiating or persisting it. This is useful for verifying that a target can receive funds before committing to execution.
When to use validation
Transfer validation is particularly useful when you need to:- Verify recipient addresses before performing foreign exchange (FX) conversions
- Pre-validate email recipients to ensure users exist before showing transfer confirmation
- Check onchain addresses are valid for the specified network before committing funds
How it works
When you setvalidateOnly: true:
- The transfer is validated but not persisted
- The transfer will not appear in list transfer responses
- A
2xxresponse indicates valid transfer parameters - A
4xxresponse indicates validation failure with anerrorType
validateOnly and execute are mutually exclusive. Setting both to true returns a 400 error.Example request
Validation response
When validation succeeds, the response includes validated transfer details without persistence fields:When
validateOnly is true, the response does not include transferId, status, createdAt, or updatedAt.Validation errors
| Error Type | Description |
|---|---|
invalid_request | The request format is invalid or missing required fields, including invalid recipient addresses or unsupported networks |
not_found | The specified target user or account was not found |
Sandbox testing
When testing email transfers in sandbox, only specific whitelisted emails will validate successfully. See Test data for transfers for valid test emails.