SandboxSimulationRequest
Bank transfer processing (omit body or `{}`), VAN transfer simulation (`type` virtual + transfers), or verification directive simulation (`type` customer-verification, customer link, and errorCode). Typed bodies are mutually exclusive; use only an omitted body or `{}` for bank processing.
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/dwolla/main/json-schema/dwolla-sandbox-simulation-request-schema.json",
"title": "SandboxSimulationRequest",
"description": "Bank transfer processing (omit body or `{}`), VAN transfer simulation (`type` virtual + transfers), or\nverification directive simulation (`type` customer-verification, customer link, and errorCode). Typed bodies\nare mutually exclusive; use only an omitted body or `{}` for bank processing.\n",
"x-generated": "2026-10-12",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/dwolla-sandbox-simulations-api-openapi.yml#/components/schemas/SandboxSimulationRequest",
"oneOf": [
{
"$ref": "#/$defs/SandboxSimulationVirtualAccountTransfersRequest"
},
{
"$ref": "#/$defs/SandboxSimulationCustomerVerificationRequest"
},
{
"$ref": "#/$defs/SandboxSimulationBankProcessingRequest"
}
],
"$defs": {
"SandboxSimulationBankProcessingRequest": {
"title": "SandboxSimulationBankProcessingRequest",
"description": "Omit the request body or send an empty JSON object (`{}`). Triggers processing (or failure) for the last\n500 bank transfers on the authorized application or Sandbox account, and initiated micro-deposits.\nSuccessful response is 200 with a HAL body including total.\n",
"type": "object",
"additionalProperties": false
},
"SandboxSimulationCustomerVerificationRequest": {
"title": "SandboxSimulationCustomerVerificationRequest",
"description": "Simulate a verification directive for a business Verified Customer in Sandbox. The customer must be in\n`retry` or `document` status. After a successful call, retrieve the Customer resource; the given `errorCode`\nappears under `_embedded.errors`. See Dwolla documentation for verification directive meanings.\n",
"type": "object",
"required": [
"type",
"_links",
"errorCode"
],
"properties": {
"type": {
"type": "string",
"const": "customer-verification",
"description": "Must be set to customer-verification for verification directive simulation."
},
"_links": {
"type": "object",
"required": [
"customer"
],
"properties": {
"customer": {
"type": "object",
"required": [
"href"
],
"properties": {
"href": {
"type": "string",
"format": "uri",
"description": "URL of the Sandbox customer to attach the simulated directive to."
}
}
}
}
},
"errorCode": {
"type": "string",
"description": "Verification directive to simulate for the linked customer.",
"enum": [
"PersonalIDRequired",
"POBoxNotAllowed",
"AddressNotAssociatedWithBusiness",
"EINDocumentRequired"
]
}
}
},
"SandboxSimulationVirtualAccountTransfersRequest": {
"title": "SandboxSimulationVirtualAccountTransfersRequest",
"description": "Simulate Virtual Account Number (VAN) / external transfers in Sandbox. Up to 10 transfers per request;\ntransfers are created and processed immediately. Successful response is 202 Accepted.\n",
"type": "object",
"required": [
"type",
"transfers"
],
"properties": {
"type": {
"type": "string",
"const": "virtual",
"description": "Must be set to virtual for VAN transfer simulation."
},
"transfers": {
"type": "array",
"description": "Transfers to simulate (max 10 per request).",
"minItems": 1,
"maxItems": 10,
"items": {
"$ref": "#/$defs/SandboxSimulationVirtualTransferItem"
}
}
}
},
"SandboxSimulationVirtualTransferItem": {
"title": "SandboxSimulationVirtualTransferItem",
"description": "One simulated external (VAN) transfer in a sandbox-simulations request.",
"type": "object",
"required": [
"_link",
"amount"
],
"properties": {
"_link": {
"type": "object",
"description": "Link wrapper for the destination funding source (Dwolla HAL-style single link).",
"required": [
"destination"
],
"properties": {
"destination": {
"type": "object",
"required": [
"href"
],
"properties": {
"href": {
"type": "string",
"format": "uri"
}
}
}
}
},
"amount": {
"$ref": "#/$defs/TransferAmount"
}
}
},
"TransferAmount": {
"title": "TransferAmount",
"type": "object",
"required": [
"value",
"currency"
],
"properties": {
"value": {
"type": "string"
},
"currency": {
"type": "string"
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/dwolla-sandbox-simulation-request"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.