VRPlatformVRPlatform
ContactsPayments

/contacts/{id}/payment-methods/ach

Send owner ACH details to the single eligible Ramp push-vendor flow for verification. The server resolves the connection; clients do not select one. First use activates a flow that has never been configured, while an explicitly inactive flow remains unavailable. Raw routing and account numbers are write-only and are never stored by VRPlatform. The contact becomes ready only after Ramp confirms the account.

Required scope: contacts:write

POST
/contacts/{id}/payment-methods/ach
X-API-Key<token>

API key provided in dashboard

In: header

Path Parameters

id*string
Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid

Query Parameters

dryRun?boolean

Validate this request through the real write path, then roll back all changes. See https://docs.vrplatform.app/api/dry-run-mode.

Request Body

application/json

provider*string
legalName*string
Length1 <= length
routingNumber*string
Match^\d{9}$
accountNumber*string
Match^\d{4,17}$

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://staging.api.vrplatform.app/contacts/497f6eca-6276-4993-bfeb-53cbbbba6f08/payment-methods/ach" \  -H "Content-Type: application/json" \  -d '{    "provider": "ramp",    "legalName": "string",    "routingNumber": "string",    "accountNumber": "string"  }'
{
  "contactId": "b5ec5d98-4bee-4da1-ad24-dde86346cb1d",
  "provider": "ramp",
  "connectionId": "84b500d7-71c8-4b1f-adf4-f1eb0000973d",
  "last4": "stri",
  "status": "pending",
  "syncId": "24d9ea7f-fdab-4f53-95fd-4deda2362964"
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "string",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}