Sleek and accurate search for accounts and transactions
Accounts
| What you can do | Endpoint |
|---|---|
| Search for accounts | get /commercial/accounts/v1/list |
| Retrieve account details | get /commercial/accounts/v1/{accountId} |
Transactions
| What you can do | Endpoint |
|---|---|
| Search prior day account transactions | get /commercial/accounts/v1/{accountId}/transactions/previous |
| Search current day account transactions | get /commercial/accounts/v1/{accountId}/transactions/current |
Search for accounts
get /commercial/accounts/v1/list
Retrieve a list of commercial payment accounts.
A successful response returns an array of accounts for authorized commercial clients. In the account details, an accountId is returned. This identifier is required to retrieve account details or to search for current or past day transactions.
Request
| QUERY | TYPE | DESCRIPTION |
|---|---|---|
| limitoptional | integer | Restrict the amount of data you receive. The limit can be an integer from 1 to 100. If the limit is not specified, a default limit of 50 will be used. |
| pageKeyoptional | integer | A secure and flexible pagination capability uses a unique identifier to navigate or retrieve specific pages. If left blank, the full page range is returned. |
| HEADER | TYPE | DESCRIPTION |
|---|---|---|
| Acceptrequired | string | Preferred syntax for content type. This content type should be application/json. |
| Accept-Charsetrequired | string | The supported character set for the content. UTF-8 contains the accepted Unicode character list for standard English and Latin characters. |
| User-Agentrequired | string | Identifies the web browser and/or cURL command line used in the HTTP request. We collect this data to see which products use our API data services, helpful for troubleshooting and compatibility. |
| x-fapi-interaction-idrequired | string | FapiInteractionId |
Request example
curl --location: "https://partner-api-qv.key.com/commercial/accounts/v1/list?limit=50"
--header "Accept: application/json"
--header "Accept-Charset: UTF-8'
--header "User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Mobile Safari/537.36 Edg/136.0.0.0'
--header "x-fapi-interaction-id: c770aef3-6784-41f7-8e0e-ff5f97bddb3a"
--header "Bearer: testZcKJDWnwDWmmf9qah6PJvPy8"
Responses
Success
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Accounts | object | Accounts |
Response example (200)
{
"page": {
"nextPageKey": "2",
"previousPageKey": "1",
"totalElements": 3
},
"links": {
"next": {
"href": "https://api.fi.com/fdx/v4/accounts/12345"
},
"prev": {
"href": "https://api.fi.com/fdx/v4/accounts/12345"
}
},
"accounts": [
{
"accountCategory": "COMMERCIAL_ACCOUNT",
"accountId": "string",
"accountNumberDisplay": "string"
}
]
}Missing mandatory information
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (400)
{
"code": "401",
"message": "Invalid input",
"debugMessage": "Required header 'x-fapi-interaction-id' is not valid."
}Unauthorized request
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (401)
{
"code": "603",
"message": "Authentication failed",
"debugMessage": "Please update the request and try again."
}Forbidden request access
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (403)
{
"code": "403",
"message": "Forbidden",
"debugMessage": "Please update the request and try again."
}Resource not found
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (404)
{
"code": "1107",
"message": "Data not found for request parameters",
"debugMessage": "Please adjust your search criteria and try again."
}Content Type not supported
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (406)
{
"code": "1203",
"message": "Content Type not supported",
"debugMessage": "Acceptable representations: [application/json, application/*+json]."
}Retrieve account details
get /commercial/accounts/v1/{accountId}
Get full details about the account identified with the accountId parameter. To include account balance information like opening and closing ledger amounts, be sure to specify the balanceAsOf date in the request.
Request
| PATH | TYPE | DESCRIPTION |
|---|---|---|
| accountIdrequired | string | An unique identification number generated from the /commercial/accounts/v1/list endpoint. |
| QUERY | TYPE | DESCRIPTION |
|---|---|---|
| balanceAsOfoptional | string | A query option to return historical balance information from a certain date. Balance information includes opening and closed ledger balances, opening and closing available balances, and commercial balances. The date must be within 180 days of the current date. If a date is not provided, historical balance information is not returned. Format: YYYY-MM-DD |
| HEADER | TYPE | DESCRIPTION |
|---|---|---|
| Acceptrequired | string | Preferred syntax for content type. This content type should be application/json. |
| Accept-Charsetrequired | string | The supported character set for the content. UTF-8 contains the accepted Unicode character list for standard English and Latin characters. |
| User-Agentrequired | string | Identifies the web browser and/or cURL command line used in the HTTP request. We collect this data to see which products use our API data services, helpful for troubleshooting and compatibility. |
| x-fapi-interaction-idrequired | string | FapiInteractionId |
Request example
curl --location: "https://partner-api-qv.key.com/commercial/accounts/v1/17e13f78-20c7-4ce6-ad4e-5afff48c8834?balanceAsOf=2025-08-21"
--header "Accept: application/json"
--header "Accept-Charset: UTF-8'
--header "User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Mobile Safari/537.36 Edg/136.0.0.0'
--header "x-fapi-interaction-id: c770aef3-6784-41f7-8e0e-ff5f97bddb3a"
--header "Bearer: testZcKJDWnwDWmmf9qah6PJvPy8"
Responses
Success
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| AccountWithDetails | object | AccountWithDetails |
Response example (200)
{
"accountId": "17e13f78-20c7-4ce6-ad4e-5afff48c8834",
"accountNumberDisplay": "X2595",
"accountCategory": "COMMERCIAL_ACCOUNT",
"currentAvailableBalance": 1000.1,
"currentLedgerBalance": 3000.2,
"openingLedgerBalance": 123.45,
"closingLedgerBalance": 25000.99,
"openingAvailableBalance": 15000.5,
"closingAvailableBalance": 25000.36,
"balanceAsOf": "2025-08-21",
"commercialBalances": [
{
"commercialCode": {
"type": "BAI",
"code": "010",
"memo": "Opening Ledger Balance"
},
"amount": 123.45
},
{
"commercialCode": {
"type": "BAI",
"code": "015",
"memo": "Closing Ledger Balance"
},
"amount": 25000.99
},
{
"commercialCode": {
"type": "BAI",
"code": "040",
"memo": "Opening Available Balance"
},
"amount": 15000.5
},
{
"commercialCode": {
"type": "BAI",
"code": "045",
"memo": "Closing Available Balance"
},
"amount": 25000.36
}
]
}Partial Success of Commercial Account
It is possible to have a success message with a HTTP 206 code that indicates a partial success. For example, only a portion of the records are returned from the full set or the record is returning partial data. This can occur if the balanceAsOf date requested is a weekend date or a non-business day. Or, this can occur in an unlikely event that a dependent system or provider is down or has reduced performance.
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| AccountWithDetails | object | AccountWithDetails |
Response example (206)
{
"accountCategory": "COMMERCIAL_ACCOUNT",
"accountId": "string",
"accountNumberDisplay": "string",
"balanceAsOf": "2019-08-24",
"openingLedgerBalance": 0,
"closingLedgerBalance": 0,
"currentLedgerBalance": 0,
"openingAvailableBalance": 0,
"currentAvailableBalance": 0,
"closingAvailableBalance": 0,
"commercialBalances": [
{
"commercialCode": {
"type": "BAI",
"code": "string"
},
"amount": 0,
"memo": "string"
}
]
} Missing mandatory information
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (400)
{
"code": "401",
"message": "Invalid input",
"debugMessage": "Required header 'x-fapi-interaction-id' is not valid."
}Unauthorized request
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (401)
{
"code": "603",
"message": "Unauthorized request",
"debugMessage": "Please update the request and try again."
}Forbidden request access
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (403)
{
"code": "403",
"message": "Forbidden",
"debugMessage": "Please update the request and try again."
}Content Type not supported
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (406)
{
"code": "1203",
"message": "Content Type not supported",
"debugMessage": "Acceptable representations: [application/json, application/*+json]."
}Search prior day account transactions
get /commercial/accounts/v1/{accountId}/transactions/previous
Search for past transactions by accountId and date range, startDate and endDate. Do not specify a date range to search yesterday's transactions. If you enter a date range, remember the following:
- If you enter a start date, you must also provide an end date.
- You can look up to 180 days in the past (about 6 months).
- The end date cannot be the current date.
- To search for a specific date, the start date and the end date must be the same date. For example, "/commercial/accounts/v1/accountId12345/transactions/previous?startDate=2025-02-15&endDate=2025-02-15".
Request
| PATH | TYPE | DESCRIPTION |
|---|---|---|
| accountIdrequired | string | An unique identification number generated from the /commercial/accounts/v1/list endpoint. |
| QUERY | TYPE | DESCRIPTION |
|---|---|---|
| startDateoptional | string | Start date to search a past date range. Leave blank to search prior day transactions. If you enter a date, you must also specify an end date. Start date can not be older than 180 days from today. Format: YYYY-MM-DD |
| endDateoptional | string | End date for a date range. Leave blank to search prior day transactions. If you enter a date, you must also specify a start date. The end date cannot be today's date. To search for a single day's transactions, make the end date the same as the start date. Format: YYYY-MM-DD |
| limitoptional | integer | Restrict the amount of data you receive. The limit can be an integer from 1 to 500. If the limit is not specified, a default limit of 100 will be used. |
| pageKeyoptional | integer | A secure and flexible pagination capability uses a unique identifier to navigate or retrieve specific pages. If left blank, the full page range is returned. |
| HEADER | TYPE | DESCRIPTION |
|---|---|---|
| Acceptrequired | string | Preferred syntax for content type. This content type should be application/json. |
| Accept-Charsetrequired | string | The supported character set for the content. UTF-8 contains the accepted Unicode character list for standard English and Latin characters. |
| User-Agentrequired | string | Identifies the web browser and/or cURL command line used in the HTTP request. We collect this data to see which products use our API data services, helpful for troubleshooting and compatibility. |
| x-fapi-interaction-idrequired | string | FapiInteractionId |
Request example
curl --location: 'https://partner-api-qv.key.com/commercial/accounts/v1/FintechCo-25-7120aez/transactions/previous?startDate=2025-02-15&endDate=2025-02-28&limit=15&pageKey=2'
--header 'Accept: application/json'
--header 'Accept-Charset: UTF-8'
--header 'User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Mobile Safari/537.36 Edg/136.0.0.0'
--header 'x-fapi-interaction-id: c770aef3-6784-41f7-8e0e-ff5f97bddb3a'
--header 'Bearer: testZcKJDWnwDWmmf9qah6PJvPy8'Responses
Success- paginated collection of commercial transactions for prior date(s)
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| transactions | array | Transactions |
Response example (200)
{
"page": {
"nextPageKey": "2",
"previousPageKey": "1",
"totalElements": 3
},
"links": {
"next": {
"href": "https://api.fi.com/fdx/v4/accounts/12345"
},
"prev": {
"href": "https://api.fi.com/fdx/v4/accounts/12345"
}
},
"transactions": [
{
"accountCategory": "COMMERCIAL_ACCOUNT",
"accountId": "string",
"transactionId": "string",
"postedTimestamp": "2021-07-15T14:46:41.375Z",
"transactionTimestamp": "2021-07-15T14:46:41.375Z",
"description": "string",
"debitCreditMemo": "CREDIT",
"status": "AUTHORIZATION",
"amount": 0,
"lineItem": [
{
"description": "CHECK",
"amount": 0,
"checkNumber": 9876
}
],
"fiAttributes": [
{
"name": "transactionType",
"value": "CHECK"
}
],
"commercialCode": {
"type": "BAI",
"code": "string"
}
}
]
}Partial Success of Prior Day
It is possible to have a success message with a HTTP 206 code that indicates a partial success. For example, only a portion of the records are returned from the full set or the record is returning partial data. This can occur if the daily batch hasn’t processed one or more of the dates being searched. Or, in an unlikely event that a dependent system or provider is down or has reduced performance. In either case, review the Content-Range response header for an explanation to the range of data provided.
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| AccountWithDetails | object | AccountWithDetails |
Response example (206)
{
"page": {
"nextPageKey": "2",
"previousPageKey": "1"
},
"links": {
"next": {
"href": "https://api.fi.com/fdx/v4/accounts/12345"
},
"prev": {
"href": "https://api.fi.com/fdx/v4/accounts/12345"
}
},
"transactions": [
{
"accountCategory": "COMMERCIAL_ACCOUNT",
"accountId": "string",
"transactionId": "string",
"postedTimestamp": "2021-07-15T14:46:41.375Z",
"lineItem": [],
"fiAttributes": [
{
"name": "transactionType",
"value": "CHECK"
}
]
}
]
}Missing mandatory information
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (400)
{
"code": "401",
"message": "Invalid input",
"debugMessage": "Required header 'x-fapi-interaction-id' is not valid."
}Unauthorized request
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (401)
{
"code": "603",
"message": "Authentication failed",
"debugMessage": "Please update the request and try again."
}Forbidden request access
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (403)
{
"code": "403",
"message": "Forbidden",
"debugMessage": "Please update the request and try again."
}Resource not found
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (404)
{
"code": "1107",
"message": "Data not found for request parameters",
"debugMessage": "Please adjust your search criteria and try again."
}Content Type not supported
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (406)
{
"code": "1203",
"message": "Content Type not supported",
"debugMessage": "Acceptable representations: [application/json, application/*+json]."
}Search current day account transactions
get /commercial/v1/accounts/{accountId}/transactions/current
Search for current day transaction by accountId. Use pagination controls to limit or filter the data returned.
Request
| PATH | TYPE | DESCRIPTION |
|---|---|---|
| accountIdrequired | string | An unique identification number generated from the /commercial/accounts/v1/list endpoint. |
| QUERY | TYPE | DESCRIPTION |
|---|---|---|
| limit | integer | Restrict the amount of data you receive. The limit can be an integer from 1 to 500. If the limit is not specified, a default limit of 100 will be used. |
| pageKey | integer | A secure and flexible pagination capability uses a unique identifier to navigate or retrieve specific pages. If left blank, the full page range is returned. |
| HEADER | TYPE | DESCRIPTION |
|---|---|---|
| Acceptrequired | string | Preferred syntax for content type. This content type should be application/json. |
| Accept-Charsetrequired | string | The supported character set for the content. UTF-8 contains the accepted Unicode character list for standard English and Latin characters. |
| User-Agentrequired | string | Identifies the web browser and/or cURL command line used in the HTTP request. We collect this data to see which products use our API data services, helpful for troubleshooting and compatibility. |
| x-fapi-interaction-idrequired | string | FapiInteractionId |
Request example
curl --location: 'https://partner-api-qv.key.com/commercial/v1/accounts/FintechCo-25-7120aez/transactions/current?limit=15&pageKey=3'
--header 'Accept: application/json'
--header 'Accept-Charset: UTF-8'
--header 'User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Mobile Safari/537.36 Edg/136.0.0.0'
--header 'x-fapi-interaction-id: c770aef3-6784-41f7-8e0e-ff5f97bddb3a'
--header 'Bearer: testZcKJDWnwDWmmf9qah6PJvPy8'
Responses
Success - paginated collection of commercial transactions for current day
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| transactions | array | Transactions |
Response example (200)
{
"page": {
"nextPageKey": "2",
"previousPageKey": "1",
"totalElements": 3
},
"links": {
"next": {
"href": "https://api.fi.com/fdx/v4/accounts/12345"
},
"prev": {
"href": "https://api.fi.com/fdx/v4/accounts/12345"
}
},
"transactions": [
{
"accountCategory": "COMMERCIAL_ACCOUNT",
"accountId": "string",
"transactionId": "string",
"postedTimestamp": "2021-07-15T14:46:41.375Z",
"transactionTimestamp": "2021-07-15T14:46:41.375Z",
"description": "string",
"debitCreditMemo": "CREDIT",
"status": "AUTHORIZATION",
"amount": 0,
"lineItem": [
{
"description": "CHECK",
"amount": 0,
"checkNumber": 9876
}
],
"fiAttributes": [
{
"name": "transactionType",
"value": "CHECK"
}
],
"commercialCode": {
"type": "BAI",
"code": "string"
}
}
]
}
Missing mandatory information
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (400)
{
"code": "401",
"message": "Invalid input",
"debugMessage": "Required header 'x-fapi-interaction-id' is not valid."
}Unauthorized request
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (401)
{
"code": "603",
"message": "Authentication failed",
"debugMessage": "Please update the request and try again."
}Forbidden request access
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (403)
{
"code": "403",
"message": "Forbidden",
"debugMessage": "Please update the request and try again."
}Resource not found
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (404)
{
"code": "1107",
"message": "Data not found for request parameters",
"debugMessage": "Please adjust your search criteria and try again."
}Content Type not supported
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Error | object | Error |
Response example (406)
{
"code": "1203",
"message": "Content Type not supported",
"debugMessage": "Acceptable representations: [application/json, application/*+json]."
}Schemas
Account
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Account | allOf | AccountDescriptor |
Accounts
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| PaginatedArray | allOf | PaginatedArray |
| Accounts | array | Account |
AccountWithDetails
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| AccountWithDetails | oneOf | CommercialAccount |
AccountCategory
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| AccountCategory | string | The account type for the transaction. Valid values: COMMERCIAL_ACCOUNT |
AccountDescriptor
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| accountCategory | Object | AccountCategory |
| accountId | Object | Identifier |
| accountNumberDisplay | string | The account display number suitable for the interface provider. |
AccountWithDetails
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| accountCategory | object | CommercialAccount |
Charsets
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Charsets | string | The supported character set for the content. UTF-8 contains the accepted Unicode character list for standard English and Latin characters. |
CommercialAccount
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Commercial Account | allOf | Account |
CommercialBalance
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| commercialCode | Object | CommercialCode |
| amount | number | The treasury management balance amount |
| memo | string | Memo field for the treasury management balance amount |
CommercialCode
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| type | object | TreasuryManagementType |
| code | string | The code of the Treasury Management defined field |
CommercialTransaction
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| CommercialTransaction | allOf | Transaction |
ContentTypes
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| ContentTypes | string | Types of supported document formats. |
DateString
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| DateString | string | Date format based on ISO 8601 standards. Format: YYYY-MM-DD |
Error
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| code | string | Code indicates the type of error that occurred. |
| message | string | Information associated with the code that helps you diagnose the error. |
| debugMessage | string | Message used to debug the root cause of the error. |
FapiInteractionId
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| FapiInteractionId | string | Universally unique identifier for this interaction, used across all API requests and responses |
FiAttribute
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| name | string | Name of attribute |
| value | string | Value of attribute |
HateoasLink
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| href | string | URL address to invoke the action on the resource. |
HateoasLinks
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| HateoasLinks | array | HateoasLink |
Identifier
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| Identifieroptional | string | Value for a unique identifier |
LineItem
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| description | string | Brief details about the transaction. |
| amount | number | The amount of money for this line item. |
| checkNumber | integer | The check number for a check payment associated with the line item. |
PageMetadata
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| nextPageKey | string | Displays the next page number. This is an opaque identifier and does not need to be numeric or have any specific pattern. |
| previousPageKey | string | Display the previous page number. This is an opaque identifier and does not need to be numeric or have any specific pattern. |
| totalElements | integer | Total number of elements |
PageMetadataLinks
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| next | object | HateoasLink |
| prev | object | HateoasLink |
PaginatedArray
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| page | object | PageMetadata |
| links | object | PageMetadataLinks |
Transaction
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| accountCategory | string | The account type for the transaction. Valid values: COMMERCIAL_ACCOUNT |
| accountId | string | The account identifier for the transaction. |
| transactionId | string | Long term persistent identity of the transaction (unique to account) |
| postedTimestamp | string | The date and time that the transaction was posted to the account. If the transaction is not yet posted, the transactionTimestamp value is returned. Format: YYYY-MM-DDThh:mm:ss.nnn[Z] |
| transactionTimestamp | string | The date and time that the transaction was added to the server and backend systems. This returns the current date or a previous date based on the request call and criteria. Format: 'YYYY-MM-DDThh:mm:ss.nnn[Z] |
| description | string | The description of the transaction, such as information about a merchant's name or place of business in a manner that is user friendly and accessible to the customer. |
| debitCreditMemo | string | The posting type of a transaction. Valid values: DEBIT, CREDIT, MEMO |
| status | string | The status of the transaction. Valid values: PENDING, MEMO, POSTED, AUTHORIZATION |
| amount | number | The amount of funds in the currency of the account owner. |
| lineItem | array | LineItem |
| fiAttributes | array | FiAttribute |
| reference | string | A reference number like a check number or lockbox number. |
TransactionStatus
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| TransactionStatus | string | The status of a transaction. Valid values: AUTHORIZATION, MEMO, PENDING, POSTED |
Transactions
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| PaginatedArray | allOf | PaginatedArray |
| Transactions | oneOf | CommercialTransaction |
TreasuryManagementType
| NAME | TYPE | DESCRIPTION |
|---|---|---|
| TreasuryManagementType | string | Identifies the source of the treasury management account. Valid values: BAI, BTRS, ISO, SWIFT |
Errors
FDX error codes
This API specification is based on FDX standards. A standard HTTP response is returned with a code provided by the FDX system. This code can provide further details for unsuccessful messages. These errors follow a basic format with three parameters: code, message, and debugMessage.
| Error code | Error message | Related HTTP status code |
|---|---|---|
| 401 | Invalid Input | 400 |
| 403 | Forbidden, inadequate authorization | 403 |
| 409 | Conflict with current state of target resource | 409 |
| 500 | Internal server error | 500 |
| 501 | Subsystem unavailable | 501 |
| 503 | Scheduled Maintenance | 503 |
| 601 | Customer not found | 404 |
| 602 | Customer not authorized | 403 |
| 603 | Authentication failed | 401 |
| 701 | Account not found | 404 |
| 702 | Invalid start for end date | 400 |
| 703 | Invalid date range | 400 |
| 704 | Account type not support | 422 |
| 705 | Account is Closed | 409 |
| 800 | Payee not found | 404 |
| 801 | Payee cannot be modified or deleted | 400 |
| 802 | Payment not found | 404 |
| 803 | Due date too soon | 400 |
| 804 | Payment rejected | 400 |
| 805 | Payment cannot be modified or cancelled | 400 |
| 806 | Recurring payment not found | 404 |
| 807 | Recurring payment rejected | 400 |
| 808 | Recurring payment cannot be modified or cancelled | 400 |
| 901 | Source account not found | 404 |
| 902 | Source account closed | 404 |
| 903 | Source account not authorized for transfer | 401 |
| 904 | Destination account not found | 404 |
| 905 | Destination account closed | 404 |
| 906 | Destination account not authorized for transfer | 401 |
| 907 | Invalid amount | 400 |
| 908 | Duplicate transfer request | 409 |
| 909 | Transfer not available due to end of day processing | 503 |
| 910 | Insufficient funds | 400 |
| 911 | Transaction limit exceeded | 400 |
| 950 | Transfer not found | 404 |
| 1000 | Unable to retrieve key from JWKS endpoint | 500 |
| 1100 | Update ID not found | 404 |
| 1101 | Reward program ID not found | 404 |
| 1102 | Categories not found for the reward program | 404 |
| 1103 | Image ID not found for Transaction | 404 |
| 1104 | Statement ID not found for account | 404 |
| 1106 | FDX version not supported or not implemented | 501 |
| 1107 | Data not found for request parameters | 404 |
| 1108 | Statements not found for given Account | 404 |
| 1200 | Tax form not found | 404 |
| 1201 | Tax form type not supported | 400 |
| 1202 | Tax year not supported | 400 |
| 1203 | Content type not supported | 406 |
| 1204 | Account ID is required | 400 |
| 1205 | Tax forms not yet been made available | 409 |
| 1206 | Method not allowed | 405 |
| 1207 | Too many requests | 429 |
| 1300 | Statement is processing | 400 |
Changelog
| Release | API version | Change description | Impact |
|---|---|---|---|
| October 2025 | 1.0.0 |
|
Impact levels
- LOW: This is a minor change or enhancement that does not alter the operations of the API. Upgrading to the latest specifications is preferable but not required.
- MID: The previous API version is valid and operates, but does not contain latest enhancements. You need to update your specifications to get these enhancements.
- HIGH: The previous API version is no longer operable. You must upgrade to the latest specifications to access and use this API product.
YAML file