Worldpay AchVerifications API

The AchVerifications API from Worldpay — 1 operation(s) for achverifications.

Operations 1

POST /achVerifications ACH verification #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/worldpay-achverifications-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

worldpay-achverifications-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Card Verifications Ach Verifications API
  description: Determine the validity of your customer's card to maximize authorization rates.
  version: '6'
  x-metadata:
    category:
    - Verifications
    business:
    - Enterprise
    catalog-list: true
    generated: false
servers:
- url: https://try.access.worldpay.com
  description: Test (Try)
- url: https://access.worldpay.com
  description: Live
security:
- BasicAuth: []
tags:
- name: AchVerifications
paths:
  /achVerifications:
    post:
      summary: ACH verification
      description: Successful account verification outcome.
      operationId: ACH
      parameters:
      - $ref: '#/components/parameters/achAcceptHeader'
      - $ref: '#/components/parameters/achContentTypeHeader'
      requestBody:
        content:
          application/vnd.worldpay.achVerifications-v6+json:
            schema:
              $ref: '#/components/schemas/verifications_ach'
            examples:
              Successful account verification outcome.:
                value:
                  merchant:
                    entity: default
                  transactionReference: '1234567'
                  paymentInstrument:
                    type: bankAccountUS
                    accountType: corporateSavings
                    accountNumber: '1234567890'
                    routingNumber: 011400495
                    companyName: companyName
                    billToAddress:
                      firstName: John
                      lastName: Smith
                      address1: address1
                      address2: address2
                      address3: address3
                      city: city
                      region: state
                      postalCode: postalCode
                      countryCode: US
                      telephoneNumber: '4085551212'
              Refused account verification outcome.:
                value:
                  merchant:
                    entity: default
                  transactionReference: '1234567'
                  paymentInstrument:
                    type: bankAccountUS
                    accountType: corporateSavings
                    accountNumber: '12345678901234567890'
                    routingNumber: 011400495
                    companyName: companyName
                    billToAddress:
                      firstName: John
                      lastName: Smith
                      address1: address1
                      address2: address2
                      address3: address3
                      city: city
                      region: state
                      postalCode: postalCode
                      countryCode: US
                      telephoneNumber: '4085551212'
      responses:
        '201':
          description: The account verification has been successful.
          content:
            application/vnd.worldpay.achVerifications-v6+json:
              schema:
                $ref: '#/components/schemas/verifications_ach_201_response'
              examples:
                Successful account verification outcome.:
                  value:
                    outcome: verified
                    checkedAt: '2021-09-27T18:02:16.475Z'
                Refused account verification outcome.:
                  value:
                    outcome: not verified
                    description: Invalid account number
                    checkedAt: '2021-09-27T18:02:16.475Z'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '404':
          $ref: '#/components/responses/404'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
      tags:
      - AchVerifications
