Overview
The GrailPay ACH API offers several endpoints to help you manage bank account records linked to people and businesses. These tools allow you to retrieve account details, check balances, set defaults, delete unused accounts, and more. Each endpoint supports a distinct action and is designed to support common banking workflows such as updates, validations, account transitions, and reconciliation. This guide outlines each management action, what it does, and when to use it.Aggregator Types
When working with bank accounts, you may encounter differentaggregator_type
values. These indicate how the bank
account was added and can affect available features. There are currently three supported types and they are used throughout
many of the bank account management endpoints:
- plaid: Indicates the account was added via the GrailPay API using Plaid as the data aggregator.
- manual: Indicates the account was added via the GrailPay API using manual entry of account and routing numbers.
- bank_link: Indicates the account was added via the GrailPay Bank Link SDK.
Fetch Account Transaction History
For accounts linked through the GrailPay Bank Link SDK, you can retrieve transaction history directly from the user’s connected bank. This provides visibility into external activity such as deposits, withdrawals, and card payments — useful for risk assessment, reconciliation, and fraud monitoring. This endpoint returns a list of recent transactions for a specific linked bank account using itsaccount_uuid
and the
aggregator type. It supports date range filtering and pagination to help you tailor the results to your needs.
This functionality is only available for accounts connected through our Bank Link SDK.
Delete Bank Account
You can delete a bank account associated with a person or business by referencing theaggregator_type
used and the
account_uuid
. This is typically used to remove old or unused bank accounts that should no longer be involved in
transactions.
Deletion is permanent and should be used only after ensuring the account is no longer in use.
Fetch Bank Account
This endpoint allows you to retrieve detailed information about a specific bank account using theaccount_uuid
.
It’s helpful for auditing, troubleshooting, or displaying bank account metadata within your application.
For full schema details, refer to
Fetch Account Balance
Use this endpoint to retrieve the current balance of a linked bank account. This is especially useful for validating available funds prior to initiating a transaction or for displaying account balances in your product UI.Keep in mind that this balance check is only available to accounts connected through our Bank Link Widget. If
attempted on an account added through the API ( manual_account ), we will respond with an error with a status
code of 403.
List All Bank Accounts
This endpoint returns a list of all bank accounts associated with a specific user, whether that user is a person or business. It supports pagination and is useful for building dashboards or reconciling linked accounts. For full schema details, refer toFetch User by Bank Account
If you only have theaccount_uuid
but need to identify the associated user, this endpoint allows you to retrieve the
corresponding user_uuid
. This can be useful for resolving ownership in systems where bank accounts may exist outside
direct user context.
For full schema details, refer to