API Reference

Supported Operations

  • Fund (pull from customer US bank account)
  • Withdraw (push to customer US bank account)
  • Transaction status lookup
  • Failed transaction retrieval
  • NACHA validation

Endpoints

Fund

POST /api/v2/ach/fund

Debits funds from a customer's US bank account and credits your VoPay account.

Request Parameters

ParameterTypeRequiredDescription
AmountdecimalYesTransaction amount in USD
CountrystringYesMust be US
StatestringYesTwo-letter US state code
ABARoutingNumberstringConditional9-digit ABA routing number. Required if not using a token
AccountNumberstringConditionalCustomer's bank account number. Required if not using a token
TokenstringConditionalTokenized bank account. Use instead of raw banking details
PlaidProcessorTokenstringConditionalPlaid processor token. Use instead of raw banking details
MxAuthorizationCodestringConditionalMX authorization code. Use instead of raw banking details
FirstNamestringOptionalCustomer's first name
LastNamestringOptionalCustomer's last name
CompanyNamestringOptionalCustomer's company name
IsCompanybooleanOptionalSet to true if the customer is a business
IdentificationNumberstringOptionalCustomer's government-issued ID number
EmailAddressstringOptionalCustomer's email address
PhoneNumberstringOptionalCustomer's phone number
Address1stringOptionalCustomer's street address
Address2stringOptionalAddress line 2
CitystringOptionalCustomer's city
ZipCodestringOptionalCustomer's ZIP code
IPAddressstringOptionalCustomer's IP address
SameDaybooleanOptionalSet to true to request Same-Day ACH processing
SecCodestringOptionalNacha SEC code (e.g. PPD, CCD, WEB)
ClientAccountIDstringOptionalLink transaction to a sub-account
ContactIDstringOptionalLink transaction to a contact
ClientReferenceNumberstringOptionalYour internal reference number
TransactionLabelstringOptionalLabel for the transaction
TransactionTypeCodestringOptionalTransaction type code
GLCodestringOptionalGeneral ledger code
NotesstringOptionalInternal notes
IdempotencyKeystringOptionalUnique key to prevent duplicate transactions
KYCPerformedbooleanOptionalIndicates KYC was performed externally

Withdraw

POST /api/v2/ach/withdraw

Credits funds from your VoPay account to a customer's US bank account.

Request Parameters

ParameterTypeRequiredDescription
AmountdecimalYesTransaction amount in USD
CountrystringYesMust be US
StatestringYesTwo-letter US state code
ABARoutingNumberstringConditional9-digit ABA routing number. Required if not using a token
AccountNumberstringConditionalCustomer's bank account number. Required if not using a token
TokenstringConditionalTokenized bank account. Use instead of raw banking details
PlaidProcessorTokenstringConditionalPlaid processor token
MxAuthorizationCodestringConditionalMX authorization code
FirstNamestringOptionalCustomer's first name
LastNamestringOptionalCustomer's last name
CompanyNamestringOptionalCustomer's company name
IsCompanybooleanOptionalSet to true if the recipient is a business
IdentificationNumberstringOptionalCustomer's government-issued ID number
EmailAddressstringOptionalCustomer's email address
PhoneNumberstringOptionalCustomer's phone number
Address1stringOptionalCustomer's street address
Address2stringOptionalAddress line 2
CitystringOptionalCustomer's city
ZipCodestringOptionalCustomer's ZIP code
IPAddressstringOptionalCustomer's IP address
SameDaybooleanOptionalSet to true to request Same-Day ACH processing
SecCodestringOptionalNacha SEC code (e.g. PPD, CCD, WEB)
ClientAccountIDstringOptionalLink transaction to a sub-account
ContactIDstringOptionalLink transaction to a contact
ClientReferenceNumberstringOptionalYour internal reference number
TransactionLabelstringOptionalLabel for the transaction
TransactionTypeCodestringOptionalTransaction type code
GLCodestringOptionalGeneral ledger code
NotesstringOptionalInternal notes
IdempotencyKeystringOptionalUnique key to prevent duplicate transactions
ParentTransactionIDstringOptionalID of a parent transaction to link this to
KYCPerformedbooleanOptionalIndicates KYC was performed externally


Get Fund Transaction

GET /api/v2/ach/fund/transaction

Returns details of a single ACH fund transaction.

Request Parameters

ParameterTypeRequiredDescription
TransactionIDstringYesThe transaction ID returned from /ach/fund

Get Withdraw Transaction

GET /api/v2/ach/withdraw/transaction

Returns details of a single ACH withdraw transaction.

Request Parameters

ParameterTypeRequiredDescription
TransactionIDstringYesThe transaction ID returned from /ach/withdraw

Get Failed Transactions

POST /api/v2/ach/failures

Returns a list of failed ACH transactions within a date range.

Request Parameters

ParameterTypeRequiredDescription
StartDatestringYesStart of date range (YYYY-MM-DD)
EndDatestringYesEnd of date range (YYYY-MM-DD)



Validate NACHA

POST /api/v2/ach/validate-nacha

Triggers NACHA validation for an ACH transaction.

Request Parameters

ParameterTypeRequiredDescription
TransactionIDstringYesThe transaction ID to validate