components:
  parameters:
    achAcceptHeader:
      name: Accept
      in: header
      required: true
      schema:
        type: string
        example: application/vnd.worldpay.achVerifications-v6+json
    achContentTypeHeader:
      name: Content-Type
      in: header
      required: true
      schema:
        type: string
        example: application/vnd.worldpay.achVerifications-v6+json
  schemas:
    validationError:
      type: object
      required:
      - errorName
      - message
      properties:
        errorName:
          type: string
          description: A machine and human readable error type for clarity and semantic understanding of the error.
          enum:
          - fieldIsMissing
          - fieldMustBeString
          - fieldMustBeNumber
          - fieldMustBeInteger
          - fieldMustBeBoolean
          - fieldMustBeObject
          - fieldMustBeArray
          - fieldIsNull
          - fieldIsEmpty
          - fieldHasInvalidValue
          - fieldIsNotAllowed
          - numberIsTooSmall
          - integerIsTooLarge
          - stringIsTooShort
          - stringIsTooLong
          - stringFailedRegexCheck
          - panFailedLuhnCheck
          - dateHasInvalidFormat
          example: fieldIsNotAllowed
        message:
          type: string
          description: A human readable message giving a corrective action for the error.  *This is not for machine consumption*
          example: Field at path is not allowed.
        jsonPath:
          type: string
          description: This field represents the JSON path of the element within the request body associated with the error.
          example: $.transactionRef
    lastName:
      type: string
      description: surname
      maxLength: 85
      minLength: 1
      example: Holmes
    verifications_ach:
      required:
      - merchant
      - paymentInstrument
      - transactionReference
      type: object
      properties:
        merchant:
          required:
          - entity
          type: object
          properties:
            entity:
              type: string
              description: Used to route the verification request in Access Worldpay, created as part of on-boarding.
        paymentInstrument:
          $ref: '#/components/schemas/bankAccountUS'
        transactionReference:
          type: string
    bankAccountUS:
      required:
      - type
      - accountType
      - accountNumber
      - routingNumber
      - billToAddress
      type: object
      properties:
        type:
          type: string
          description: The type of payment instrument, must be "bankAccountUS" for ACH.
        accountType:
          type: string
          enum:
          - checking
          - savings
          - corporate
          - corporateSavings
          description: 'Possible values: checking, savings, corporate, corporateSavings.'
        accountNumber:
          type: string
          description: Account number of direct debit account.
        routingNumber:
          type: string
          description: Routing number of direct debit account.
        companyName:
          type: string
          description: Company name if a corporate account.
        billToAddress:
          required:
          - firstName
          - lastName
          - address1
          - city
          - region
          - postalCode
          - countryCode
          - telephoneNumber
          type: object
          properties:
            firstName:
              $ref: '#/components/schemas/firstName'
            lastName:
              $ref: '#/components/schemas/lastName'
            address1:
              type: string
              description: 'An identifier for the address1 being used. If included you must send at least: [address1,  city, countyCode, postalCode].'
            address2:
              type: string
              description: An identifier for the address2 being used.
            address3:
              type: string
              description: An identifier for the address3 being used.
            city:
              type: string
              description: An identifier for the city being used.
            region:
              type: string
              description: An identifier for the region being used.
            postalCode:
              $ref: '#/components/schemas/postalCode'
            countryCode:
              type: string
              description: The alpha-2 ISO-3166 country code of the address.
              example: GB
              pattern: ^[A-Z]{2}$
            telephoneNumber:
              type: string
              description: An identifier for the telephoneNumber being used.
    firstName:
      type: string
      description: given name
      maxLength: 85
      minLength: 1
      example: Alice
    checkedAt:
      type: string
      example: '2024-03-26T19:38:29.543195Z'
      pattern: ^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})\.(\d{3,})Z$
    verifications_ach_201_response:
      required:
      - outcome
      - checkedAt
      - _links
      type: object
      properties:
        outcome:
          type: string
          enum:
          - verified
          - not verified
          description: This field indicates the status of the transaction.
        description:
          type: string
        checkedAt:
          $ref: '#/components/schemas/checkedAt'
    postalCode:
      type: string
      description: Recipient's postal code.
      maxLength: 15
      minLength: 1
      example: NW1 6XE
  responses:
    '404':
      description: Not Found - unable to locate requested record
      headers:
        WP-CorrelationId:
          schema:
            type: string
          description: Generated identifier for the request and response. When contacting support please include this.
          example: 4c195ce9-3dbd-4bc8-9c94-3d3393842323
      content:
        application/vnd.worldpay.cardVerifications-v6+json:
          schema:
            title: error400
            type: object
            required:
            - errorName
            - message
            properties:
              errorName:
                type: string
                enum:
                - resourceNotFound
                description: A machine and human readable error type for clarity and semantic understanding of the error.
                example: resourceNotFound
              message:
                type: string
                description: 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
          example:
            errorName: resourceNotFound
            message: Unable to verify the historic outcome from the data provided
    '500':
      description: An error occurred processing the request on our side.
      headers:
        WP-CorrelationId:
          schema:
            type: string
          description: Generated identifier for the request and response. When contacting support please include this.
          example: 4c195ce9-3dbd-4bc8-9c94-3d3393842323
      content:
        application/json:
          schema:
            title: error500
            type: object
            required:
            - errorName
            - message
            properties:
              errorName:
                type: string
                enum:
                - internalServerError
                description: A machine and human readable error type for clarity and semantic understanding of the error.
                example: internalServerError
              message:
                type: string
                description: A human readable message giving a corrective action for the error.  *This is not for machine consumption*
                example: An internal server error occurred
    '415':
      description: Invalid content-type HTTP header
      headers:
        WP-CorrelationId:
          schema:
            type: string
          description: Generated identifier for the request and response. When contacting support please include this.
          example: 4c195ce9-3dbd-4bc8-9c94-3d3393842323
      content:
        application/json:
          schema:
            title: error415
            type: object
            required:
            - errorName
            - message
            properties:
              errorName:
                type: string
                description: A machine and human readable error type for clarity and semantic understanding of the error.
                example: headerHasInvalidValue
              message:
                type: string
                description: 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:
                type: string
                description: 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
    '400':
      description: Bad Request
      headers:
        WP-CorrelationId:
          schema:
            type: string
          description: Generated identifier for the request and response. When contacting support please include this.
          example: 4c195ce9-3dbd-4bc8-9c94-3d3393842323
      content:
        application/json:
          examples:
            Validation Error:
              $ref: '#/components/examples/validationError'
            Header Error:
              $ref: '#/components/examples/headerError'
          schema:
            title: error400
            type: object
            required:
            - errorName
            - message
            properties:
              errorName:
                type: string
                enum:
                - internalErrorOccurred
                - headerIsMissing
                - headerHasInvalidValue
                - bodyIsEmpty
                - bodyIsNotJson
                - bodyDoesNotMatchSchema
                description: A machine and human readable error type for clarity and semantic understanding of the error.
                example: bodyDoesNotMatchSchema
              message:
                type: string
                description: 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:
                type: array
                description: If there were field validation errors, they will be collected in this array
                items:
                  $ref: '#/components/schemas/validationError'
              headerName:
                type: string
                description: 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
    '401':
      description: Client is not authorized due to missing or invalid Authorization header.
      headers:
        WP-CorrelationId:
          schema:
            type: string
          description: Generated identifier for the request and response. When contacting support please include this.
          example: 4c195ce9-3dbd-4bc8-9c94-3d3393842323
      content:
        application/json:
          schema:
            title: error401
            type: object
            required:
            - errorName
            - message
            - headerName
            properties:
              errorName:
                type: string
                description: A machine and human readable error type for clarity and semantic understanding of the error.
                example: accessDenied
              message:
                type: string
                description: 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
  examples:
    headerError:
      value:
        errorName: headerIsMissing
        message: A valid header must be provided.
        headerName: Content-Type
    validationError:
      value:
        errorName: bodyDoesNotMatchSchema
        message: A JSON body matching the expected schema must be provided.
        validationErrors:
        - errorName: fieldIsNotAllowed
          message: Field at path is not allowed.
          jsonPath: $.transactionRef
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
      description: "username:password = merchant1:password  \nBase-64 encoded = bWVyY2hhbnQxcGFzc3dvcmQ=\n"