# ACH verification Successful account verification outcome. Endpoint: POST /achVerifications Version: 6 Security: BasicAuth ## Header parameters: - `Accept` (string, required) Example: "application/vnd.worldpay.achVerifications-v6+json" - `Content-Type` (string, required) Example: "application/vnd.worldpay.achVerifications-v6+json" ## Request fields (application/vnd.worldpay.achVerifications-v6+json): - `merchant` (object, required) - `merchant.entity` (string, required) Used to route the verification request in Access Worldpay, created as part of on-boarding. - `paymentInstrument` (object, required) - `paymentInstrument.type` (string, required) The type of payment instrument, must be "bankAccountUS" for ACH. - `paymentInstrument.accountType` (string, required) Possible values: checking, savings, corporate, corporateSavings. Enum: "checking", "savings", "corporate", "corporateSavings" - `paymentInstrument.accountNumber` (string, required) Account number of direct debit account. - `paymentInstrument.routingNumber` (string, required) Routing number of direct debit account. - `paymentInstrument.companyName` (string) Company name if a corporate account. - `paymentInstrument.billToAddress` (object, required) - `paymentInstrument.billToAddress.firstName` (string, required) given name Example: "Alice" - `paymentInstrument.billToAddress.lastName` (string, required) surname Example: "Holmes" - `paymentInstrument.billToAddress.address1` (string, required) An identifier for the address1 being used. If included you must send at least: [address1, city, countyCode, postalCode]. - `paymentInstrument.billToAddress.address2` (string) An identifier for the address2 being used. - `paymentInstrument.billToAddress.address3` (string) An identifier for the address3 being used. - `paymentInstrument.billToAddress.city` (string, required) An identifier for the city being used. - `paymentInstrument.billToAddress.region` (string, required) An identifier for the region being used. - `paymentInstrument.billToAddress.postalCode` (string, required) Recipient's postal code. Example: "NW1 6XE" - `paymentInstrument.billToAddress.countryCode` (string, required) The alpha-2 ISO-3166 country code of the address. Example: "GB" - `paymentInstrument.billToAddress.telephoneNumber` (string, required) An identifier for the telephoneNumber being used. - `transactionReference` (string, required) ## Response 201 fields (application/vnd.worldpay.achVerifications-v6+json): - `outcome` (string, required) This field indicates the status of the transaction. Enum: "verified", "not verified" - `description` (string) - `checkedAt` (string, required) Example: "2024-03-26T19:38:29.543195Z" ## Response 400 fields (application/json): - `errorName` (string, required) A machine and human readable error type for clarity and semantic understanding of the error. Enum: "internalErrorOccurred", "headerIsMissing", "headerHasInvalidValue", "bodyIsEmpty", "bodyIsNotJson", "bodyDoesNotMatchSchema" - `message` (string, required) A human readable message giving a corrective action for the error. This is not for machine consumption Example: "A JSON body matching the expected schema must be provided." - `validationErrors` (array) If there were field validation errors, they will be collected in this array - `validationErrors.jsonPath` (string) This field represents the JSON path of the element within the request body associated with the error. Example: "$.transactionRef" - `headerName` (string) If the header is missing or does not contain an expected value, this field will be populated with the incorrect header name. Example: "Content-Type" ## Response 401 fields (application/json): - `errorName` (string, required) A machine and human readable error type for clarity and semantic understanding of the error. Example: "accessDenied" - `message` (string, required) A human readable message giving a corrective action for the error. This is not for machine consumption Example: "Access to the requested resource has been denied" ## Response 404 fields (application/vnd.worldpay.cardVerifications-v6+json): - `errorName` (string, required) A machine and human readable error type for clarity and semantic understanding of the error. Enum: "resourceNotFound" - `message` (string, required) A human readable message giving a corrective action for the error. This is not for machine consumption Example: "Unable to verify the historic outcome from the data provided" ## Response 415 fields (application/json): - `errorName` (string, required) A machine and human readable error type for clarity and semantic understanding of the error. Example: "headerHasInvalidValue" - `message` (string, required) A human readable message giving a corrective action for the error. This is not for machine consumption Example: "A valid header must be provided." - `headerName` (string) If the header is missing or does not contain an expected value, this field will be populated with the incorrect header name. Example: "Content-Type" ## Response 500 fields (application/json): - `errorName` (string, required) A machine and human readable error type for clarity and semantic understanding of the error. Enum: "internalServerError" - `message` (string, required) A human readable message giving a corrective action for the error. This is not for machine consumption Example: "An internal server error occurred"