VoPay ACH Endpoints API
The ACH Endpoints API from VoPay — 10 operation(s) for ach endpoints.
The ACH Endpoints API from VoPay — 10 operation(s) for ach endpoints.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.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.curl "https://apis.io/api/v1/apis/vopay-ach-endpoints-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
version: '2.0'
title: Payment Rails ACH Endpoints API
description: The Payment Rails API allows you to manage transactions in your account. You can cancel transactions, refund transactions, and confirm flagged transactions.
contact:
name: API Support
email: help@vopay.com
servers:
- url: https://earthnode-dev.vopay.com/api/v2
tags:
- name: ACH Endpoints
paths:
/ach/fund:
post:
description: "This endpoint is used to fund your US VoPay account by debiting funds from the specified customer's bank account. In the endpoint below, either CompanyName OR FirstName and LastName must be provided.\n\n If a ClientAccountID is provided, the client account's first/last name, address, phone number, identification number and default bank account will be used for the transaction."
summary: ach/fund
tags:
- ACH Endpoints
operationId: ACHFundPost
deprecated: false
requestBody:
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
AccountID:
description: Your account ID
type: string
Key:
description: API key for the account
type: string
Signature:
description: Hashed signature for the request
type: string
ClientAccountID:
description: Client Account ID
type: string
ContactID:
description: The ID of the contact to use for this transactions. The contacts payment method associated with this transaction type will be used.
type: string
FirstName:
description: Customer's first name
type: string
LastName:
description: Customer's last name
type: string
CompanyName:
description: Company's name
type: string
IdentificationNumber:
description: For individuals, a driver's license, SSN or Passport can be provided. For companies, a federal tax ID is required.
type: string
EmailAddress:
description: Customer's email address
type: string
PhoneNumber:
description: Customer's phone number. Digits only - no parentheses or dashes allowed.
type: string
Address1:
description: Customer's address line 1
type: string
Address2:
description: Customer's address line 2
type: string
City:
description: Customer's city
type: string
State:
description: Customer's state specified using two character abbreviations (eg. CA, AZ)
type: string
Country:
description: Customer's country specified using full country name or ISO 3166-1 alpha-2 code.
type: string
ZipCode:
description: Customer's zip code.
type: string
IPAddress:
description: Customer's IP address.
type: string
ABARoutingNumber:
description: ABA routing transit number for customer's US bank account.
type: integer
AccountNumber:
description: Customer's bank account number for funds to be debited from.
type: integer
Amount:
description: The amount to debit from the customer's bank account.
type: number
Token:
description: Your iQ11 Token that has been generated using Custom Iframe. See iQ11 API Endpoints.
type: string
PlaidProcessorToken:
description: Used by clients with a Plaid account. When this is provided, the routing number and account number are not required.
type: string
Notes:
description: An optional note to associate with the transaction.
type: string
IdempotencyKey:
description: A unique key which the server can use to recognize and reject subsequent retries of the same request.
type: string
ClientReferenceNumber:
description: A reference number to use to search the transaction. Must provide either a TransactionID or ClientReferenceNumber.
type: string
GLCode:
description: An optional unique identification general ledger code.
type: string
TransactionTypeCode:
description: CPA transaction code. Use the /api/v2/account/transactions/codes endpoint to retrieve a list of valid transaction codes. If not specified, the transaction will be created using code 450 (miscellaneous).
type: string
SecCode:
description: The ACH Standard Entry Class (SEC) code. Defaults to PPD if not specified.
type: string
TransactionLabel:
description: TransactionLabel overrides originator short name
type: string
WalletID:
description: The ID of the wallet to associate with the transaction. Requires ClientAccountID to be provided.
type: string
required:
- AccountID
- Key
- Signature
- FirstName
- LastName
- CompanyName
- IdentificationNumber
- EmailAddress
- PhoneNumber
- Address1
- City
- State
- Country
- ZipCode
- ABARoutingNumber
- AccountNumber
- Amount
required: true
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
type: object
properties:
Success:
type: boolean
description: True if the request was successful, false if it failed
example: true
ErrorMessage:
type: string
description: Contains a description of the error if the request failed
example: ''
TransactionID:
type: integer
description: This ID should be saved as it is required in order to look up status information on the transaction.
example: '1122'
required:
- Success
- ErrorMessage
- TransactionID
/ach/withdraw:
post:
description: "This endpoint is used to send funds to a specified customer's US Bank account. In the endpoint below, either CompanyName OR FirstName and LastName must be provided.\n\n If a ClientAccountID is provided, the client account's first/last name, address, phone number, identification number and default bank account will be used for the transaction."
summary: ach/withdraw
tags:
- ACH Endpoints
operationId: ACHWithdrawPost
deprecated: false
requestBody:
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
AccountID:
description: Your account ID
type: string
Key:
description: API key for the account
type: string
Signature:
description: Hashed signature for the request
type: string
ClientAccountID:
description: Client Account ID
type: string
ContactID:
description: The ID of the contact to use for this transactions. The contacts payment method associated with this transaction type will be used.
type: string
FirstName:
description: Customer's first name
type: string
LastName:
description: Customer's last name
type: string
CompanyName:
description: Company's name
type: string
IdentificationNumber:
description: Customer's driver's licence (individuals) or federal tax ID (companies).
type: string
EmailAddress:
description: Customer's email address
type: string
PhoneNumber:
description: Customer's phone number. Digits only - no parentheses or dashes allowed.
type: string
Address1:
description: Customer's address line 1
type: string
Address2:
description: Customer's address line 2
type: string
City:
description: Customer's city
type: string
State:
description: Customer's state specified using two character abbreviations (eg. CA, AZ)
type: string
Country:
description: Customer's country specified using full country name or ISO 3166-1 alpha-2 code.
type: string
ZipCode:
description: Customer's zip code.
type: string
IPAddress:
description: Customer's IP address.
type: string
ABARoutingNumber:
description: ABA routing transit number for customer's US bank account.
type: integer
AccountNumber:
description: Account number for the customer's US bank account
type: integer
Amount:
description: The amount to credit to the customer's bank account.
type: number
Token:
description: Your iQ11 Token that has been generated using Custom Iframe. See iQ11 API Endpoints.
type: string
PlaidProcessorToken:
description: Used by clients with a Plaid account. When this is provided, the routing number and account number are not required.
type: string
Notes:
description: An optional note to associate with the transaction.
type: string
IdempotencyKey:
description: A unique key which the server can use to recognize and reject subsequent retries of the same request.
type: string
ClientReferenceNumber:
description: A reference number to use to search the transaction. Must provide either a TransactionID or ClientReferenceNumber.
type: string
ParentTransactionID:
description: The parent transaction where the withdrawal will be linked to, can become a split payment with multiple withdrawals. When funds of the parent transaction have been released the system will generate the distributions of these funds automatically.
type: string
GLCode:
description: An optional unique identification general ledger code.
type: string
TransactionTypeCode:
description: CPA transaction code. Use the /api/v2/account/transactions/codes endpoint to retrieve a list of valid transaction codes. If not specified, the transaction will be created using code 450 (miscellaneous).
type: string
SecCode:
description: The ACH Standard Entry Class (SEC) code. Defaults to PPD if not specified.
type: string
TransactionLabel:
description: TransactionLabel overrides originator short name
type: string
required:
- AccountID
- Key
- Signature
- FirstName
- LastName
- CompanyName
- IdentificationNumber
- EmailAddress
- PhoneNumber
- Address1
- City
- State
- Country
- ZipCode
- ABARoutingNumber
- AccountNumber
- Amount
required: true
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
type: object
properties:
Success:
type: boolean
description: True if the request was successful, false if it failed
example: true
ErrorMessage:
type: string
description: Contains a description of the error if the request failed
example: ''
TransactionID:
type: integer
description: This ID should be saved as it is required in order to look up status information on the transaction.
example: '1122'
required:
- Success
- ErrorMessage
- TransactionID
/ach/fund/schedule:
post:
description: "This endpoint is used to create a scheduled transaction ahead of time that can be a single or recurring payment. \n\nEither CompanyName OR FirstName and LastName must be provided. \n\n If the Token is provided, the ABARoutingNumber, and AccountNumber will not be required. \n\n If the bank information is provided (ABARoutingNumber, and AccountNumber), then the Address1, City, Country, and PostalCode and Province are required.\n\n If a ClientAccountID is provided, the client account's first/last name, address, and default bank account will be used for the transaction.\n\nFor additional details of the scheduled transactions, please visit https://docs.vopay.com/docs/schedule-a-payment."
summary: ach/fund/schedule
tags:
- ACH Endpoints
operationId: ACHFundSchedulePOST
deprecated: false
requestBody:
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
AccountID:
description: Your account ID
type: string
Key:
description: API key for the account
type: string
Signature:
description: Hashed signature for the request
type: string
ClientAccountID:
description: Client Account ID
type: string
Amount:
description: The amount to schedule in the transactions
type: number
Frequency:
description: 'The frequency of the scheduled transaction: single or recurring.'
type: string
NameOfFrequency:
description: 'Name of frequency of the scheduled transaction (Only for recurring option), the posibles values are: weekly, biweekly, semi-monthly, monthly, bimonthly, 3 months, 6 months, yearly.'
type: string
ScheduleStartDate:
description: Date from which the schedule will be started
type: string
ScheduleEndDate:
description: Date when the transaction processing will end (Only for recurring option), Either provide ScheduleEndDate or EndingAfterPayments
type: string
EndingAfterPayments:
description: Number of payments after which the transaction processing will end (Only for recurring option), Either provide ScheduleEndDate or EndingAfterPayments
type: integer
SemiMonthlyFrequencyType:
description: 'Type of semi-monthly frequency. This field is only required when NameOfFrequency is set to semi-monthly. The possible values are: SemiMonthFirstAndFifteenth, SemiMonthFifteenthAndLast'
type: integer
Description:
description: Description of the schedule transaction
type: string
Notes:
description: An optional note to associate with the transaction.
type: string
FirstName:
description: Customer's first name
type: string
LastName:
description: Customer's last name
type: string
CompanyName:
description: Company's name
type: string
IdentificationNumber:
description: Customer's driver's licence (individuals) or federal tax ID (companies).
type: string
EmailAddress:
description: Customer's email address
type: string
PhoneNumber:
description: Customer's phone number. Digits only - no parentheses or dashes allowed.
type: string
Address1:
description: Customer's address line 1
type: string
Address2:
description: Customer's address line 2
type: string
City:
description: Customer's city
type: string
State:
description: Customer's state specified using two character abbreviations (eg. CA, AZ)
type: string
Country:
description: Customer's country specified using full country name or ISO 3166-1 alpha-2 code.
type: string
ZipCode:
description: Customer's zip code.
type: string
IPAddress:
description: Customer's IP address.
type: string
ABARoutingNumber:
description: ABA routing transit number for customer's US bank account.
type: integer
AccountNumber:
description: Customer's bank account number for funds to be debited from.
type: string
Token:
description: Your iQ11 Token that has been generated using Custom Iframe. See iQ11 API Endpoints.
type: string
IdempotencyKey:
description: 'A unique key which the server can use to recognize and reject subsequent retries of the same request. '
type: string
required:
- AccountID
- Key
- Signature
- Amount
- Frequency
- NameOfFrequency
- ScheduleStartDate
- ScheduleEndDate
- EndingAfterPayments
- Description
- FirstName
- LastName
- CompanyName
- IdentificationNumber
- EmailAddress
- PhoneNumber
- Address1
- City
- State
- Country
- ZipCode
- ABARoutingNumber
- AccountNumber
required: true
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
type: object
properties:
Success:
type: boolean
description: True if the request was successful, false if it failed
example: true
ErrorMessage:
type: string
description: Contains a description of the error if the request failed
example: ''
Amount:
type: number
description: The dollar amount of the schedule transaction
example: '200.00'
ScheduledTransactionID:
type: integer
description: ID of the schedule Transaction.
example: '1122'
Frequency:
type: string
description: The frequency of the transaction
example: single
Description:
type: string
description: Description of the schedule transaction
example: ''
ScheduleStartDate:
type: string
format: date
description: 'Date from which the transaction will be started '
example: '2020-01-01'
Status:
type: string
description: 'A message indicating the current transaction status. Statuses are: cancelled, completed or in progress'
example: in progress
required:
- Success
- ErrorMessage
- Amount
- ScheduledTransactionID
- Frequency
- Description
- ScheduleStartDate
- Status
/ach/withdraw/schedule:
post:
description: "This endpoint is used to create a scheduled transaction ahead of time that can be a single or recurring payment. \n\nEither CompanyName OR FirstName and LastName must be provided. \n\n If the Token is provided, the ABARoutingNumber, and AccountNumber will not be required. \n\n If the bank information is provided (ABARoutingNumber, and AccountNumber), then the Address1, City, Country, and PostalCode and Province are required.\n\n If a ClientAccountID is provided, the client account's first/last name, address, and default bank account will be used for the transaction.\n\nFor additional details of the scheduled transactions, please visit https://docs.vopay.com/docs/schedule-a-payment."
summary: ach/withdraw/schedule
tags:
- ACH Endpoints
operationId: ACHWithdrawSchedulePOST
deprecated: false
requestBody:
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
AccountID:
description: Your account ID
type: string
Key:
description: API key for the account
type: string
Signature:
description: Hashed signature for the request
type: string
ClientAccountID:
description: Client Account ID
type: string
Amount:
description: The amount to schedule in the transactions
type: number
Frequency:
description: 'The frequency of the scheduled transaction: single or recurring.'
type: string
NameOfFrequency:
description: 'Name of frequency of the scheduled transaction (Only for recurring option), the posibles values are: weekly, biweekly, semi-monthly, monthly, bimonthly, 3 months, 6 months, yearly.'
type: string
ScheduleStartDate:
description: Date from which the schedule will be started
type: string
ScheduleEndDate:
description: Date when the transaction processing will end (Only for recurring option), Either provide ScheduleEndDate or EndingAfterPayments
type: string
EndingAfterPayments:
description: Number of payments after which the transaction processing will end (Only for recurring option), Either provide ScheduleEndDate or EndingAfterPayments
type: integer
SemiMonthlyFrequencyType:
description: 'Type of semi-monthly frequency. This field is only required when NameOfFrequency is set to semi-monthly. The possible values are: SemiMonthFirstAndFifteenth, SemiMonthFifteenthAndLast'
type: integer
Description:
description: Description of the schedule transaction
type: string
Notes:
description: An optional note to associate with the transaction.
type: string
FirstName:
description: Customer's first name
type: string
LastName:
description: Customer's last name
type: string
CompanyName:
description: Company's name
type: string
IdentificationNumber:
description: Customer's driver's licence (individuals) or federal tax ID (companies).
type: string
EmailAddress:
description: Customer's email address
type: string
PhoneNumber:
description: Customer's phone number. Digits only - no parentheses or dashes allowed.
type: string
Address1:
description: Customer's address line 1
type: string
Address2:
description: Customer's address line 2
type: string
City:
description: Customer's city
type: string
State:
description: Customer's state specified using two character abbreviations (eg. CA, AZ)
type: string
Country:
description: Customer's country specified using full country name or ISO 3166-1 alpha-2 code.
type: string
ZipCode:
description: Customer's zip code.
type: string
IPAddress:
description: Customer's IP address.
type: string
ABARoutingNumber:
description: ABA routing transit number for customer's US bank account.
type: integer
AccountNumber:
description: Customer's bank account number for funds to be debited from.
type: string
Token:
description: Your iQ11 Token that has been generated using Custom Iframe. See iQ11 API Endpoints.
type: string
IdempotencyKey:
description: A unique key which the server can use to recognize and reject subsequent retries of the same request.
type: string
required:
- AccountID
- Key
- Signature
- Amount
- Frequency
- NameOfFrequency
- ScheduleStartDate
- ScheduleEndDate
- EndingAfterPayments
- Description
- FirstName
- LastName
- CompanyName
- IdentificationNumber
- EmailAddress
- PhoneNumber
- Address1
- City
- State
- Country
- ZipCode
- ABARoutingNumber
- AccountNumber
required: true
responses:
'200':
description: ''
headers: {}
content:
application/json:
schema:
type: object
properties:
Success:
type: boolean
description: True if the request was successful, false if it failed
example: true
ErrorMessage:
type: string
description: Contains a description of the error if the request failed
example: ''
Amount:
type: number
description: The dollar amount of the schedule transaction
example: '200.00'
ScheduledTransactionID:
type: integer
description: ID of the schedule Transaction.
example: '1122'
Frequency:
type: string
description: The frequency of the transaction
example: single
Description:
type: string
description: Description of the schedule transaction
example: ''
ScheduleStartDate:
type: string
format: date
description: 'Date from which the transaction will be started '
example: '2020-01-01'
Status:
type: string
description: 'A message indicating the current transaction status. Statuses are: cancelled, completed or in progress'
example: in progress
required:
- Success
- ErrorMessage
- Amount
- ScheduledTransactionID
- Frequency
- Description
- ScheduleStartDate
- Status
/ach/void:
post:
description: This method is used to void a previously created ACH transaction. Note, you can only void a transaction if it has not yet settled. If the transaction has already settled, then you can use the /ach/refund endpoint to reverse the transaction.
summary: ach/void
tags:
- ACH Endpoints
operationId: ACHVoidPost
deprecated: false
requestBody:
$ref: '#/components/requestBodies/CreditCardVoidPost'
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties:
Success:
type: boolean
description: True if the request was successful, false if it failed
example: true
ErrorMessage:
type: string
description: Contains a description of the error if the request failed
example: ''
TransactionID:
type: integer
description: The unique ID for the void transaction
example: '1124'
TransactionStatus:
type: string
description: A message indicating the current transaction status - cancelled
example: cancelled
Timestamp:
type: string
description: The timestamp when the transaction status was last modified
example: '2022-02-04 12:34:56'
required:
- Success
- ErrorMessage
- TransactionID
- TransactionStatus
- Timestamp
/ach/fund/transaction:
get:
description: This endpoint is used to look up and return the full details on a single ACH fund transaction.
summary: ach/fund/transaction
tags:
- ACH Endpoints
operationId: AchFundTransactionGet
deprecated: false
parameters:
- name: AccountID
in: query
required: true
description: Your account ID
sch
# --- truncated at 32 KB (70 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vopay/refs/heads/main/openapi/vopay-ach-endpoints-api-openapi.yml