Bank of America Payments API

The Payments API from Bank of America — 2 operation(s) for payments.

Operations 4

POST /payments Initiate Payment #
GET /payments List Payments #
GET /payments/{paymentId} Get Payment Status #
DELETE /payments/{paymentId} Cancel Payment #

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/bank-of-america-payments-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

bank-of-america-payments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Bank of America CashPro Payments API
  description: The Bank of America CashPro API enables corporate treasury clients to programmatically access banking services including payments, account information, balance reporting, and transaction history. The API supports over 350 payment types and integrates with Treasury Management Systems (TMS) and ERP platforms.
  version: 1.0.0
  contact:
    email: GlobalAPIOps@bofa.com
    url: https://developer.bankofamerica.com/
servers:
- url: https://api.bankofamerica.com/cashpro/v1
  description: CashPro API Production
- url: https://sandbox.bankofamerica.com/cashpro/v1
  description: CashPro API Sandbox
security:
- OAuth2: []
tags:
- name: Payments
paths:
  /payments:
    post:
      operationId: initiatePayment
      summary: Initiate Payment
      description: Initiate a payment transaction. Supports over 350 payment types including ACH, wire transfers, SWIFT, checks, and real-time payments. The payment type is determined by the paymentType field in the request body.
      tags:
      - Payments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PaymentRequest'
      responses:
        '201':
          description: Payment initiated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResponse'
        '400':
          description: Bad request — invalid payment data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    get:
      operationId: listPayments
      summary: List Payments
      description: Retrieve a list of payment transactions filtered by date range and status.
      tags:
      - Payments
      parameters:
      - name: fromDate
        in: query
        description: Start date filter (ISO 8601)
        schema:
          type: string
          format: date
      - name: toDate
        in: query
        description: End date filter (ISO 8601)
        schema:
          type: string
          format: date
      - name: status
        in: query
        description: Filter by payment status
        schema:
          type: string
          enum:
          - pending
          - processing
          - completed
          - rejected
          - cancelled
      - name: paymentType
        in: query
        description: Filter by payment type
        schema:
          type: string
      responses:
        '200':
          description: Payment list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentListResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /payments/{paymentId}:
    get:
      operationId: getPayment
      summary: Get Payment Status
      description: Retrieve the current status and details of a specific payment transaction.
      tags:
      - Payments
      parameters:
      - name: paymentId
        in: path
        required: true
        description: Unique payment transaction identifier
        schema:
          type: string
      responses:
        '200':
          description: Payment details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Payment not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    delete:
      operationId: cancelPayment
      summary: Cancel Payment
      description: Cancel a pending payment that has not yet been processed.
      tags:
      - Payments
      parameters:
      - name: paymentId
        in: path
        required: true
        description: Unique payment identifier
        schema:
          type: string
      responses:
        '200':
          description: Payment cancelled successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '409':
          description: Conflict — payment cannot be cancelled in current state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ErrorResponse:
      type: object
      description: API error response
      properties:
        errorCode:
          type: string
          description: Machine-readable error code
        message:
          type: string
          description: Human-readable error message
        details:
          type: array
          items:
            type: string
          description: Additional error details
        requestId:
          type: string
          description: Request identifier for support
    PaymentListResponse:
      type: object
      description: Paginated list of payments
      properties:
        payments:
          type: array
          items:
            $ref: '#/components/schemas/PaymentResponse'
        totalCount:
          type: integer
        pageSize:
          type: integer
        offset:
          type: integer
    PaymentRequest:
      type: object
      description: Payment initiation request
      required:
      - paymentType
      - amount
      - currency
      - debitAccountId
      - beneficiary
      properties:
        paymentType:
          type: string
          description: Payment type (ACH_CREDIT, WIRE, SWIFT, CHECK, RTP, etc.)
        amount:
          type: number
          format: double
          description: Payment amount
        currency:
          type: string
          description: Payment currency (ISO 4217)
        debitAccountId:
          type: string
          description: Account to debit
        valueDate:
          type: string
          format: date
          description: Requested value date (ISO 8601)
        reference:
          type: string
          description: Client reference number
        memo:
          type: string
          description: Payment memo or description
        beneficiary:
          $ref: '#/components/schemas/Beneficiary'
    Beneficiary:
      type: object
      description: Payment beneficiary details
      properties:
        name:
          type: string
          description: Beneficiary name
        accountNumber:
          type: string
          description: Beneficiary account number
        routingNumber:
          type: string
          description: Beneficiary bank routing number (ABA)
        bankName:
          type: string
          description: Beneficiary bank name
        bankAddress:
          type: string
          description: Beneficiary bank address
        swiftCode:
          type: string
          description: SWIFT/BIC code for international wires
    PaymentResponse:
      type: object
      description: Payment transaction response
      properties:
        paymentId:
          type: string
          description: Unique payment identifier
        clientReferenceId:
          type: string
          description: Client-provided reference
        status:
          type: string
          description: Payment status
          enum:
          - pending
          - processing
          - completed
          - rejected
          - cancelled
        paymentType:
          type: string
          description: Payment type
        amount:
          type: number
          format: double
        currency:
          type: string
        valueDate:
          type: string
          format: date
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        statusMessage:
          type: string
          description: Additional status information
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.bankofamerica.com/oauth/token
          scopes:
            accounts:read: Read account information and balances
            transactions:read: Read transaction history
            payments:write: Initiate and manage payments
            statements:read: Access account statements