Last updated: 11 September 2025 | Change log
ACH verification gives you the ability to perform a verification against a US bank account.
POST  https://try.access.worldpay.com/achVerifications
ACH verification requests with mandatory fields only:
{
  "merchant": {
    "entity": "default"
  },
  "transactionReference": "1234567",
  "paymentInstrument": {
    "type": "bankAccountUS",
    "accountType": "checking",
    "accountNumber": "1234567890",
    "routingNumber": "011400495",
    "billToAddress": {
      "firstName": "John",
      "lastName": "Smith",
      "address1": "address1",
      "city": "city",
      "region": "state",
      "postalCode": "postalCode",
      "countryCode": "US",
      "telephoneNumber": "4085551212"
    }
  }
}| Parameter | Required? | Description | 
|---|---|---|
merchant.entity | ✅ | Direct your verification to assist with billing, reporting and reconciliation. For more information contact your Relationship Manager. For full object descriptions see our API reference. | 
transactionReference | ✅ | A unique reference generated by you that is used to identify a payment throughout its lifecycle. For full object descriptions see our API reference. | 
paymentInstrument | ✅ | An object that contains your customer's payment details. For full object descriptions see our API reference. | 
paymentInstrument.type | ✅ | An object that contains your customer's payment type. The only allowed value is: 
  | 
paymentInstrument.accountType | ✅ | An object that contains your customer's payment account type. For Personal Account possible values:
 
  | 
paymentInstrument.accountNumber | ✅ | An object that contains your customer's bank account number. | 
paymentInstrument.routingNumber | ✅ | An object that contains your customer's bank routing number. | 
paymentInstrument.companyName | ✅ | An object that contains your customer's company name. This is a mandatory field for Corporate Account and must not be supplied for Personal Account. | 
paymentInstrument.billToAddress | ✅ | An object containing the bill to address information. Mandatory fields include: 
  | 
billToAddress.firstName | ✅ | An object that contains your customer's first name. This is a mandatory field for Personal Account. | 
billToAddress.lastName | ✅ | An object that contains your customer's last name. This is a mandatory field for Personal Account. | 
Optional fields and descriptions
ACH verification requests with optional and mandatory fields:
{
  "merchant": {
    "entity": "default"
  },
  "transactionReference": "1234567",
  "paymentInstrument": {
    "type": "bankAccountUS",
    "accountType": "checking",
    "accountNumber": "1234567890",
    "routingNumber": "011400495",
    "billToAddress": {
      "firstName": "John",
      "lastName": "Smith",
      "address1": "address1",
      "address2": "address2",
      "address3": "address3",
      "city": "city",
      "region": "state",
      "postalCode": "postalCode",
      "countryCode": "US",
      "telephoneNumber": "4085551212"
    }
  }
}Descriptions of your optional ACH verification request parameters:
| Parameter | Required? | Description | 
|---|---|---|
paymentInstrument.billToAddress | ❌ | An object containing the bill to address information. Optional fields includes: 
  | 
billToAddress.firstName | ❌ | An object that contains your customer's first name. This is an optional field for Corporate Account. | 
billToAddress.lastName | ❌ | An object that contains your customer's last name. This is an optional field for Corporate Account. | 
In your response is a 201 HTTP response code and the historic outcome of the verification.
outcome:
verifiednot verified
{
   "outcome":"verified",
   "checkedAt":"2021-09-27T18:02:16.475Z",
   "_links":{
      "cardVerifications: verification":{
         "href":"https://try.access.worldpay.com/cardVerifications/{resource}"
      }
   }
}