# Solidfi
> ## Documentation Index
---
# Source: https://docs.solidfi.com/general/account-holders.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Account Holders
> A guide to Account Holders
The account holder is a person or business that owns the account. The account holder needs to be fully verified as per the bank's CIP requirement before creating an account for the account holder.
There are two types of account holders.
1. Master Account Holder: The master account holder, typically a business and often the FinTech itself, is the entity that owns the master account. This role is of significant importance as the master account holder and the master account are provisioned by Solid at the time of onboarding, tailored to the specific needs of FinTech. For more details, refer to the [Master Accounts Guide](/accounts/master-accounts).
2. Sub Account Holder: The sub account holder can be a person or a business, depending on the FinTech's use case. The sub account holder owns the sub account and the funds in it. FinTechs can create both a sub account holder and sub account using Solid APIs.
* Create a [Sub Account Holder API](/v2/api-reference/sub-account-holders/create-a-sub-account-holder)
* Create a [Sub Account API](/v2/api-reference/sub-accounts/create-a-sub-account)
For more, see the [Sub Accounts Guide](/accounts/sub-accounts).
---
# Source: https://docs.solidfi.com/payments/ach.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# ACH
> A guide to ACH
Automated Clearing House (ACH) payment is a Push & Pull payment method supported by the Solid platform. An ACH payment occurs when the transaction originator instructs the ACH network to push money to or pull money from an external bank in the US. Unlike Intra Account transactions, ACH transactions go through multiple states in their lifecycle before the transaction finally settles:
* Originated: when an ACH transaction is created.
* Pending: when a transaction is waiting to be sent to the bank.
* Clearing: when a transaction has been sent to the bank in the NACHA file.
* Cleared: when the bank has processed the transaction and given Solid the production trace number. The trace number is a unique number used to locate the transaction if required.
* Settled: when a transaction is marked as settled to indicate the completion of the ACH transaction.
* Returned: When the originating ACH transaction is returned by the RDFI.
While ACH transactions can be somewhat complex, understanding the possible types of ACH transactions is essential. See scenatios below on originating outgoing (push/pull) and receiving incoming (push/pull) ACH transactions.
### 1. Originating ACH Transactions
Sub Account Holder 1 at Partner Bank A wants to push \$100 via ACH to Person 2 at Bank B. In this example, Sub Account Holder 1 is originating the ACH transaction at Partner Bank A, instructing the bank (via Solid's technology) to:
Debit \$100 from Sub Account Holder 1's Sub Account at Partner Bank A
Credit \$100 to Person 2's Account at Bank B
Message: Outgoing
Method: ACH
Type: Push
ODFI (Originating Depository Financial Institution): Partner Bank A
RDFI (Receiving Depository Financial Institution): Bank B
Sub Account Holder 1 (Utility Company) at Partner Bank A wants to pull \$100 via ACH from Person 2 at Bank B. In this example, Sub Account Holder 1 (Utility Company) is originating the ACH transaction at Partner Bank A, instructing the bank (via Solid's technology) to:
Credit \$100 to Sub Account Holder 1's Sub Account at Partner Bank A
Debit \$100 from Person 2's Account at Bank B
Message: Outgoing
Method: ACH
Type: Pull
ODFI (Originating Depository Financial Institution): Partner Bank A
RDFI (Receiving Depository Financial Institution): Bank B
Note that ACH payments can only originate from a Sub Account, not from a Master Account.
Steps to originate an ACH payment transaction:
Via the Dashboard or the API, [Create a Counterparty](/v2/api-reference/counterparties/create-a-counterparty) with the beneficiary account details in the `ach` sub-object.
Via the Dashboard or the API, [Originate an ACH Push](/v2/api-reference/transactions/originate-an-ach-push) (where money is pushed to an external Bank Account) or [Originate an ACH Pull](/v2/api-reference/transactions/originate-an-ach-pull) (where money is pulled from an external Bank Account)
Pass the necessary parameters (originating sub\_account\_id, counterparty\_id, amount) and other optional parameters as needed.
```
{
"sub_account_id": "sub_bda1e562657c41e553104b10aad3fe70",
"counterparty_id": "ctp_8e5541c8a9e50c3af3b0daacf9175130",
"amount": "500.00",
"description": "May Rent",
"same_day": "true",
"effective_date": "2024-04-05",
"company_entry_description": "Payment",
"external_reference_id": "123-9088-2"
}
```
Congratulations, you have now successfully Originated an ACH payment transaction!
### 2. Receiving ACH Transactions
ACH Transactions received in the Sub Account with an incoming message include essential instructions such as amount, credit/debit, method, and type. Transactions are received via ACH Payment webhooks.
Person 2 at Bank B wants to push \$100 via ACH to Sub Account Holder 1 at Partner Bank A. In this example, Person 2 is originating the ACH transaction at Bank B, instructing the bank to:
Debit \$100 from Person 2's Account at Bank B
Credit \$100 to Sub Account Holder 1's Account at Partner Bank A
Message: Incoming
Method: ACH
Type: Push
ODFI (Originating Depository Financial Institution): Bank B
RDFI (Receiving Depository Financial Institution): Partner Bank A
Utility Company at Bank B wants to pull \$100 from via ACH from Sub Account Holder 1 at Partner Bank A. In this example, Utility Company is originating the ACH transaction at Bank B, instructing the bank to:
Credit \$100 to Utility Company's Account at Bank B
Debit \$100 from Sub Account Holder 1's Account at Partner Bank A
Message: Incoming
Method: ACH
Type: Pull
ODFI (Originating Depository Financial Institution): Bank B
RDFI (Receiving Depository Financial Institution): Partner Bank A
### 3. ACH Cut-off Times
Below are the cut-off times for originating ACH Credit & Debit Transactions (basically, [1a and 1b](/payments/ach#1-originating-ach-transactions)) on banking days.
* 5:15 am PT
* 8:15 am PT
* 12:15 pm PT
* 4:15 pm PT
For same-day ACH, transfers must be sent before the 12:15 pm cut-off. Anything sent after that will be treated as a next-day ACH.
If you are receiving ACH Credit and debit Transactions (basically, [2a and 2b](/payments/ach#2-receiving-ach-transactions)), we will credit the funds to and debit from Master Account / Sub Account as soon as the RDFI receives the ACH instruction.
### 4. ACH Returns & Reversals
Next, we dive into the different scenarios surrounding ACH Returns and Reversals.
But first, let's understand the financial institutions (FIs) involved in an ACH transaction:
* ODFI (Originating Depository Financial Institution)
* RDFI (Receiving Depository Financial Institution)
Most banks can do both, meaning they can act as ODFI (that originates the ACH transaction on behalf of their Account Holder) and RDFI (that receives the ACH transaction intended for their Account Holder).
**ACH Returns**
ACH Return is filed by the RDFI to return an ACH payment that was previously originated by an ODFI. ACH Returns are filed in the following scenarios:
If the bank account at the RDFI does not have sufficient funds to cover the debited amount, an automatic ACH Return is filed by the RDFI and sent to the Automated Clearing House (ACH), which then notifies the ODFI.
In [2b](/payments/ach#2-receiving-ach-transactions), if Sub Account Holder 1's account at Partner Bank A does not have sufficient funds to cover the debited amount, the RDFI (Partner Bank A) files an automatic ACH return.
If the account holder at the RDFI requests a return to the payment due to an unauthorized ACH Debit transaction, an ACH Return is filed by the RDFI and sent to the Automated Clearing House (ACH), which then notifies the ODFI. Solid must receive the request to file the return within 24 hours.
In [2b](/payments/ach#2-receiving-ach-transactions), if Sub Account Holder 1's account at Partner Bank A does not have sufficient funds to cover the debited amount, the RDFI (Partner Bank A) files an automatic ACH return.
If the bank account at the RDFI is either invalid, closed, or does not exist, an automatic ACH Return is filed by the RDFI and sent to the Automated Clearing House (ACH), which then notifies the ODFI.
In [2b](/payments/ach#2-receiving-ach-transactions), if Sub Account Holder 1's account at Partner Bank A is either invalid, closed or does not exist, the RDFI (Partner Bank A) files an automatic ACH return.
See a list of [ACH Return Codes](https://uploads-ssl.webflow.com/66633a8deaa98cd86b9f0eb3/66980f78467135c36869e194_ACH-Return-Codes.pdf).
**ACH Reversals**
The ODFI files an ACH Reversal to reverse the ACH payment that the ODFI previously originated, most likely due to an error (such as an incorrect amount, duplicate transaction, or incorrect account). ACH Reversals are filed in the following scenarios:
If an incorrect dollar amount was credited to or debited from another bank account, the ODFI can file an attempt to reverse the transaction and send it to the Automated Clearing House (ACH), which then notifies the RDFI. Solid must receive the request to file the return within 24 hours.
In [1a](/payments/ach#1-originating-ach-transactions), if Person 2's Account at Bank B was credited with an incorrect dollar amount, then Partner Bank A (the ODFI) can file an attempt to reverse the transaction.
If a duplicate transaction of the same dollar amount was credited to or debited from another bank account, the ODFI can file an attempt to reverse the transaction and send it to the Automated Clearing House (ACH), which then notifies the RDFI. Solid must receive the request to file the return within 24 hours.
In [1a](/payments/ach#1-originating-ach-transactions), if Person 2's Account at Bank B was credited with a duplicate transaction of the same dollar amount, then Partner Bank A (the ODFI) can file an attempt to reverse the transaction.
If the ODFI sends a payment to an incorrect account, the ODFI can file an attempt to reverse the transaction and send it to the Automated Clearing House (ACH), which notifies the RDFI. Solid must receive the request to file the return within 24 hours.
In [1a](/payments/ach#1-originating-ach-transactions), if Person 2's Account at Bank B was incorrect, then Partner Bank A (the ODFI) can file an attempt to reverse the transaction.
ACH Reversals are not guaranteed to be honored by the RDFI, as the funds have already been debited or credited and may not exist in the account at the RDFI. The RDFI has 48 hours to respond to the ACH Reversal request.
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/activate-a-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Activate a Card
> Activate a Card
## OpenAPI
````yaml patch /v2/issuing/card/{card_id}/activate
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card/{card_id}/activate:
parameters:
- name: card_id
in: path
required: true
schema:
type: string
patch:
tags:
- Cards
summary: Activate a Card
description: Activate a Card
operationId: activateACard
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
expiry_month:
type: string
example: '12'
description: expiration month of the card
expiry_year:
type: string
example: '2022'
description: expiration year of the card
last4:
type: string
example: '5275'
description: last 4 digits of the card number
examples:
Activate a Card:
value:
expiry_month: '12'
expiry_year: '2022'
last4: '5275'
responses:
'200':
description: Activate a Card
content:
application/json:
schema:
$ref: '#/components/schemas/card'
type: object
examples:
card_example:
$ref: '#/components/examples/card_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
card_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/card_not_found_error'
security:
- {}
components:
schemas:
card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account under which the card was created
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
label:
type: string
example: Travel
description: label of the card
product:
type: string
example: business_spend
description: type of card product configured based on the client's use case
enum:
- business_spend
- consumer_debit
- business_debit
- consumer_gpr
- consumer_gpnr
- consumer_payroll
- consumer_hsa
- consumer_fsa
- consumer_govt_benefits
theme:
type: string
example: metallic
description: theme of the card configured as part of the client use case
type:
type: string
example: physical
description: type of card
enum:
- physical
- virtual
expiry_month:
type: string
example: '12'
description: expiration month of the card
expiry_year:
type: string
example: '2025'
description: expiration year of the card
last4:
type: string
example: '5275'
description: last 4 digits of the card number
card_fulfilment:
type: object
properties:
embossing:
type: object
properties:
card_holder_name:
type: string
example: John Doe
description: name of the person to be embossed on the card
business_name:
type: string
example: Ace Inc
description: name of the business to be embossed on the card
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
tracking:
type: object
properties:
status:
type: string
example: delivered
description: delivery status of the card
enum:
- pending
- delivered
- canceled
- failure
- returned
- shipped
eta:
type: string
example: '2024-05-02'
description: estimated date of arrival for the shipped card
number:
type: string
example: '1231233'
description: tracking number if shipped via USPS Priority or UPS Next Day
url:
type: string
example: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
description: tracking URL if shipped via USPS Priority or UPS Next Day
provider:
type: string
example: usps
description: shipping provider (eg. USPS) that shipped the card
controls:
type: object
properties:
allowed:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to allow on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to allow on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to allow on the card. Example
["US","IN"]
items:
type: string
blocked:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to block on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to block on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to block on the card. Example
["US","IN"]
items:
type: string
limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period in which the maximum amount is allowed to be
spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '500.00'
description: maximum amount allowed to be spent in the set period
atm_enabled:
type: string
example: 'true'
description: >-
atm access for the card, true means enabled (by default), false
means disabled
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of the card
enum:
- open
- closed
- blocked
- locked
timestamps:
$ref: '#/components/schemas/card_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was closed
examples:
card_example:
value:
id: crd_7948d9a96706dd05360a340002de725f
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
label: Travel
product: business_spend
theme: metallic
type: physical
expiry_month: '12'
expiry_year: '2022'
last4: '5275'
card_fulfilment:
embossing:
card_holder_name: John Doe
business_name: Ace Inc
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
tracking:
status: delivered
eta: '2024-05-02'
number: '1231233'
url: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
provider: usps
controls:
allowed:
merchants: []
categories: []
countries: []
blocked:
merchants: []
categories: []
countries: []
limit:
period: daily
max_spend_amount: '500.00'
max_spend_per_transaction: '100.00'
max_spend_count: '10'
atm_enabled: 'true'
external_reference_id: FSY52RAZ-4X
attachments:
- label: United
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
description: Sales Team Card
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
closed_at: '2024-04-02T21:00:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
card_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/card-issuance/atm.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# ATM
> A guide to Automated Teller Machines (ATM).
Cards issued on Solid allow cash withdrawals at ATMs. The ATM feature must be enabled, the PIN must be set, and the entered PIN must match the set PIN when entering an ATM. You can also authorize or decline ATM transactions in real time.
### 1. PIN
A Card PIN, or Personal Identification Number, is a 4-digit code unique to each solid-issued card. It ensures that the cardholder is making the transaction. The Card PIN could be required at an ATM or at certain point-of-sale (POS) devices, where it must be entered to complete the transaction.
By default, the card does not have a PIN set. A new PIN can be set by calling the Set a New PIN API.
### 2. ATM Transactions
ATM PIN transactions involve the cardholder using their card to withdraw cash by verifying the transaction using a secret PIN. Here is how the process works:
1. Card Insertion: The cardholder inserts the card into the ATM's card reader,
2. PIN Entry: The cardholder enters their secret PIN on the keypad to authenticate the transaction. This is a security measure to ensure that the person using the card is the legitimate cardholder.
3. Authorization: The ATM communicates with the bank or financial institution that issued the debit card to seek transaction authorization.
4. Transaction Approval or Decline: After PIN verification, the transaction is either approved, with funds deducted from the cardholder's account or declined due to insufficient funds or other issues.
### 3. ATM Access & Locations
Solid has partnered with MoneyPass® to provide surcharge-free ATM access when a Solid issued card is used. MoneyPass® has over 37,000 ATMs nationwide to offer easy access to the funds in the associated account. The FinTech program is responsible for the MoneyPass® transaction fee (refer to the provided fee schedule).
If the Solid issued card is used at an ATM outside of the MoneyPass® network, the fee is disclosed to the end-user at the ATM before the transaction.
You can find MoneyPass® ATMs by searching your zip code on their [ATM locator website](https://www.moneypass.com/index.html). Alternatively, your end user can download the MoneyPass® ATM Locator app, available on the app store. Solid also provides a List all ATM API to list ten nearby MoneyPass® ATMs.
ATM access can be enabled or disabled for the card. By default, it is enabled ("atm\_enabled": true). When Creating a Card or Updating a Card, set "atm\_enabled": false to restrict ATM access.
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/attachments.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Attachments
> Solid Platform supports attachments
The Solid Platform support includes attachments on all the resources.
While adding an attachment, pass the resource id to which the attachment belongs. In response, you will receive a public URL, which is available for 5 minutes that you need to push the attachment to (supports standard mime types).
```json theme={null}
{
"id": "att_a8d2b191fa0e960d8e49a4bfd320e07b",
"reference_id": "ctp_8e5541c8a9e50c3af3b0daacf9175130",
"label": "formation",
"url": "http://bucket.s3-website-us-east-1.amazonaws.com",
"created_at": "2024-04-04T11:06:00Z"
}
```
API reference to add, retrieve, list and delete attachments are [here](/v2/api-reference/attachments/create-an-attachment).
You can add multiple attachments to a resource.
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/authentication.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Authentication
> API key based authentication
All requests to Solid's platform must be made over HTTPS and authenticated via API key. You need to pass the API key in the header. You can view and manage your API keys in the Solid Dashboard. API keys must be kept secret. They should not be in your client-side code or checked into your application's code.
As an example:
1. Proceed to Create a Sub Account Holder with the API key. Set the api-key in the header.
2. Once you create a Sub Account Holder, you will receive the Sub Account Holder ID in the response.
```bash EXAMPLE theme={null}
curl --request POST \
--url https://api.sandbox.solidfi.com/v2/accounts/sub_account_holder \
--header 'Content-Type: application/json' \
--header 'api-key: ' \
--data '{
"master_account_id": "mas_743fa071316bc6beaf5dddfd05f49c30",
"type": "person",
"person": {
"first_name": "Jane",
"last_name": "Doe",
"id_type": "ssn",
"id_number": "223902234",
"date_of_birth": "1974-01-25",
"phone": "+19418405843",
"email": "jane.doe@gmail.com",
"address": {
"line1": "123 Main St",
"line2": "",
"city": "New York",
"state": "NY",
"country": "US",
"postal_code": "10001"
}
},
"verification": {
"status": "pass",
"method": "persona",
"url": "https://withpersona.com/verify?inquiry-id=inq_p1LgZj3wp5xWMk5XUhWAMrgV"
}
}'
```
IP Whitelisting is not required in Sandbox environment, but mandatory in Prod.
To further secure your data in Production, the Solid platform only accepts API requests if the originating IP address is whitelisted in the Prod Dashboard. If the IP address is mismatched, the request is discarded.
---
# Source: https://docs.solidfi.com/general/card-holders.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Card Holders
> A guide to Card Holders
The card holder, a person authorized to use the card, can only be issued a card after successfully passing the necessary OFAC check. This check and other checks (as mandated by the bank per the CIP requirements) are essential in screening and verifying the card holder.
The platform allows for flexibility in the types of card holders, depending on the type of card issued. This adaptability caters to various account holder needs and enhances the user experience.
For example
* In the case of a business spend card, the business is the account holder, and the cardholder is the person(employee) who is authorized to use the business spend card.
* In the case of a teen card, the parent is the account holder, and the card holder is the child who is authorized to use the card.
* In a typical personal checking account and debit card setup, the account holder is also the card holder.
FinTechs can create both card holder and cards using Solid APIs:
* [Create a Card Holder API](/v2/api-reference/card-holders/create-a-card-holder)
* [Create a Card API](/v2/api-reference/cards/create-a-card)
For more, see the [Card Issuance Guide](/card-issuance/introduction).
---
# Source: https://docs.solidfi.com/payments/check.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Check
> A guide to Checks
Check is a paper document that delivers funds from one account to another (usually at different banks), via the Check Clearing House.
The Check has information such as Payor, Payee, Date, Amount, Memo, and Signature.
* The Payor writes the information on the Check issued by the Payor's Bank.
* The Payee deposits the Check that is issued by the Payee's Bank.
Using the information on the Check (such as the Payor's Account Number and Routing Number and amount), the Check authorizes the Payee's Bank (ODFI) to pull the funds from the Payor's Bank (RDFI) account and deposit them into the Payee's Bank Account.
Solid's Payment capabilities support both –
* issuing and mailing a physical check ([Originate a Check Send](/v2/api-reference/transactions/originate-a-check-send)) on behalf of the Payor
* depositing a check ([Originate a Check Deposit](/v2/api-reference/transactions/originate-a-check-deposit))
---
# Source: https://docs.solidfi.com/payments/controls.md
# Source: https://docs.solidfi.com/card-issuance/controls.md
# Source: https://docs.solidfi.com/accounts/controls.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Controls
> A guide to Account Controls
Depending on the use case, a wide range of controls can be set not just at the Client level but also at the Master and Sub Account levels, each in full adherence to the bank's risk and compliance standards.
Here are some examples of controls:
* Types of Sub Accounts that need to be enabled
* Whether Sub Accounts should be issued an Account Number
* How many Sub Accounts a FinTech can create under a Master Account
* Multiple kill switches at the Master and Sub Account levels
Account controls are set during the onboarding process.
---
# Source: https://docs.solidfi.com/general/counterparties.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Counterparties
> A guide to Counterparties
A counterparty is a person or business that is the other party participating in a financial transaction. Before originating a transaction, the counterparty must pass the OFAC check. Other checks (as mandated by the bank per the CIP requirements) are essential in screening and verifying the counterparty before originating a transaction.
Every transaction originating from a sub account requires a counterparty ID, which identifies the other party. FinTechs can create a counterparty using the [Create a Counterparty API](/v2/api-reference/counterparties/create-a-counterparty).
Since the end user can make multiple transactions with the same counterparty using various form factors, the counterparty object can capture information related to different form factors, such as ACH, Wire, Check, FedNow, and RTP, providing a complete transaction history with the counterparty.
For more, see the [Payments Guide](/payments/introduction).
---
# Source: https://docs.solidfi.com/v2/api-reference/card-holders/create-a-card-holder.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Create a Card Holder
> Create a Card Holder
## OpenAPI
````yaml post /v2/issuing/card_holder
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card_holder:
post:
tags:
- Card Holders
summary: Create a Card Holder
description: Create a Card Holder
operationId: createACardHolder
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
person:
$ref: '#/components/schemas/person'
type: object
external_reference_id:
type: string
example: 6RPD1QW-W75
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace Sales Rep
description: purpose of card holder
metadata:
$ref: '#/components/schemas/metadata'
type: object
examples:
Create a Card Holder:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
person:
first_name: John
middle_name: ''
last_name: Doe
phone: '+19418405843'
email: john.doe@gmail.com
date_of_birth: '1974-01-25'
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
external_reference_id: 6RPD1QW-W75
purpose: Ace Sales Expense Card
metadata:
designation: Senior Sales Manager
employee_number: '77'
responses:
'201':
description: Create a Card Holder
content:
application/json:
schema:
$ref: '#/components/schemas/card_holder'
type: object
examples:
card_holder_example:
$ref: '#/components/examples/card_holder_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
card_holder_example:
$ref: '#/components/examples/cardholder_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
card_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
card_holder_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card_holder:
type: object
properties:
id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that issued the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
person:
$ref: '#/components/schemas/person'
type: object
external_reference_id:
type: string
example: 6RPD1QW-W75
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace Sales Rep
description: purpose of card holder
ofac:
$ref: '#/components/schemas/card_holder_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of card holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/card_holder_timestamp'
type: object
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
card_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the card holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the card holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
card_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was deactivated
examples:
card_holder_example:
value:
id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
external_reference_id: 6RPD1QW-W75
purpose: Ace Sales Rep
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
metadata:
designation: Senior Sales Manager
employee_number: '77'
attachments:
- label: Employee Badge
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
deactivated_at: '2024-04-02T21:00:00Z'
cardholder_bad_request_error:
value:
request_id: req_01900eccf45d71f0b9e38dbb9175f151
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_PHONE
message: invalid phone
field_name: phone
created_at: '2024-06-12T23:33:51Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/create-a-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Create a Card
> Create a Card
## OpenAPI
````yaml post /v2/issuing/card
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card:
post:
tags:
- Cards
summary: Create a Card
description: Create a Card
operationId: createACard
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
label:
type: string
example: Travel
description: label of the card
product:
type: string
example: business_spend
description: >-
type of card product configured based on the client's use
case
enum:
- business_spend
- consumer_debit
- business_debit
- consumer_gpr
- consumer_gpnr
- consumer_payroll
- consumer_hsa
- consumer_fsa
- consumer_govt_benefits
theme:
type: string
example: metallic
description: theme of the card configured as part of the client use case
type:
type: string
example: physical
description: type of card
enum:
- physical
- virtual
card_fulfilment:
type: object
properties:
embossing:
type: object
properties:
card_holder_name:
type: string
example: John Doe
description: name of the person to be embossed on the card
business_name:
type: string
example: Ace Inc
description: name of the business to be embossed on the card
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
controls:
type: object
properties:
allowed:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to allow on the card.
Example ["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to allow on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to allow on the card.
Example ["US","IN"]
items:
type: string
blocked:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to block on the card.
Example ["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to block on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to block on the card.
Example ["US","IN"]
items:
type: string
limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period in which the maximum amount is allowed
to be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '500.00'
description: maximum amount allowed to be spent in the set period
atm_enabled:
type: string
example: 'true'
description: >-
atm access for the card, true means enabled (by
default), false means disabled
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
metadata:
$ref: '#/components/schemas/metadata'
type: object
examples:
Create a Card:
value:
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
label: Travel
product: business_spend
theme: metallic
type: physical
card_fulfilment:
embossing:
card_holder_name: John Doe
business_name: Ace Inc
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
controls:
limit:
period: daily
max_spend_amount: '500.00'
atm_enabled: 'true'
external_reference_id: FSY52RAZ-4X
metadata:
description: Sales Team Card
responses:
'201':
description: Create a Card
content:
application/json:
schema:
$ref: '#/components/schemas/card'
type: object
examples:
card_example:
$ref: '#/components/examples/card_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
card_example:
$ref: '#/components/examples/card_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
card_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
card_example:
$ref: '#/components/examples/cardholder_not_found_error'
security:
- {}
components:
schemas:
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account under which the card was created
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
label:
type: string
example: Travel
description: label of the card
product:
type: string
example: business_spend
description: type of card product configured based on the client's use case
enum:
- business_spend
- consumer_debit
- business_debit
- consumer_gpr
- consumer_gpnr
- consumer_payroll
- consumer_hsa
- consumer_fsa
- consumer_govt_benefits
theme:
type: string
example: metallic
description: theme of the card configured as part of the client use case
type:
type: string
example: physical
description: type of card
enum:
- physical
- virtual
expiry_month:
type: string
example: '12'
description: expiration month of the card
expiry_year:
type: string
example: '2025'
description: expiration year of the card
last4:
type: string
example: '5275'
description: last 4 digits of the card number
card_fulfilment:
type: object
properties:
embossing:
type: object
properties:
card_holder_name:
type: string
example: John Doe
description: name of the person to be embossed on the card
business_name:
type: string
example: Ace Inc
description: name of the business to be embossed on the card
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
tracking:
type: object
properties:
status:
type: string
example: delivered
description: delivery status of the card
enum:
- pending
- delivered
- canceled
- failure
- returned
- shipped
eta:
type: string
example: '2024-05-02'
description: estimated date of arrival for the shipped card
number:
type: string
example: '1231233'
description: tracking number if shipped via USPS Priority or UPS Next Day
url:
type: string
example: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
description: tracking URL if shipped via USPS Priority or UPS Next Day
provider:
type: string
example: usps
description: shipping provider (eg. USPS) that shipped the card
controls:
type: object
properties:
allowed:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to allow on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to allow on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to allow on the card. Example
["US","IN"]
items:
type: string
blocked:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to block on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to block on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to block on the card. Example
["US","IN"]
items:
type: string
limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period in which the maximum amount is allowed to be
spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '500.00'
description: maximum amount allowed to be spent in the set period
atm_enabled:
type: string
example: 'true'
description: >-
atm access for the card, true means enabled (by default), false
means disabled
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of the card
enum:
- open
- closed
- blocked
- locked
timestamps:
$ref: '#/components/schemas/card_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
card_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was closed
examples:
card_example:
value:
id: crd_7948d9a96706dd05360a340002de725f
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
label: Travel
product: business_spend
theme: metallic
type: physical
expiry_month: '12'
expiry_year: '2022'
last4: '5275'
card_fulfilment:
embossing:
card_holder_name: John Doe
business_name: Ace Inc
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
tracking:
status: delivered
eta: '2024-05-02'
number: '1231233'
url: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
provider: usps
controls:
allowed:
merchants: []
categories: []
countries: []
blocked:
merchants: []
categories: []
countries: []
limit:
period: daily
max_spend_amount: '500.00'
max_spend_per_transaction: '100.00'
max_spend_count: '10'
atm_enabled: 'true'
external_reference_id: FSY52RAZ-4X
attachments:
- label: United
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
description: Sales Team Card
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
closed_at: '2024-04-02T21:00:00Z'
card_bad_request_error:
value:
request_id: req_01900ecf1c067ef39e132557e0a5cd39
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: enum is required
field_name: card_type
created_at: '2024-06-12T23:36:12Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
cardholder_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/counterparties/create-a-counterparty.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Create a Counterparty
> Create a Counterparty
## OpenAPI
````yaml post /v2/payments/counterparty
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/counterparty:
post:
tags:
- Counterparties
summary: Create a Counterparty
description: Create a Counterparty
operationId: createACounterparty
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: >-
unique id of the sub account under which the counterparty
was created
label:
type: string
example: Development Vendor
description: label of the counterparty
type:
type: string
example: person
description: type of counterparty
enum:
- person
- business
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
intra_account:
$ref: '#/components/schemas/counterparty_intra_account'
type: object
ach:
$ref: '#/components/schemas/counterparty_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/counterparty_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/counterparty_international_wire'
type: object
rtp:
$ref: '#/components/schemas/counterparty_rtp'
type: object
fednow:
$ref: '#/components/schemas/counterparty_fednow'
type: object
check:
$ref: '#/components/schemas/counterparty_check'
type: object
debit_card:
$ref: '#/components/schemas/counterparty_debit_card'
type: object
purpose:
type: string
example: Offshore dev center
description: purpose of counterparty
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
metadata:
$ref: '#/components/schemas/metadata'
type: object
examples:
Create a Counterparty:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
label: Development Vendor
type: person
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
intra_account:
sub_account_number: '95483674098723'
sub_account_id: sub_cda1e562657c41e553104b10aad3fe70
ach:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
rtp:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
domestic_wire:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
international_wire:
account_number: '920020006167511'
beneficiary_bank:
identifier_code: ICICINBBNRI
name: ICICI Bank
address:
line1: 256 Main St
line2: ''
city: Bengaluru
state: KA
country: IN
postal_code: '900009'
correspondent_bank:
identifier_code: SCBLUS33XXX
name: STANDARD CHARTERED BANK
address:
line1: 1095 12th Ave
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
purpose: Offshore dev center
external_reference_id: TW-9L1L2-UVV
metadata:
vendor_id: VID-0987ACR
responses:
'201':
description: Create a Counterparty
content:
application/json:
schema:
$ref: '#/components/schemas/counterparty'
type: object
examples:
counterparty_example:
$ref: '#/components/examples/counterparty_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
counterparty_example:
$ref: '#/components/examples/counterparty_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
counterparty_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
counterparty_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
counterparty_intra_account:
type: object
properties:
sub_account_number:
type: string
example: '95483674098723'
description: sub account number of the counterparty
sub_account_id:
type: string
example: sub_cda1e562657c41e553104b10aad3fe70
description: sub account id of the counterparty
counterparty_ach:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: ACH routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
description: if the account is verified - true or false
example: pass
enum:
- pass
- fail
- review
counterparty_domestic_wire:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: Wire routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
counterparty_international_wire:
type: object
properties:
account_number:
type: string
example: '920020006167511'
description: bank account number of the counterparty
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
counterparty_rtp:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: RTP routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
example: pass
description: if the account is verified
enum:
- pass
- fail
- review
counterparty_fednow:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: FedNow routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
example: pass
description: if the account is verified or not
enum:
- pass
- fail
- review
counterparty_check:
type: object
properties:
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
counterparty_debit_card:
type: object
properties:
card_number:
type: string
example: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
description: tokenized card number of counterparty's debit card
last4:
type: string
example: '9990'
description: last4 of counterparty's debit card
expiry_month:
type: string
example: '10'
description: expiration month of counterparty's debit card
expiry_year:
type: string
example: '2024'
description: expiration year of counterparty's debit card
cvv:
type: string
example: tok_live_7CVyHuQR7aAjCZivYzLbuP_9990
description: cvv code of counterparty's debit card
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
pull_enabled:
type: string
example: 'true'
description: if debit pull is enabled or disabled by the debit card issuer
enum:
- 'true'
- 'false'
push_enabled:
type: string
example: 'true'
description: if debit pull is enabled or disabled by the debit card issuer
enum:
- 'true'
- 'false'
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client to which the counterparty belongs
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: >-
unique id of the sub account under which the counterparty was
created
label:
type: string
example: Development Vendor
description: label of the counterparty
type:
type: string
example: person
description: type of counterparty
enum:
- person
- business
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
intra_account:
$ref: '#/components/schemas/counterparty_intra_account'
type: object
ach:
$ref: '#/components/schemas/counterparty_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/counterparty_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/counterparty_international_wire'
type: object
rtp:
$ref: '#/components/schemas/counterparty_rtp'
type: object
fednow:
$ref: '#/components/schemas/counterparty_fednow'
type: object
check:
$ref: '#/components/schemas/counterparty_check'
type: object
debit_card:
$ref: '#/components/schemas/counterparty_debit_card'
type: object
purpose:
type: string
example: Offshore dev center
description: purpose of counterparty
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
ofac:
$ref: '#/components/schemas/counterparty_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of counterparty
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/counterparty_timestamp'
type: object
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
counterparty_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
counterparty_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was deactivated
examples:
counterparty_example:
value:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
label: Development Vendor
type: person
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
intra_account:
sub_account_number: '95483674098723'
sub_account_id: sub_cda1e562657c41e553104b10aad3fe70
ach:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
domestic_wire:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
international_wire:
account_number: '920020006167511'
beneficiary_bank:
identifier_code: ICICINBBNRI
name: ICICI Bank
address:
line1: 256 Main St
line2: ''
city: Bengaluru
state: KA
country: IN
postal_code: '900009'
correspondent_bank:
identifier_code: SCBLUS33XXX
name: STANDARD CHARTERED BANK
address:
line1: 1095 12th Ave
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
rtp:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
fednow:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
check:
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
debit_card:
card_number: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
last4: '9990'
expiry_month: '10'
expiry_year: '2024'
cvv: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
pull_enabled: true
push_enabled: true
purpose: Offshore dev center
external_reference_id: TW-9L1L2-UVV
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments:
- label: Dev Contract
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
vendor_id: VID-0987ACR
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
counterparty_bad_request_error:
value:
request_id: req_01900eca101a7ca3ae62bf62191efadc
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: type must be properly set
field_name: ''
created_at: '2024-06-12T23:30:41Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-account-holders/create-a-sub-account-holder.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Create a Sub Account Holder
> Create a Sub Account Holder
## OpenAPI
````yaml post /v2/accounts/sub_account_holder
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account_holder:
post:
tags:
- Sub Account Holders
summary: Create a Sub Account Holder
description: Create a Sub Account Holder
operationId: createASubAccountHolder
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
type:
type: string
description: type of sub account holder
enum:
- person
- business
example: person
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
verification:
$ref: '#/components/schemas/verification'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
metadata:
$ref: '#/components/schemas/metadata'
type: object
required:
- master_account_id
- type
examples:
Create a Sub Account Holder:
value:
master_account_id: mas_456
type: person
person:
first_name: Jane
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: jane.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
verification:
status: pass
method: persona
url: >-
https://withpersona.com/verify?inquiry-id=inq_p1LgZj3wp5xWMk5XUhWAMrgV
responses:
'201':
description: Create a Sub Account Holder
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account_holder'
type: object
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
verification:
type: object
properties:
status:
type: string
example: pass
description: verification status of the sub account holder
enum:
- pass
- fail
method:
type: string
example: persona
description: >-
sub account holder verification method. It could be an external
vendor used to verify the person or business (Ex: alloy)
url:
type: string
example: >-
https://withpersona.com/verify?inquiry-id=inq_p1LgZj3wp5xWMk5XUhWAMrgV
description: >-
url to the person or business verification result. It could be a
link to the external vendor
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_holder:
properties:
id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the sub account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
ofac:
$ref: '#/components/schemas/sub_account_holder_ofac'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of sub account holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/sub_account_holder_timestamp'
type: object
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
sub_account_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the sub account holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the sub account holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
sub_account_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was deactivated
examples:
sub_account_holder_example:
value:
id: sah_5ccfeef0adf0cbe2aa0980d2c9509b2d
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
type: person
person:
first_name: Jane
last_name: Doe
id_type: ssn
id_number: '223913234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: jane.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
kyc:
id: kyc_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/verify?id=kyc_01arz3ndektsv4rrffq69g5fav
details:
name:
status: pass
reasons: null
address:
status: pass
reasons: null
dob:
status: pass
reasons: null
ssn:
status: pass
reasons: null
phone:
status: pass
reasons: null
email:
status: pass
reasons: null
watchlist:
status: pass
reasons: null
fraud:
status: pass
reasons: null
idv:
id: idv_01arz3ndektsv4rrffq69g5fav
status: fail
method: solid
url: https://dashboard.solidfi.com/id=idv_01arz3ndektsv4rrffq69g5fav
reasons: null
business: null
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
external_reference_id: TW-9L1L2-UVV
purpose: Ace sub-account holder
attachments:
- label: formation
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
customer_code: '1501'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
deactivated_at: '2024-04-01T21:00:00Z'
sub_account_holder_bad_request_error:
value:
request_id: req_01900ec5ebd37bf2a18b90948129e419
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: no type specified!
field_name: type
created_at: '2024-06-12T23:26:10Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-accounts/create-a-sub-account.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Create a Sub Account
> Create a Sub Account
## OpenAPI
````yaml post /v2/accounts/sub_account
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account:
post:
tags:
- Sub Accounts
summary: Create a Sub Account
description: Create a Sub Account
operationId: createASubAccount
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account
label:
type: string
example: Ace payments
description: label of the sub account
type:
type: string
example: cash
description: type of the sub account
enum:
- cash
- prepaid
- checking
external_reference_id:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Sub account to pay offshore dev team
description: purpose of sub account
metadata:
$ref: '#/components/schemas/metadata'
type: object
examples:
Create a Sub Account:
value:
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
label: Ace payments
type: cash
responses:
'201':
description: Create a Sub Account
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account'
type: object
examples:
sub_account_example:
$ref: '#/components/examples/sub_account_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_example:
$ref: '#/components/examples/sub_account_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/sub_account_holder_not_found_error'
security:
- {}
components:
schemas:
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the master account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: >-
unique id of the master account under which the sub account was
created
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_holder_name:
type: string
example: Ace LLC
description: sub account holder name
label:
type: string
example: Ace payments
description: label of the sub account
type:
type: string
example: cash
description: type of the sub account
enum:
- cash
- prepaid
- checking
account_number:
type: string
example: '9540861337293709'
description: account number of the sub account
routing_number:
type: string
example: '123206972'
description: 9 digit routing number of the sub account
sponsor_bank:
type: string
example: Lewis and Clark Bank
description: sponsor bank name
available_balance:
type: string
example: '0.00'
description: 'available balance in the sub account '
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account
pending_debits:
type: string
example: '0.00'
description: total pending debits to the sub account
currency:
type: string
example: usd
description: currency of the sub account
enum:
- usd
external_reference_id:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Sub account to pay offshore dev team
description: purpose of sub account
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of sub account
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
- locked
timestamps:
$ref: '#/components/schemas/sub_account_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
sub_account_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was closed
examples:
sub_account_example:
value:
id: sub_bda1e562657c41e553104b10aad3fe70
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_holder_name: Ace LLC
label: Payments Account
type: cash
available_balance: '0.00'
pending_credits: '0.00'
pending_debits: '0.00'
account_number: '9540861337293709'
routing_number: '123321123'
sponsor_bank: Sponsor Bank
currency: usd
external_reference_id: XV-H27LGD-FX
purpose: Sub account to pay offshore dev team
attachments:
- label: contract
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
master_account_code: '001'
status: open
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
deactivated_at: '2024-04-03T21:00:00Z'
sub_account_bad_request_error:
value:
request_id: req_01900ec875fe714d9cdf88b6bea6cbca
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: invalid field
field_name: ''
created_at: '2024-06-12T23:28:56Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
sub_account_holder_not_found_error:
value:
request_id: req_01900e9f737376be8aa2aa9c351ff598
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account holder by client id in qldb
field_name: ''
created_at: '2024-06-12T22:44:09Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/webhooks/create-a-webhook.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Create a Webhook
> Create a Webhook
## OpenAPI
````yaml post /v2/webhook
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/webhook:
post:
tags:
- Webhooks
summary: Create a Webhook
description: Create a Webhook
operationId: createAWebhook
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
description:
type: string
example: Transaction webhook
description: description of the webhook
url:
type: string
example: http://test-url.com/txn-webhook
description: url of the webhook endpoint
events:
type: array
description: >-
an array of events to enable for this webhook endpoint.
Example
["transaction.status.declined","transaction.status.received"]
items:
type: string
example: transaction.status.declined
examples:
Create a Webhook:
value:
description: Transaction Webhook
url: http://test-url.com/txn-webhook
events:
- transaction.status.declined
- transaction.status.received
responses:
'201':
description: Create a Webhook
content:
application/json:
schema:
$ref: '#/components/schemas/create_webhook_response'
type: object
examples:
create_webhook_example:
$ref: '#/components/examples/webhook_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
create_webhook_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
create_webhook_response:
type: object
properties:
id:
type: string
example: whk_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the webhook created
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that issued the card
description:
type: string
example: Transaction webhook
description: description of the webhook
url:
type: string
example: http://test-url.com/txn-webhook
description: url of the webhook endpoint
events:
type: array
description: >-
an array of events to enable for this webhook endpoint. Example
["transaction.status.declined","transaction.status.received"]
items:
type: string
secret:
type: string
example: pPibTgWHeiAAlJR7I0gzuXJpU3iNcwlf
description: >-
webhook signing secret which is returned only at the time of webhook
creation
status:
type: string
example: active
description: status of the webhook
enum:
- active
- inactive
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was created
updated_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was updated
deleted_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was deleted
examples:
webhook_example:
value:
id: whk_0190e7185e4874dab687e7af88f6f368
client_id: cli_01901368dbc174a9864a7cb156b0a207
description: Transaction Webhook
url: http://test-url.com/txn-webhook
events:
- transaction.status.declined
- transaction.status.received
status: active
timestamps:
created_at: '2024-07-24T23:34:12Z'
updated_at: '2024-07-25T10:22:11Z'
deleted_at: '2024-07-26T05:45:19Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/attachments/create-an-attachment.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Create an Attachment
> Create an Attachment
## OpenAPI
````yaml post /v2/attachment
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/attachment:
post:
tags:
- Attachments
summary: Create an Attachment
description: Create an Attachment
operationId: createAnAttachment
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
reference_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: resource id to which the attachment belongs
label:
type: string
example: formation
description: label of the attachment
examples:
Create an Attachment:
value:
reference_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
label: formation
responses:
'201':
description: Create an Attachment
content:
application/json:
schema:
$ref: '#/components/schemas/create_attachment_response'
type: object
examples:
create_attachment_example:
$ref: '#/components/examples/attachment_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
attachment_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
create_attachment_response:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
reference_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: resource id to which the attachment belongs
label:
type: string
example: formation
description: label of the attachment
url:
type: string
example: http://bucket.s3-website-us-east-1.amazonaws.com
description: url to upload the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the attachment was created
deleted_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the attachment was deleted
examples:
attachment_example:
value:
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
reference_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
label: formation
url: http://bucket.s3-website-us-east-1.amazonaws.com
created_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/webhooks/delete-a-webhook.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Delete a Webhook
> Delete a Webhook
## OpenAPI
````yaml delete /v2/webhook/{webhook_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/webhook/{webhook_id}:
parameters:
- name: webhook_id
in: path
required: true
schema:
type: string
delete:
tags:
- Webhooks
summary: Delete a Webhook
description: Delete a Webhook
operationId: deleteAWebhook
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'204':
description: The webhook was deleted successfully.
````
---
# Source: https://docs.solidfi.com/v2/api-reference/attachments/delete-an-attachment.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Delete an Attachment
> Delete an Attachment
## OpenAPI
````yaml delete /v2/attachment/{attachment_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/attachment/{attachment_id}:
parameters:
- name: attachment_id
in: path
required: true
schema:
type: string
delete:
tags:
- Attachments
summary: Delete an Attachment
description: Delete an Attachment
operationId: deleteAnAttachment
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'204':
description: The attachment was deleted successfully.
````
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/environments.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Environments
> Sandbox and Prod environments
For ease of development, Solid provides separate Sandbox and Production environments. The dashboards for both can be accessed [here](https://dashboard.sandbox.solidfi.com/login).
### Sandbox
> API Base URL: [https://api.sandbox.solidfi.com](https://api.sandbox.solidfi.com)
### Prod
> API Base URL: [https://api.prod.solidfi.com](https://api.prod.solidfi.com)
Any activity in the Sandbox environment is not sent to the bank and does not affect your Prod instance.
---
# Source: https://docs.solidfi.com/general/flow-of-funds.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Flow of Funds
> A guide to Flow of Funds
The flow of funds diagram visualizes money movement in and out of the Master and Sub Accounts. It is designed based on the FinTech's use case and must be approved by the partner bank.
## Outgoing Funds from a Sub Account (ODFI)
For example, there is an outgoing ACH debit of \$10 to an external bank account:
1. All outgoing transactions can only be originated from the Sub Account. In the example below, a \$10 ACH debit transaction originated from the Sub Account, and it results in a Sub Account transaction txn\_1
2. The outgoing transaction is subsequently debited from the Master Account and sent for clearing (via the partner bank). This results in a Master Account transaction txn\_2
3. txn\_2 reconciles txn\_1
## Incoming Funds into a Sub Account (ODFI)
For example, there is an incoming ACH credit of \$10 from an external bank account:
1. All incoming transactions are first ledgered in the Master Account. \$10 is credited to the Master Account, and it results in a Master Account transaction txn\_1
2. The incoming transaction is subsequently credited to the Sub Account based on the beneficiary account number. This results in a Sub Account transaction txn\_2
3. txn\_2 reconciles txn\_1
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/idempotency.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Idempotency
> Solid Platform supports idempotency
The Solid Platform supports idempotency to help prevent you from accidentally calling the same API call twice.
An idempotency key uniquely identifies each API request. You must pass the idempotency key in the header (idempotency-key) so that the Solid platform can identify the API request. This key should be unique, preferably an internal UUID you store on your database.
```bash Example theme={null}
curl --request POST \
--url https://api.sandbox.solidfi.com/v2/accounts/sub_account_holder \
--header 'Content-Type: application/json' \
--header 'api-key: ' \
--header 'idempotency-key: 9c91bbca-67a0-11ec-90d6-0242ac120003' \
```
Idempotent requests are optional, as in, you can make API calls without an idempotency key. All Solid API POST (Create calls) and PATCH (Update calls) support idempotency. An idempotency key sent for any other requests (GET, DELETE, etc.) will be ignored and not be saved.
Idempotency can be helpful if you instruct Solid to move money or issue a card.
#### Please note:
* All API responses are cached with the idempotency key (if sent in the header) irrespective of status code, and reuse of the same key will return the cached response (only exception here is rate limit error)
* When the program gets 409 status code: EC\_QLDB\_OCC\_ERROR\_RETRY" and sysMessage": "qldb occ error please retry", try with a new idempotency key
* Solid platform will respond with the original response object if you issue a new request with the same idempotency key
* In case of a 429 rate limit error, you can reuse the idempotency key. For other error codes, reusing the idempotency key will get the response of the previous request
* Idempotency keys expire after 24 hours
---
# Source: https://docs.solidfi.com/payments/intra-account.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Intra Account
> A guide to Intra Account (On-Us)
Intra Account is a Push & Pull payment method supported by the Solid platform. Money movement between Sub Accounts are basically Intra Account (On-Us) transactions.
Steps to originate an Intra Account (On-Us) payment transaction:
Via the Dashboard or the API, [Create a Counterparty](/v2/api-reference/counterparties/create-a-counterparty) with the beneficiary account details in the `intra_account` sub-object.
Via the Dashboard or the API, [Originate an Intra Account Push](/v2/api-reference/transactions/originate-an-intra-account-push) (where money is pushed to another Sub Account) or [Originate an Intra Account Pull](/v2/api-reference/transactions/originate-an-intra-account-pull) (where money is pulled from another Sub Account)
Pass the necessary parameters (originating sub\_account\_id, counterparty\_id, amount) and other optional parameters as needed.
```
{
"sub_account_id": "sub_bda1e562657c41e553104b10aad3fe70",
"counterparty_id": "ctp_8e5541c8a9e50c3af3b0daacf9175130",
"amount": "4570.00",
"description": "May Salary",
"external_reference_id": "123-9088-2"
}
```
Congratulations, you have now successfully Originated an Intra Account (On-Us) transaction!
**Settlement Time**: Instant
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/introduction.md
# Source: https://docs.solidfi.com/payments/introduction.md
# Source: https://docs.solidfi.com/general/introduction.md
# Source: https://docs.solidfi.com/card-issuance/introduction.md
# Source: https://docs.solidfi.com/accounts/introduction.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Introduction
> An introduction to Accounts
An account is a resource with a built-in ledger that allows you to transfer money in and out. An account starts with a \$0 balance. You need an account to:
* Deposit funds
* Make payments
* Issue a card
There are two types of accounts:
1. Master Account: The Master Account, which mirrors the FBO set up at the bank for FinTech, can only be provisioned after the Master Account Holder is created.
For more, see the [Master Accounts Guide](/accounts/master-accounts).
2. Sub Account: Sub Accounts are created under a Master Account and can be created after the Sub Account Holder is created.
For more, see the [Sub Accounts Guide](/accounts/sub-accounts).
---
# Source: https://docs.solidfi.com/v2/api-reference/attachments/list-all-attachments.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Attachments
> List all Attachments
## OpenAPI
````yaml get /v2/attachment
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/attachment:
get:
tags:
- Attachments
summary: List all Attachments
description: List all Attachments
operationId: listAllAttachments
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
responses:
'200':
description: List all Attachments
content:
application/json:
schema:
$ref: '#/components/schemas/list_attachment'
type: object
examples:
list_attachment_example:
$ref: '#/components/examples/list_attachment_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_attachment_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_attachment:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/attachment'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
attachment:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
reference_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: resource id to which the attachment belongs
label:
type: string
example: formation
description: label of the attachment
url:
type: string
example: http://bucket.s3-website-us-east-1.amazonaws.com
description: url to download the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the attachment was created
deleted_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the attachment was deleted
examples:
list_attachment_example:
value:
total: 1
data:
- id: att_a8d2b191fa0e960d8e49a4bfd320e07b
reference_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
label: formation
url: ''
created_at: '2024-04-04T11:06:00Z'
has_more: 'true'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/card-holders/list-all-card-holders.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Card Holders
> List all Card Holders
## OpenAPI
````yaml get /v2/issuing/card_holder
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card_holder:
get:
tags:
- Card Holders
summary: List all Card Holders
description: List all Card Holders
operationId: listAllCardHolders
parameters:
- name: master_account_id
in: query
schema:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: List all Card Holders
content:
application/json:
schema:
$ref: '#/components/schemas/list_card_holder'
type: object
examples:
list_card_holder_example:
$ref: '#/components/examples/list_card_holder_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_card_holder_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_card_holder:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/card_holder'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
card_holder:
type: object
properties:
id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that issued the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
person:
$ref: '#/components/schemas/person'
type: object
external_reference_id:
type: string
example: 6RPD1QW-W75
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace Sales Rep
description: purpose of card holder
ofac:
$ref: '#/components/schemas/card_holder_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of card holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/card_holder_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
card_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the card holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the card holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
examples:
list_card_holder_example:
value:
total: 1
data:
- id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
external_reference_id: 6RPD1QW-W75
purpose: Ace Sales Rep
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
metadata:
designation: Senior Sales Manager
employee_number: '77'
attachments:
- label: Employee Badge
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
deactivated_at: '2024-04-02T21:00:00Z'
has_more: 'true'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/list-all-cards.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Cards
> List all Cards
## OpenAPI
````yaml get /v2/issuing/card
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card:
get:
tags:
- Cards
summary: List all Cards
description: List all Cards
operationId: listAllCards
parameters:
- name: sub_account_id
in: query
schema:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
- name: card_holder_id
in: query
schema:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: List all Cards
content:
application/json:
schema:
$ref: '#/components/schemas/list_card'
type: object
examples:
list_card_example:
$ref: '#/components/examples/list_card_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_card_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_card:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/card'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account under which the card was created
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
label:
type: string
example: Travel
description: label of the card
product:
type: string
example: business_spend
description: type of card product configured based on the client's use case
enum:
- business_spend
- consumer_debit
- business_debit
- consumer_gpr
- consumer_gpnr
- consumer_payroll
- consumer_hsa
- consumer_fsa
- consumer_govt_benefits
theme:
type: string
example: metallic
description: theme of the card configured as part of the client use case
type:
type: string
example: physical
description: type of card
enum:
- physical
- virtual
expiry_month:
type: string
example: '12'
description: expiration month of the card
expiry_year:
type: string
example: '2025'
description: expiration year of the card
last4:
type: string
example: '5275'
description: last 4 digits of the card number
card_fulfilment:
type: object
properties:
embossing:
type: object
properties:
card_holder_name:
type: string
example: John Doe
description: name of the person to be embossed on the card
business_name:
type: string
example: Ace Inc
description: name of the business to be embossed on the card
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
tracking:
type: object
properties:
status:
type: string
example: delivered
description: delivery status of the card
enum:
- pending
- delivered
- canceled
- failure
- returned
- shipped
eta:
type: string
example: '2024-05-02'
description: estimated date of arrival for the shipped card
number:
type: string
example: '1231233'
description: tracking number if shipped via USPS Priority or UPS Next Day
url:
type: string
example: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
description: tracking URL if shipped via USPS Priority or UPS Next Day
provider:
type: string
example: usps
description: shipping provider (eg. USPS) that shipped the card
controls:
type: object
properties:
allowed:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to allow on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to allow on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to allow on the card. Example
["US","IN"]
items:
type: string
blocked:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to block on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to block on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to block on the card. Example
["US","IN"]
items:
type: string
limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period in which the maximum amount is allowed to be
spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '500.00'
description: maximum amount allowed to be spent in the set period
atm_enabled:
type: string
example: 'true'
description: >-
atm access for the card, true means enabled (by default), false
means disabled
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of the card
enum:
- open
- closed
- blocked
- locked
timestamps:
$ref: '#/components/schemas/card_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was closed
examples:
list_card_example:
value:
total: 1
data:
- id: crd_7948d9a96706dd05360a340002de725f
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
label: Travel
product: business_spend
theme: metallic
type: physical
expiry_month: '12'
expiry_year: '2022'
last4: '5275'
card_fulfilment:
embossing:
card_holder_name: John Doe
business_name: Ace Inc
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
tracking:
status: delivered
eta: '2024-05-02'
number: '1231233'
url: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
provider: usps
controls:
allowed:
merchants: []
categories: []
countries: []
blocked:
merchants: []
categories: []
countries: []
limit:
period: daily
max_spend_amount: '500.00'
max_spend_per_transaction: '100.00'
max_spend_count: '10'
atm_enabled: 'true'
external_reference_id: FSY52RAZ-4X
attachments:
- label: United
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
description: Sales Team Card
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
closed_at: '2024-04-02T21:00:00Z'
has_more: 'true'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/counterparties/list-all-counterparties.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Counterparties
> List all Counterparties
## OpenAPI
````yaml get /v2/payments/counterparty
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/counterparty:
get:
tags:
- Counterparties
summary: List all Counterparties
description: List all Counterparties
operationId: listAllCounterparties
parameters:
- name: sub_account_id
in: query
schema:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
- name: external_reference_id
in: query
schema:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
- name: status
in: query
schema:
type: string
example: activated
description: status of counterparty
enum:
- pending_activation
- activated
- suspended
- deactivated
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: List all Counterparties
content:
application/json:
schema:
$ref: '#/components/schemas/list_counterparty'
type: object
examples:
list_counterparty_example:
$ref: '#/components/examples/list_counterparty_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_counterparty_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_counterparty:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/counterparty'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client to which the counterparty belongs
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: >-
unique id of the sub account under which the counterparty was
created
label:
type: string
example: Development Vendor
description: label of the counterparty
type:
type: string
example: person
description: type of counterparty
enum:
- person
- business
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
intra_account:
$ref: '#/components/schemas/counterparty_intra_account'
type: object
ach:
$ref: '#/components/schemas/counterparty_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/counterparty_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/counterparty_international_wire'
type: object
rtp:
$ref: '#/components/schemas/counterparty_rtp'
type: object
fednow:
$ref: '#/components/schemas/counterparty_fednow'
type: object
check:
$ref: '#/components/schemas/counterparty_check'
type: object
debit_card:
$ref: '#/components/schemas/counterparty_debit_card'
type: object
purpose:
type: string
example: Offshore dev center
description: purpose of counterparty
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
ofac:
$ref: '#/components/schemas/counterparty_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of counterparty
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/counterparty_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
counterparty_intra_account:
type: object
properties:
sub_account_number:
type: string
example: '95483674098723'
description: sub account number of the counterparty
sub_account_id:
type: string
example: sub_cda1e562657c41e553104b10aad3fe70
description: sub account id of the counterparty
counterparty_ach:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: ACH routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
description: if the account is verified - true or false
example: pass
enum:
- pass
- fail
- review
counterparty_domestic_wire:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: Wire routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
counterparty_international_wire:
type: object
properties:
account_number:
type: string
example: '920020006167511'
description: bank account number of the counterparty
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
counterparty_rtp:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: RTP routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
example: pass
description: if the account is verified
enum:
- pass
- fail
- review
counterparty_fednow:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: FedNow routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
example: pass
description: if the account is verified or not
enum:
- pass
- fail
- review
counterparty_check:
type: object
properties:
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
counterparty_debit_card:
type: object
properties:
card_number:
type: string
example: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
description: tokenized card number of counterparty's debit card
last4:
type: string
example: '9990'
description: last4 of counterparty's debit card
expiry_month:
type: string
example: '10'
description: expiration month of counterparty's debit card
expiry_year:
type: string
example: '2024'
description: expiration year of counterparty's debit card
cvv:
type: string
example: tok_live_7CVyHuQR7aAjCZivYzLbuP_9990
description: cvv code of counterparty's debit card
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
pull_enabled:
type: string
example: 'true'
description: if debit pull is enabled or disabled by the debit card issuer
enum:
- 'true'
- 'false'
push_enabled:
type: string
example: 'true'
description: if debit pull is enabled or disabled by the debit card issuer
enum:
- 'true'
- 'false'
counterparty_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
counterparty_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
examples:
list_counterparty_example:
value:
total: 1
data:
- value:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
label: Development Vendor
type: person
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
intra_account:
sub_account_number: '95483674098723'
sub_account_id: sub_cda1e562657c41e553104b10aad3fe70
ach:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
domestic_wire:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
international_wire:
account_number: '920020006167511'
beneficiary_bank:
identifier_code: ICICINBBNRI
name: ICICI Bank
address:
line1: 256 Main St
line2: ''
city: Bengaluru
state: KA
country: IN
postal_code: '900009'
correspondent_bank:
identifier_code: SCBLUS33XXX
name: STANDARD CHARTERED BANK
address:
line1: 1095 12th Ave
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
rtp:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
fednow:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
check:
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
debit_card:
card_number: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
last4: '9990'
expiry_month: '10'
expiry_year: '2024'
cvv: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
pull_enabled: true
push_enabled: true
purpose: Offshore dev center
external_reference_id: TW-9L1L2-UVV
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments:
- label: Dev Contract
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
vendor_id: VID-0987ACR
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
has_more: 'true'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/master-accounts/list-all-master-accounts.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Master Accounts
> List all Master Accounts
## OpenAPI
````yaml get /v2/accounts/master_account
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/master_account:
get:
tags:
- Master Accounts
summary: List all Master Accounts
description: List all Master Accounts
operationId: listAllMasterAccounts
parameters:
- name: master_account_holder_id
in: query
schema:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
- name: status
in: query
schema:
type: string
example: open
description: status of master account
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
- locked
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
responses:
'200':
description: List all Master Accounts
content:
application/json:
schema:
$ref: '#/components/schemas/list_master_account'
type: object
examples:
list_master_account_example:
$ref: '#/components/examples/list_master_account_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_master_account_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_master_account:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/master_account'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
master_account:
type: object
properties:
id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the master account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
label:
type: string
example: Payments Account
description: label of the master account
available_balance:
type: string
example: '104100.41'
description: available balance in the master account
pending_credits:
type: string
example: '1198.50'
description: total pending credits to the master account
pending_debits:
type: string
example: '390.10'
description: total pending debits to the master account
account_number:
type: string
example: '9545931209'
description: account number of the master account
routing_number:
type: string
example: '123321123'
description: 9 digit routing number of the master account
sponsor_bank:
type: string
example: Lewis and Clark Bank
description: sponsor bank name
currency:
type: string
example: usd
description: currency of the master account
enum:
- usd
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Payment Ops Master Account
description: purpose of master account
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
description: ''
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of master account
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
- locked
timestamps:
$ref: '#/components/schemas/master_account_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
master_account_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the master account was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the master account was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the master account was closed
examples:
list_master_account_example:
value:
total: 1
data:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
label: Payments Account
available_balance: '104100.41'
pending_credits: '1198.50'
pending_debits: '390.10'
account_number: '9545931209'
routing_number: '123321123'
sponsor_bank: Sponsor Bank
currency: usd
external_reference_id: XV-H27LGD-FX
purpose: Payment Ops Master Account
attachments:
- label: flow of funds doc
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
master_account_code: '001'
status: open
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
closed_at: '2024-04-03T21:00:00Z'
has_more: 'true'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-account-holders/list-all-sub-account-holders.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Sub Account Holders
> List all Sub Account Holders
## OpenAPI
````yaml get /v2/accounts/sub_account_holder
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account_holder:
get:
tags:
- Sub Account Holders
summary: List all Sub Account Holders
description: List all Sub Account Holders
operationId: listAllSubAccountHolders
parameters:
- name: master_account_id
in: query
schema:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
- name: sub_account_id
in: query
schema:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
- name: external_reference_id
in: query
schema:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: List all Sub Account Holders
content:
application/json:
schema:
$ref: '#/components/schemas/list_sub_account_holder'
type: object
examples:
list_sub_account_holder_example:
$ref: '#/components/examples/list_sub_account_holder_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_sub_account_holder_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_sub_account_holder:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/sub_account_holder'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
sub_account_holder:
properties:
id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the sub account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
ofac:
$ref: '#/components/schemas/sub_account_holder_ofac'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of sub account holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/sub_account_holder_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
sub_account_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the sub account holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the sub account holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
examples:
list_sub_account_holder_example:
value:
total: 1
data:
- id: sah_5ccfeef0adf0cbe2aa0980d2c9509b2d
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
type: person
person:
first_name: Jane
last_name: Doe
id_type: ssn
id_number: '223913234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: jane.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
kyc:
id: kyc_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/verify?id=kyc_01arz3ndektsv4rrffq69g5fav
details:
name:
status: pass
reasons: null
address:
status: pass
reasons: null
dob:
status: pass
reasons: null
ssn:
status: pass
reasons: null
phone:
status: pass
reasons: null
email:
status: pass
reasons: null
watchlist:
status: pass
reasons: null
fraud:
status: pass
reasons: null
idv:
id: idv_01arz3ndektsv4rrffq69g5fav
status: fail
method: solid
url: >-
https://dashboard.solidfi.com/id=idv_01arz3ndektsv4rrffq69g5fav
reasons: null
business: null
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
external_reference_id: TW-9L1L2-UVV
purpose: Ace sub-account holder
attachments:
- label: formation
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
customer_code: '1501'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
deactivated_at: '2024-04-01T21:00:00Z'
has_more: 'true'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-accounts/list-all-sub-accounts.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Sub Accounts
> List all Sub Accounts
## OpenAPI
````yaml get /v2/accounts/sub_account
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account:
get:
tags:
- Sub Accounts
summary: List all Sub Accounts
description: List all Sub Accounts
operationId: listAllSubAccounts
parameters:
- name: sub_account_holder_id
in: query
schema:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
- name: master_account_id
in: query
schema:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
- name: status
in: query
schema:
type: string
example: activated
description: status of the sub account
enum:
- pending_activation
- activated
- suspended
- deactivated
- name: external_reference_id
in: query
schema:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: List all Sub Accounts
content:
application/json:
schema:
$ref: '#/components/schemas/list_sub_account'
type: object
examples:
list_sub_account_example:
$ref: '#/components/examples/list_sub_account_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_sub_account_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_sub_account:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/sub_account'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
sub_account:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the master account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: >-
unique id of the master account under which the sub account was
created
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_holder_name:
type: string
example: Ace LLC
description: sub account holder name
label:
type: string
example: Ace payments
description: label of the sub account
type:
type: string
example: cash
description: type of the sub account
enum:
- cash
- prepaid
- checking
account_number:
type: string
example: '9540861337293709'
description: account number of the sub account
routing_number:
type: string
example: '123206972'
description: 9 digit routing number of the sub account
sponsor_bank:
type: string
example: Lewis and Clark Bank
description: sponsor bank name
available_balance:
type: string
example: '0.00'
description: 'available balance in the sub account '
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account
pending_debits:
type: string
example: '0.00'
description: total pending debits to the sub account
currency:
type: string
example: usd
description: currency of the sub account
enum:
- usd
external_reference_id:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Sub account to pay offshore dev team
description: purpose of sub account
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of sub account
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
- locked
timestamps:
$ref: '#/components/schemas/sub_account_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was closed
examples:
list_sub_account_example:
value:
total: 1
data:
- id: sub_bda1e562657c41e553104b10aad3fe70
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_holder_name: Ace LLC
label: Payments Account
type: cash
available_balance: '0.00'
pending_credits: '0.00'
pending_debits: '0.00'
account_number: '9540861337293709'
routing_number: '123321123'
sponsor_bank: Sponsor Bank
currency: usd
external_reference_id: XV-H27LGD-FX
purpose: Sub account to pay offshore dev team
attachments:
- label: contract
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
master_account_code: '001'
status: open
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
deactivated_at: '2024-04-03T21:00:00Z'
has_more: 'true'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/list-all-transactions.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Transactions
> List all Transactions
## OpenAPI
````yaml get /v2/payments/transaction
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/transaction:
get:
tags:
- Transactions
summary: List all Transactions
description: List all Transactions
operationId: listAllTransactions
parameters:
- name: sub_account_id
in: query
schema:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
- name: master_account_id
in: query
schema:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
- name: sub_account_holder_id
in: query
schema:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
- name: master_account_holder_id
in: query
schema:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
- name: external_reference_id
in: query
schema:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
- name: ledger_type
in: query
schema:
type: string
example: master_account
description: type of ledger
enum:
- master_account
- sub_account
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: List all Transactions
content:
application/json:
schema:
$ref: '#/components/schemas/list_transaction'
type: object
examples:
list_transaction_example:
$ref: '#/components/examples/list_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_transaction_example:
$ref: '#/components/examples/unauth_error'
components:
schemas:
list_transaction:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/transaction'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
list_transaction_example:
value:
total: 1
data:
- id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '1500.00'
currency: usd
direction: credit
method: ach
type: push
message: incoming
description: May invoice from NewCo
available_balance: '1590.00'
pending_credits: '230.00'
pending_debits: '150.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: NewCo Inc
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach:
same_day: 'true'
effective_date: '2024-04-04'
company_discretionary_data: ''
company_entry_description: Payments
trace_number: '123112211'
return_code: ''
rta_id: ''
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata:
invoice_number: INV-AC989878
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '1500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
has_more: 'true'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/webhooks/list-all-webhook-events.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Webhook Events
> List all Webhook Events
## OpenAPI
````yaml get /v2/webhook/events
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/webhook/events:
get:
tags:
- Webhooks
summary: List all Webhook Events
description: List all Webhook Events
operationId: listAllWebhookEvents
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: List all Webhook Events
content:
application/json:
schema:
$ref: '#/components/schemas/list_webhook_events'
type: object
examples:
list_webhook_events_example:
$ref: '#/components/examples/list_webhook_events_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_webhook_events_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_webhook_events:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
type: string
example: transaction.status.pending
enum:
- counterparty.status.deactivated
- transaction.status.pending
- transaction.status.reversed
- client_member.status.locked
- sub_account_holder.status.deactivated
- sub_account_holder.status.locked
- sub_account.updated
- client.status.pending_activation
- client_member.updated
- transaction.status.declined
- card_holder.status.locked
- card.status.debit_blocked
- card.status.blocked
- client_member.status.activated
- master_account.created
- sub_account.status.locked
- card_holder.updated
- card_holder.status.suspended
- transaction.status.received
- master_account.status.open
- master_account.status.debit_blocked
- sub_account.created
- card_holder.status.pending_activation
- client_member.created
- master_account_holder.status.locked
- client.status.deactivated
- card_holder.created
- counterparty.status.suspended
- client_member.status.pending_activation
- master_account_holder.created
- master_account.updated
- counterparty.updated
- transaction.created
- sub_account_holder.created
- sub_account_holder.status.pending_activation
- sub_account.status.blocked
- card.status.open
- counterparty.status.activated
- counterparty.status.locked
- card_holder.status.deactivated
- transaction.status.cleared
- client_member.status.deactivated
- master_account.status.locked
- sub_account.status.open
- card.status.credit_blocked
- client.status.locked
- master_account_holder.status.suspended
- sub_account.status.debit_blocked
- counterparty.status.pending_activation
- sub_account_holder.updated
- counterparty.created
- transaction.status.clearing
- sub_account.status.credit_blocked
- card.created
- transaction.status.returned
- card_holder.status.activated
- client.status.suspended
- master_account_holder.status.pending_activation
- master_account_holder.status.deactivated
- master_account.status.credit_blocked
- transaction.status.canceled
- client.updated
- client.status.activated
- master_account.status.blocked
- sub_account.status.closed
- card.status.closed
- card.status.locked
- transaction.status.refunded
- client_member.status.suspended
- master_account_holder.updated
- master_account.status.closed
- card.updated
- transaction.status.settled
- transaction.status.in_review
- master_account_holder.status.activated
- sub_account_holder.status.activated
- sub_account_holder.status.suspended
- transaction.updated
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
examples:
list_webhook_events_example:
value:
total: 78
data:
- counterparty.status.deactivated
- transaction.status.pending
- transaction.status.reversed
- client_member.status.locked
- sub_account_holder.status.deactivated
- sub_account_holder.status.locked
- sub_account.updated
- client.status.pending_activation
- client_member.updated
- transaction.status.declined
- card_holder.status.locked
- card.status.debit_blocked
- card.status.blocked
- client_member.status.activated
- master_account.created
- sub_account.status.locked
- card_holder.updated
- card_holder.status.suspended
- transaction.status.received
- master_account.status.open
- master_account.status.debit_blocked
- sub_account.created
- card_holder.status.pending_activation
- client_member.created
- master_account_holder.status.locked
- client.status.deactivated
- card_holder.created
- counterparty.status.suspended
- client_member.status.pending_activation
- master_account_holder.created
- master_account.updated
- counterparty.updated
- transaction.created
- sub_account_holder.created
- sub_account_holder.status.pending_activation
- sub_account.status.blocked
- card.status.open
- counterparty.status.activated
- counterparty.status.locked
- card_holder.status.deactivated
- transaction.status.cleared
- client_member.status.deactivated
- master_account.status.locked
- sub_account.status.open
- card.status.credit_blocked
- client.status.locked
- master_account_holder.status.suspended
- sub_account.status.debit_blocked
- counterparty.status.pending_activation
- sub_account_holder.updated
- counterparty.created
- transaction.status.clearing
- sub_account.status.credit_blocked
- card.created
- transaction.status.returned
- card_holder.status.activated
- client.status.suspended
- master_account_holder.status.pending_activation
- master_account_holder.status.deactivated
- master_account.status.credit_blocked
- transaction.status.canceled
- client.updated
- client.status.activated
- master_account.status.blocked
- sub_account.status.closed
- card.status.closed
- card.status.locked
- transaction.status.refunded
- client_member.status.suspended
- master_account_holder.updated
- master_account.status.closed
- card.updated
- transaction.status.settled
- transaction.status.in_review
- master_account_holder.status.activated
- sub_account_holder.status.activated
- sub_account_holder.status.suspended
- transaction.updated
has_more: 'false'
starting_after: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
ending_before: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/webhooks/list-all-webhook.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# List all Webhooks
> List all Webhooks
## OpenAPI
````yaml get /v2/webhook
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/webhook:
get:
tags:
- Webhooks
summary: List all Webhooks
description: List all Webhooks
operationId: listAllWebhooks
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
- name: limit
in: query
schema:
type: number
example: 10
description: number of records to return
- name: starting_after
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`
in order to fetch the next page of the list.
- name: ending_before
in: query
schema:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your
subsequent call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to
fetch the previous page of the list.
responses:
'200':
description: List all Webhooks
content:
application/json:
schema:
$ref: '#/components/schemas/list_webhook'
type: object
examples:
list_webhook_example:
$ref: '#/components/examples/list_webhook_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
list_webhook_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
list_webhook:
type: object
properties:
total:
type: number
example: 1
description: total number of records
data:
type: array
items:
$ref: '#/components/schemas/webhook'
has_more:
type: string
example: 'true'
description: if there are more records to iterate or not
enum:
- 'true'
- 'false'
starting_after:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `starting_after` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, ending with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include
`starting_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in
order to fetch the next page of the list.
ending_before:
type: string
example: Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky
description: >-
A cursor for use in pagination. `ending_before` is an ID that
defines your place in the list. For instance, if you make a list
request and receive 50 records, starting with
`Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky`, your subsequent
call can include `ending_before=
Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky` in order to fetch
the previous page of the list.
webhook:
type: object
properties:
id:
type: string
example: whk_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the webhook created
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that issued the card
description:
type: string
example: Transaction webhook
description: description of the webhook
url:
type: string
example: http://test-url.com/txn-webhook
description: url of the webhook endpoint
events:
type: array
description: >-
an array of events to enable for this webhook endpoint. Example
["transaction.status.declined","transaction.status.received"]
items:
type: string
example: transaction.status.declined
status:
type: string
example: active
description: status of the webhook
enum:
- active
- inactive
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was created
updated_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was updated
deleted_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was deleted
examples:
list_webhook_example:
value:
total: 1
data:
- id: whk_0190e7185e4874dab687e7af88f6f368
client_id: cli_01901368dbc174a9864a7cb156b0a207
description: Transaction Webhook
url: http://test-url.com/txn-webhook
events:
- transaction.status.declined
- transaction.status.received
status: active
timestamps:
created_at: '2024-07-24T23:34:12Z'
updated_at: '2024-07-25T10:22:11Z'
deleted_at: '2024-07-26T05:45:19Z'
starting_after: ''
ending_before: ''
has_more: false
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/accounts/master-accounts.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Master Accounts
> A guide to Master Accounts
The Master Account (provisioned for FinTech) mirrors FinTech's FBO with the bank. The FBO and the Master Accounts always have the same balance and same set of credit and debit transactions.
The Master Account is provisioned for the Master Account Holder, usually the FinTech. Solid provisions the Master Account at the time of onboarding and configures it to FinTech's specific needs upon the bank's approval.
In most cases, the FinTech is provisioned with a single Master Account.
However, in some cases, depending on the use case, the provisioning process is flexible enough to accommodate the FinTech with multiple Master Accounts that mirror a single FBO at the bank.
Every incoming transaction that hits the FBO is first ledgered to the Master Account and then sub-ledgered to the Sub Account. The two entries of the incoming transaction (in the Master Account and Sub Accounts) are required to reconcile the transaction.
For more, see the [Reconcilation Guide](/accounts/reconciliation).
Similarly, any transaction originating from a Sub Account is first ledged on the Sub Account and then the Master Account, eventually clearing from the FBO.
Use the [Master Account API](/v2/api-reference/master-accounts/retrieve-a-master-account) designed to provide detailed information about the Master Account.
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/metadata.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Metadata
> Solid Platform supports metadata
The Solid Platform support includes metadata on all the resources.
Metadata takes the form of free-form key-value pairs. You may send metadata when you create an object (POST) and when updating the object (PATCH). If you would like to remove metadata that is already on an object, you can unset it by passing in the key-value pair with an empty string, like this:
```json theme={null}
{
"key": ""
}
```
Current limitations:
* Max of 20 keys for any single metadata object
* Max of 4KB for any single metadata object
```bash EXAMPLE theme={null}
curl --request POST \
--url https://api.sandbox.solidfi.com/v2/accounts/sub_account_holder \
--header 'Content-Type: application/json' \
--header 'api-key: ' \
--data '{
"master_account_id": "mas_743fa071316bc6beaf5dddfd05f49c30",
"type": "person",
"person": {
"first_name": "Jane",
"last_name": "Doe",
"id_type": "ssn",
"id_number": "223902234",
"date_of_birth": "1974-01-25",
"phone": "+19418405843",
"email": "jane.doe@gmail.com",
"address": {
"line1": "123 Main St",
"line2": "",
"city": "New York",
"state": "NY",
"country": "US",
"postal_code": "10001"
}
},
"verification": {
"status": "pass",
"method": "persona",
"url": "https://withpersona.com/verify?inquiry-id=inq_p1LgZj3wp5xWMk5XUhWAMrgV"
},
"metadata": {
"user_type": "pro"
}
}
```
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-a-check-deposit.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate a Check Deposit
> Originate a Check Deposit
## OpenAPI
````yaml post /v2/payments/check/deposit
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/check/deposit:
post:
tags:
- Transactions
summary: Originate a Check Deposit
description: Originate a Check Deposit
operationId: originateACheckDeposit
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: May invoice
description: description of the transaction
image:
type: object
properties:
front:
type: string
example: >-
TG9yZW0gSXBzdW0gaXMgc2ltcGx5IGR1bW15IHRleHQgb2YgdGhlIHByaW50aW5nIGFuZCB0eXBlc2V0dGluZyBpbmR1c3RyeS4gTG9yZW0gSXBzdW0gaGFzIGJlZW4gdGhlIGluZHVzdHJ5J3Mgc3RhbmRhcmQgZHVtbXkgdGV4dCBldmVyIHNpbmNlIHRoZSAxNTAwcywgd2hlbiBhbiB1bmtub3duIHByaW50ZXIgdG9vayBhIGdhbGxleSBvZiB0eXBlIGFuZCBzY3JhbWJsZWQgaXQgdG8gbWFrZSBhIHR5cGUgc3BlY2ltZW4gYm9vay4gSXQgaGFzIHN1cnZpdmVkIG5vdCBvbmx5IGZpdmUgY2VudHVyaWVzLCBidXQgYWxzbyB0aGUgbGVhcCBpbnRvIGVsZWN0cm9uaWMgdHlwZXNldHRpbmcsIHJlbWFpbmluZyBlc3NlbnRpYWxseSB1bmNoYW5nZWQuIEl0IHdhcyBwb3B1bGFyaXNlZCBpbiB0aGUgMTk2MHMgd2l0aCB0aGUgcmVsZWFzZSBvZiBMZXRyYXNldCBzaGVldHMgY29udGFpbmluZyBMb3JlbSBJcHN1bSBwYXNzYWdlcywgYW5kIG1vcmUgcmVjZW50bHkgd2l0aCBkZXNrdG9wIHB1Ymxpc2hpbmcgc29mdHdhcmUgbGlrZSBBbGR1cyBQYWdlTWFrZXIgaW5jbHVkaW5nIHZlcnNpb25zIG9mIExvcmVtIElwc3VtLg
description: front image encoded in Base64 format
back:
type: string
example: >-
TG9yZW0gSXBzdW0gaXMgc2ltcGx5IGR1bW15IHRleHQgb2YgdGhlIHByaW50aW5nIGFuZCB0eXBlc2V0dGluZyBpbmR1c3RyeS4gTG9yZW0gSXBzdW0gaGFzIGJlZW4gdGhlIGluZHVzdHJ5J3Mgc3RhbmRhcmQgZHVtbXkgdGV4dCBldmVyIHNpbmNlIHRoZSAxNTAwcywgd2hlbiBhbiB1bmtub3duIHByaW50ZXIgdG9vayBhIGdhbGxleSBvZiB0eXBlIGFuZCBzY3JhbWJsZWQgaXQgdG8gbWFrZSBhIHR5cGUgc3BlY2ltZW4gYm9vay4gSXQgaGFzIHN1cnZpdmVkIG5vdCBvbmx5IGZpdmUgY2VudHVyaWVzLCBidXQgYWxzbyB0aGUgbGVhcCBpbnRvIGVsZWN0cm9uaWMgdHlwZXNldHRpbmcsIHJlbWFpbmluZyBlc3NlbnRpYWxseSB1bmNoYW5nZWQuIEl0IHdhcyBwb3B1bGFyaXNlZCBpbiB0aGUgMTk2MHMgd2l0aCB0aGUgcmVsZWFzZSBvZiBMZXRyYXNldCBzaGVldHMgY29udGFpbmluZyBMb3JlbSBJcHN1bSBwYXNzYWdlcywgYW5kIG1vcmUgcmVjZW50bHkgd2l0aCBkZXNrdG9wIHB1Ymxpc2hpbmcgc29mdHdhcmUgbGlrZSBBbGR1cyBQYWdlTWFrZXIgaW5jbHVkaW5nIHZlcnNpb25zIG9mIExvcmVtIElwc3VtLg
description: back image encoded in Base64 format
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate a Check Deposit:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '500.00'
description: May invoice
image:
front: >-
TG9yZW0gSXBzdW0gaXMgc2ltcGx5IGR1bW15IHRleHQgb2YgdGhlIHByaW50aW5nIGFuZCB0eXBlc2V0dGluZyBpbmR1c3RyeS4gTG9yZW0gSXBzdW0gaGFzIGJlZW4gdGhlIGluZHVzdHJ5J3Mgc3RhbmRhcmQgZHVtbXkgdGV4dCBldmVyIHNpbmNlIHRoZSAxNTAwcywgd2hlbiBhbiB1bmtub3duIHByaW50ZXIgdG9vayBhIGdhbGxleSBvZiB0eXBlIGFuZCBzY3JhbWJsZWQgaXQgdG8gbWFrZSBhIHR5cGUgc3BlY2ltZW4gYm9vay4gSXQgaGFzIHN1cnZpdmVkIG5vdCBvbmx5IGZpdmUgY2VudHVyaWVzLCBidXQgYWxzbyB0aGUgbGVhcCBpbnRvIGVsZWN0cm9uaWMgdHlwZXNldHRpbmcsIHJlbWFpbmluZyBlc3NlbnRpYWxseSB1bmNoYW5nZWQuIEl0IHdhcyBwb3B1bGFyaXNlZCBpbiB0aGUgMTk2MHMgd2l0aCB0aGUgcmVsZWFzZSBvZiBMZXRyYXNldCBzaGVldHMgY29udGFpbmluZyBMb3JlbSBJcHN1bSBwYXNzYWdlcywgYW5kIG1vcmUgcmVjZW50bHkgd2l0aCBkZXNrdG9wIHB1Ymxpc2hpbmcgc29mdHdhcmUgbGlrZSBBbGR1cyBQYWdlTWFrZXIgaW5jbHVkaW5nIHZlcnNpb25zIG9mIExvcmVtIElwc3VtLg==
back: >-
TG9yZW0gSXBzdW0gaXMgc2ltcGx5IGR1bW15IHRleHQgb2YgdGhlIHByaW50aW5nIGFuZCB0eXBlc2V0dGluZyBpbmR1c3RyeS4gTG9yZW0gSXBzdW0gaGFzIGJlZW4gdGhlIGluZHVzdHJ5J3Mgc3RhbmRhcmQgZHVtbXkgdGV4dCBldmVyIHNpbmNlIHRoZSAxNTAwcywgd2hlbiBhbiB1bmtub3duIHByaW50ZXIgdG9vayBhIGdhbGxleSBvZiB0eXBlIGFuZCBzY3JhbWJsZWQgaXQgdG8gbWFrZSBhIHR5cGUgc3BlY2ltZW4gYm9vay4gSXQgaGFzIHN1cnZpdmVkIG5vdCBvbmx5IGZpdmUgY2VudHVyaWVzLCBidXQgYWxzbyB0aGUgbGVhcCBpbnRvIGVsZWN0cm9uaWMgdHlwZXNldHRpbmcsIHJlbWFpbmluZyBlc3NlbnRpYWxseSB1bmNoYW5nZWQuIEl0IHdhcyBwb3B1bGFyaXNlZCBpbiB0aGUgMTk2MHMgd2l0aCB0aGUgcmVsZWFzZSBvZiBMZXRyYXNldCBzaGVldHMgY29udGFpbmluZyBMb3JlbSBJcHN1bSBwYXNzYWdlcywgYW5kIG1vcmUgcmVjZW50bHkgd2l0aCBkZXNrdG9wIHB1Ymxpc2hpbmcgc29mdHdhcmUgbGlrZSBBbGR1cyBQYWdlTWFrZXIgaW5jbHVkaW5nIHZlcnNpb25zIG9mIExvcmVtIElwc3VtLg==
external_reference_id: 123-9088-2
responses:
'201':
description: Originate a Check Deposit
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
check_deposit_transaction_example:
$ref: '#/components/examples/check_deposit_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
check_deposit_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
check_deposit_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
check_deposit_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '500.00'
currency: usd
direction: credit
method: check
type: deposit
message: outgoing
description: May invoice
available_balance: '9200.00'
pending_credits: '500.00'
pending_debits: '0.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: ''
routing_number: ''
account_type: ''
bank_name: ''
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
check:
check_number: '98987679'
cashed: true
shipping_address: null
tracking: null
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-a-check-send.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate a Check Send
> Originate a Check Send
## OpenAPI
````yaml post /v2/payments/check/send
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/check/send:
post:
tags:
- Transactions
summary: Originate a Check Send
description: Originate a Check Send
operationId: originateACheckSend
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '1500.00'
description: amount of the transaction
description:
type: string
example: Plumbing Supplier
description: description of the transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate a Check Send:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '1500.00'
description: Plumbing Supplier
external_reference_id: 123-9088-2
responses:
'201':
description: Originate a Check Send
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
check_send_transaction_example:
$ref: '#/components/examples/check_send_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
check_send_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
check_send_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
check_send_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '1500.00'
currency: usd
direction: debit
method: check
type: send
message: outgoing
description: Plumbing Supplier
available_balance: '2390.00'
pending_credits: '0.00'
pending_debits: '1500.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: ''
routing_number: ''
account_type: ''
bank_name: ''
beneficiary_bank: null
correspondent_bank: null
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
check:
check_number: '98987679'
cashed: true
tracking:
status: pending
eta: '2024-05-01'
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '1500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-a-debit-card-pull.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate a Debit Card Pull
> Originate a Debit Card Pull
## OpenAPI
````yaml post /v2/payments/debitcard/pull
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/debitcard/pull:
post:
tags:
- Transactions
summary: Originate a Debit Card Pull
description: Originate a Debit Card Pull
operationId: originateADebitCardPull
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '23.50'
description: amount of the transaction
description:
type: string
example: Lunch expense
description: description of the transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate a Debit Card Pull:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '150.00'
description: Account funding
external_reference_id: 123-9088-2
responses:
'201':
description: Originate a Debit Card Pull
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
debit_card_pull_transaction_example:
$ref: '#/components/examples/debit_card_pull_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
debit_card_pull_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
debit_card_pull_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
debit_card_pull_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '150.00'
currency: usd
direction: credit
method: debitcard
type: pull
message: outgoing
description: Account funding
available_balance: '90.00'
pending_credits: '0.00'
pending_debits: '150.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: ''
routing_number: ''
account_type: ''
bank_name: ''
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '150.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-a-debit-card-push.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate a Debit Card Push
> Originate a Debit Card Push
## OpenAPI
````yaml post /v2/payments/debitcard/push
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/debitcard/push:
post:
tags:
- Transactions
summary: Originate a Debit Card Push
description: Originate a Debit Card Push
operationId: originateADebitCardPush
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '23.50'
description: amount of the transaction
description:
type: string
example: Lunch expense
description: description of the transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate a Debit Card Push:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '23.50'
description: Lunch expense
external_reference_id: 123-9088-2
responses:
'201':
description: Originate a Debit Card Push
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
debit_card_push_transaction_example:
$ref: '#/components/examples/debit_card_push_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
debit_card_push_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
debit_card_push_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
debit_card_push_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '23.50'
currency: usd
direction: debit
method: debitcard
type: push
message: outgoing
description: Tips Payout
available_balance: '90.00'
pending_credits: '0.00'
pending_debits: '23.50'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: ''
routing_number: ''
account_type: ''
bank_name: ''
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '23.50'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-a-domestic-wire.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate a Domestic Wire
> Originate a Domestic Wire
## OpenAPI
````yaml post /v2/payments/domestic_wire/push
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/domestic_wire/push:
post:
tags:
- Transactions
summary: Originate a Domestic Wire
description: Originate a Domestic Wire
operationId: originateADomesticWire
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account holder
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '2500.00'
description: amount of the transaction
description:
type: string
example: Marketing Expenses for May
description: description of the transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate a Domestic Wire:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '2500.00'
description: Marketing Expenses for May
external_reference_id: 123-9088-2
responses:
'201':
description: Originate a Domestic Wire
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
domestic_wire_transaction_example:
$ref: '#/components/examples/domestic_wire_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
domestic_wire_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
domestic_wire_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
domestic_wire_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '2500.00'
currency: usd
direction: debit
method: domestic_wire
type: push
message: outgoing
description: Escrow Deposit
available_balance: '9500.00'
pending_credits: '0.00'
pending_debits: '2500.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
domestic_wire:
imad: 20240520D2B74A1C002742
omad: 20240520L1B7832F000914
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '2500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-a-fednow-push.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate a FedNow Push
> Originate a FedNow Push
## OpenAPI
````yaml post /v2/payments/fednow/push
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/fednow/push:
post:
tags:
- Transactions
summary: Originate a FedNow Push
description: Originate a FedNow Push
operationId: originateAFednowPush
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: June office rent
description: description of the transaction
reference_number:
type: string
example: FR6L-81G634
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate a FedNow Push:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '500.00'
description: June office rent
reference_number: FR6L-81G634
external_reference_id: 123-9088-2
responses:
'201':
description: Originate a FedNow Push
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
fednow_transaction_example:
$ref: '#/components/examples/fednow_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
fednow_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
fednow_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
fednow_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '500.00'
currency: usd
direction: debit
method: fednow
type: push
message: outgoing
description: May office rent
available_balance: '1900.00'
pending_credits: '0.00'
pending_debits: '500.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: personal_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
fednow:
reference_number: 1E5800WF8Q
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-an-ach-pull.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate an ACH Pull
> Originate an ACH Pull
## OpenAPI
````yaml post /v2/payments/ach/pull
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/ach/pull:
post:
tags:
- Transactions
summary: Originate an ACH Pull
description: Originate an ACH Pull
operationId: originateAnAchPull
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: May Rent
description: description of the transaction
same_day:
type: string
example: 'true'
description: if ACH is same day or next day
effective_date:
type: string
example: '2024-04-05'
description: >-
date on which the ACH must post on the beneficiary's bank
account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the
purpose of the ACH transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate an ACH Pull:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '500.00'
description: May Rent
same_day: 'true'
effective_date: '2024-04-05'
company_entry_description: Payment
external_reference_id: 123-9088-2
responses:
'201':
description: Originate an ACH Pull
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
ach_pull_transaction_example:
$ref: '#/components/examples/ach_pull_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
ach_pull_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
ach_pull_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
ach_pull_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '500.00'
currency: usd
direction: credit
method: ach
type: pull
message: outgoing
description: May Rent
available_balance: '250.00'
pending_credits: '500.00'
pending_debits: '0.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach:
same_day: 'true'
effective_date: '2024-04-04'
company_discretionary_data: DIRECT DEPOSIT
company_entry_description: Payments
trace_number: ''
return_code: ''
rta_id: ''
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-an-ach-push.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate an ACH Push
> Originate an ACH Push
## OpenAPI
````yaml post /v2/payments/ach/push
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/ach/push:
post:
tags:
- Transactions
summary: Originate an ACH Push
description: Originate an ACH Push
operationId: originateAnAchPush
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '4570.00'
description: amount of the transaction
description:
type: string
example: May Salary
description: description of the transaction
same_day:
type: string
example: 'true'
description: if ACH is same day or next day
effective_date:
type: string
example: '2024-04-05'
description: >-
date on which the ACH must post on the beneficiary's bank
account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the
purpose of the ACH transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate an ACH Push:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '4570.00'
description: May Salary
same_day: 'true'
effective_date: '2024-04-05'
company_discretionary_data: DIRECT DEPOSIT
company_entry_description: PAYROLL
external_reference_id: 123-9088-2
responses:
'201':
description: Originate an ACH Push
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
ach_push_transaction_example:
$ref: '#/components/examples/ach_push_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
ach_push_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
ach_push_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
ach_push_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '4570.00'
currency: usd
direction: debit
method: ach
type: push
message: outgoing
description: May Salary
available_balance: '500.00'
pending_credits: '0.00'
pending_debits: '4570.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach:
same_day: 'true'
effective_date: '2024-04-04'
company_discretionary_data: DIRECT DEPOSIT
company_entry_description: PAYROLL
trace_number: ''
return_code: ''
rta_id: ''
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: This is May Salary
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '4570.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-an-international-wire.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate an International Wire
> Originate an International Wire
## OpenAPI
````yaml post /v2/payments/international_wire/push
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/international_wire/push:
post:
tags:
- Transactions
summary: Originate an International Wire
description: Originate an International Wire
operationId: originateAnInternationalWire
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '12000.00'
description: amount of the transaction
description:
type: string
example: Offshore dev team payment
description: description of the transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate an International Wire:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '12000.00'
description: Offshore dev team payment
external_reference_id: 123-9088-2
responses:
'201':
description: Originate an International Wire
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
international_wire_transaction_example:
$ref: '#/components/examples/international_wire_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
international_wire_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
international_wire_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
international_wire_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '12000.00'
currency: usd
direction: debit
method: international_wire
type: push
message: outgoing
description: Offshore dev team payment
available_balance: '9500.00'
pending_credits: '0.00'
pending_debits: '12000.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: Global Technologies
verification_status: pass
account_number: '2986167511'
routing_number: ''
account_type: business_checking
bank_name: ICICI Bank
beneficiary_bank:
identifier_code: ICICINBBNRI
name: ICICI Bank
address:
line1: 256 Main St
line2: ''
city: Bengaluru
state: KA
country: IN
postal_code: '900009'
correspondent_bank:
identifier_code: SCBLUS33XXX
name: STANDARD CHARTERED BANK
address:
line1: 1095 12th Ave
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
shipping_address: null
international_wire:
imad: 20240520D2B74A1C002742
omad: 20240520L1B7832F000914
parent_transaction_id: ''
external_reference_id: 123-9088-2
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '12000.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-an-intra-account-pull.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate an Intra Account Pull
> Originate an Intra Account Pull
## OpenAPI
````yaml post /v2/payments/intra_account/pull
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/intra_account/pull:
post:
tags:
- Transactions
summary: Originate an Intra Account Pull
description: Originate an Intra Account Pull
operationId: originateAnIntraAccountPull
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: May Rent
description: description of the transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate an Intra Account Pull:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '500.00'
description: May Rent
external_reference_id: 123-9088-2
responses:
'201':
description: Originate an Intra Account Pull
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
intra_account_pull_transaction_example:
$ref: '#/components/examples/intra_account_pull_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
intra_account_pull_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
intra_account_pull_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
intra_account_pull_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '500.00'
currency: usd
direction: credit
method: intra_account
type: pull
message: outgoing
description: May Rent
available_balance: '250.00'
pending_credits: '500.00'
pending_debits: '0.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: '9542450298324502'
routing_number: ''
account_type: ''
bank_name: ''
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-an-intra-account-push.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate an Intra Account Push
> Originate an Intra Account Push
## OpenAPI
````yaml post /v2/payments/intra_account/push
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/intra_account/push:
post:
tags:
- Transactions
summary: Originate an Intra Account Push
description: Originate an Intra Account Push
operationId: originateAnIntraAccountPush
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account holder
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '4570.00'
description: amount of the transaction
description:
type: string
example: May Salary
description: description of the transaction
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate an Intra Account Push:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '4570.00'
description: May Salary
external_reference_id: 123-9088-2
responses:
'201':
description: Originate an Intra Account Push
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
intra_account_push_transaction_example:
$ref: '#/components/examples/intra_account_push_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
intra_account_push_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
intra_account_push_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
intra_account_push_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '4570.00'
currency: usd
direction: debit
method: intra_account
type: push
message: outgoing
description: May Salary
available_balance: '500.00'
pending_credits: '0.00'
pending_debits: '4570.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: '9542450298324502'
routing_number: ''
account_type: ''
bank_name: ''
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: This is May Salary
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '4570.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/originate-an-rtp-push.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Originate an RTP Push
> Originate an RTP Push
## OpenAPI
````yaml post /v2/payments/rtp/push
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/rtp/push:
post:
tags:
- Transactions
summary: Originate an RTP Push
description: Originate an RTP Push
operationId: originateAnRtpPush
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
counterparty_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: June office rent
description: description of the transaction
reference_number:
type: string
example: KH1-ZI1L-PTY
description: >-
reference number of the RTP transaction that shown to the
beneficiary
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
examples:
Originate an RTP Push:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
counterparty_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
amount: '500.00'
description: June office rent
reference_number: KH1-ZI1L-PTY
external_reference_id: 123-9088-2
responses:
'201':
description: Originate an RTP Push
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
rtp_transaction_example:
$ref: '#/components/examples/rtp_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
rtp_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
rtp_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
rtp_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: originated
amount: '500.00'
currency: usd
direction: debit
method: rtp
type: push
message: outgoing
description: June office rent
available_balance: '1900.00'
pending_credits: '0.00'
pending_debits: '500.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: personal_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
rtp:
reference_number: KH1-ZI1L-PTY
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/pagination.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Pagination
> Solid Platform support cursor pagination
When calling any of the List All APIs on the Solid platform, you can control the pagination of the response using the following filters. For other filters, see the documentation for the relevant List All API.
All the list APIs return a has\_more boolean flag in the response to indicate whether there are more records to iterate.
| Filter (Type) | Type |
| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| limit (int) | number of records to return (default = 25, max = 100) |
| starting\_after (string) | A cursor for use in pagination. starting\_after is an ID that defines your place in the list. For instance, if you make a list request and receive 50 records, ending with Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky, your subsequent call can include starting\_after=Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky in order to fetch the next page of the list. |
| ending\_before (string) | A cursor for use in pagination. ending\_before is an ID that defines your place in the list. For instance, if you make a list request and receive 50 records, starting with Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky, your subsequent call can include ending\_before= Y2xpXzAxOGY4NjEzMDEyYjdlNTFiOTZjNmVlYWJiNmRiZTky in order to fetch the previous page of the list. |
---
# Source: https://docs.solidfi.com/card-issuance/physical-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Physical Card
> A guide to Physical Cards
Solid offers its clients a fully managed card-art program. That means Solid manages the physical card approval with the issuing bank, network, and card printer.
### 1. Card Art
Solid has put together simple templates & guidelines for the card program to follow for the Front of Card (FOC) design to simplify the process and get the required approval.
When customizing a card for your card program, you have the option to choose between a horizontal or a vertical card. All our cards are Dual Interface (DI), which means they have a single embedded chip. This unique feature allows the card to be used in both contact and contactless transactions, providing flexibility and convenience to your users.
The instructions below explain the Front of Card (FOC) and Back of Card (BOC) template and the customization available to meet your brand guidelines.
1. Start with a blank Horizontal Card
On a Consumer Debit Card, Visa product identifier will display Debit under the Visa logo.
On a Business Debit Card, Business Debit will display on the top left.
2\. Apply your brand's visual design and logo
Depending on the card's visual design (dark or light), Solid will setup the correct Visa logo (Blue, White or Black). Logo needs to contrast the card design (background).
1. Start with a blank Vertical Card
On a Consumer Debit Card, Visa product identifier will display Debit under the Visa logo.
On a Business Debit Card, Business Debit will display on the top left.
2\. Apply your brand's visual design and logo
Depending on the card's visual design (dark or light), Solid will setup the correct Visa logo (Blue, White or Black). Logo needs to contrast the card design (background).
Back of the card displays your card's visual design with the card information.
* Name of the business (for example: SNACKCO DELIVERY LLC) is displayed only if the card is a Business Debit or Business Credit card.
* BOC remains the same in case of horizontal or vertical card.
* BOC follows the Visa Quick Read (QR) Design to display the card information (16 digit cad number, expiry and CVV)
* If the card's visual design (background) is dark, text is in displayed in white. If the card's visual design (background) is light, text is in displayed in black.
* Name of the person and business to be embossed on the card, max limit is 23 characters.
You can download the cart art template's Figma file [here](https://www.figma.com/file/cwxnEXJtFIalnq96UCefSj/Card-Art-Template?node-id=0%3A1). Then, you can customize your card art using the Figma app or your web browser, export it to an SVG file, and send it back to Solid. Alternatively, you can send back your .fig file.
For physical cards, the printer will ultimately use EPS format with CMYK colors (Solid handles the formatting), so ideally, you would proof your colors in a design program such as Adobe Illustrator and export an EPS file from there.
### 2. Mailer Art
Solid manages the production of the physical card mailer with the card printer. The mailer is a 5x7 inch bi-fold greeting card style. See mock-ups below.
Note:
* Both inside and outside pages can display your visual design.
* Card location cannot be changed.
* You can provide your copy for all the pages including card activation.
* The mailer cannot be customized for each cardholder.
You can download the mailer art template's Figma file [here](https://www.figma.com/file/cwxnEXJtFIalnq96UCefSj/Card-Art-Template?node-id=2%3A436). Then, you can customize your mailer art using the Figma app or your web browser, export it to an SVG file, and send it back to Solid. Alternatively, you can send back your .fig file.
### 3. Timelines
When issuing physical cards, timing is essential, but quality is even more so. Here are the key details you need to know:
* We will collaborate closely with you during the approximately two weeks it takes to configure your artwork. It ensures that all the necessary details are in place and your design looks exactly how you want it to.
* Once the artwork has been finalized, we will begin the printing process. Depending on the size of your order and our current workload, this typically takes around two days to complete.
* Finally, shipping times will vary based on the method you have selected. We offer a range of shipping options to meet your needs, from standard delivery to expedited shipping for those needing cards as quickly as possible.
By carefully managing each step of the process, we can ensure that your cards are delivered on time and with the highest quality.
### 4. Support
To comply with the issuing bank's requirements, you must provide support information to your cardholders, which needs to be included on the back of physical cards.
### 5. Reissuing Cards
You can [Reissue a Card](/v2/api-reference/cards/reissue-a-card) if your end user informs you that it is misplaced, lost, or stolen. Solid does not cover the cost of reissued cards for such scenarios.
If the card arrives damaged, you must request that your end user send photo evidence of the damage. Solid will contact its fulfillment partners for an explanation. In some cases, they may grant a credit. This credit is likely to cover shipping issues (resulting in a shipping credit), but it's possible that it could also cover printing issues (printing credit).
Please note that damaged cards are reviewed case by case and are not guaranteed. If a credit is received, it can be deducted from the program's next invoice. As usual, the program should submit a ticket for any such cases.
### 6. Multiple Card Designs (Themes)
Solid offers a feature called Solid Card Themes, which enables you to manage multiple card types and artwork within a single program.
For example, you could offer a single product that allows end users to choose a white or black card. Alternatively, you could use this feature to offer multiple financial products within a single program, such as Brand X Card and Brand Y Card.
Solid implementation team sets up themes in conjunction with your card program needs. Every card in the program will be assigned a unique theme, and each theme requires the artwork to be set up.
Once the Solid Solutions team has set up all card themes, they will provide you with the necessary information about the possible theme values, ensuring your confidence in the process.
You pass the theme in the [Create a Card](/v2/api-reference/cards/create-a-card) API.
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/provision-a-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Provision a Card
> Provision a Card on Apple Pay, Google Pay and Samsung Pay
## OpenAPI
````yaml post /v2/issuing/card/{card_id}/provision
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card/{card_id}/provision:
parameters:
- name: card_id
in: path
required: true
schema:
type: string
post:
tags:
- Cards
summary: Provision a Card
description: Provision a Card on Apple Pay, Google Pay and Samsung Pay
operationId: ProvisionACard
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
wallet:
type: string
example: apple_pay
description: wallet type
enum:
- apple_pay
- google_pay
- samsung_pay
apple_pay:
type: object
properties:
device_cert:
type: string
example: >-
MIID/TCCA6OgAwIBAgIIMq/qUa9Z2nMwCgYIKoZIzj0EAwIwgYAxNDAyBgNVBAMMK0FwcGxlIFdvcmxkd2lkZSBEZXZlbG9wZXIgUmVsYXRpb25zIENBIC0gRzIxJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUzAeFw0xODA2MDEyMjAzMTBaFw0yMDA2MzAyMjAzMTBaMGwxNTAzBgNVBAMMLGVjYy1jcnlwdG8tc2VydmljZXMtZW5jaXBoZXJtZW50X1VDNi1TQU5EQk9YMREwDwYDVQQLDAhBcHBsZVBheTETMBEGA1UECgwKQXBwbGUgSW5jLjELMAkGA1UEBhMCVVMwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATGiJjmEMmvOZBGj+tdj2ED7xnc9y1C0vNVaqZva7lvKkbgrfcWdo0/NdIJZ5wDcZ0eBtPuRJ+q/eSP9FLXQ19wo4ICGDCCAhQwDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAWgBSEtoTMOoZichZZlOgao71I3zrfCzBHBggrBgEFBQcBAQQ7MDkwNwYIKwYBBQUHMAGGK2h0dHA6Ly9vY3NwLmFwcGxlLmNvbS9vY3NwMDMtYXBwbGV3d2RyY2EyMDUwggEdBgNVHSAEggEUMIIBEDCCAQwGCSqGSIb3Y2QFATC=
description: >-
Apple device X.509 certificates received from mobile
application
nonce_signature:
type: string
example: >-
QHuLYArUCO2OZevP0rHc99g9RJp4O1dgsZuVpUdlA7zPWqCDhVQo9Mxr1uPS6GVyjZYo3YElIhHRV4
description: Signature signed by Apple on nonce in SE
nonce:
type: string
example: kbcVuA==
description: 32 digit random number generated by Apple
google_pay:
type: object
properties:
client_customer_id:
type: string
example: 9uHEoxYfxFTBaP3GH3j
description: The user's Google wallet account ID
device_id:
type: string
example: oyyKWMhPraREjeQN6VI
description: >-
The user's Android device ID, the device's unique
identifier
samsung_pay:
type: object
properties:
client_customer_id:
type: string
example: 9uHEoxYfxFTBaP3GH3j
description: The user's Google wallet account ID
device_id:
type: string
example: oyyKWMhPraREjeQN6VI
description: >-
The user's Android device ID, the device's unique
identifier
examples:
Provision a Card:
value:
wallet: apple_pay
apple_pay:
device_cert: >-
MIID/TCCA6OgAwIBAgIIMq/qUa9Z2nMwCgYIKoZIzj0EAwIwgYAxNDAyBgNVBAMMK0FwcGxlIFdvcmxkd2lkZSBEZXZlbG9wZXIgUmVsYXRpb25zIENBIC0gRzIxJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRMwE29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRlIHBvbGljeSBhbmQgY2VydGlmaWNhdGlvbiBwcmFjdGljZSBzdGF0ZW1lbnRzLjA2BggrBgEFBQcCARYqaHR0cDovL3d3dy5hcHBsZS5jb20vY2VydGlmaWNhdGVhdXRob3JpdHkvMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwuYXBwbGUuY29tL2FwcGxld3dkcmNhMi5jcmwwHQYDVR0OBBYEFMNruSHk5gH1LauD+wBI/9sgl/VpMA4GA1UdDwEB/wQEAwIDKDASBgkqhkiG92NkBicBAf8EAgUAMAoGCCqGSM49BAMCA0gAMEUCIQDhL+sL9bcrvAVO3UvswA805EHujfL7iVDrbEuJfOSJoAIgBPKehtuILl9x/SJ5kxReiml1zkJqUB8nTy0UOfUNIIQ=
nonce_signature: >-
QHuLYArUCO2OZevP0rHc99g9RYo3YElIhHRV4Mv3wEJ3hGOaxK1gResup88QWDK1fL0
nonce: kbcVuA==
responses:
'200':
description: Provision a Card
content:
application/json:
schema:
type: object
properties:
wallet:
type: string
example: apple_pay
description: wallet type
enum:
- apple_pay
- google_pay
- samsung_pay
apple_pay:
type: object
properties:
payment_account_reference:
type: string
example: V123456789012451423499
description: >-
Payment Account Reference (PAR) is a unique reference
value associated with a specific cardholder PAN
activation_data:
type: string
example: >-
TUJQQUMtMS1GSy00MDEyMDAuMS0tVERFQS1CMEQwQjcxNDNFN0M1QTc3M0I5MTc1OTA3RENCMUEzRUNCRENCQjJEMzI2MDBEOEY4RTU5OEI5QzE4OTlwMg==
description: >-
Activation data consisting of encrypted nonce,
noncesignature, and authCode in base64 format
encrypted_pass_data:
type: string
example: >-
V3bICnkm37BmBKEF9FAKK2zh2SvLhe6PqjvJaHS2t0eJaKVL/SfQ8mXOkDN7o4h7ayFmSuBy7A4R9uYWqWdZbo7fc0xOcsQLCgwQdVkW90JHAgL6j9axg26+OxrWyo7T9qm6NBlZzQFAy1oqYmw1tq6QMAEfbv7W6omlZMojl7aJjvzETINq/YXY8Xp76hoMQFsNDpnNfFuAONmCaCm5Vd6a1zW4ULI0SC1OPo8SdiEULTtZQO1XwiMtbD31JkSUhvHAEP2uo9bEeytPQwr82u6lxzzjLhBP30JByQeOJ2y2o/k83XNGanZhlR1yojp9gObw6m/wyj/rfGxMFVhZtzDVFDblgp1NzvCkPx0iyMRTURGLLmzyrLpzwVGIqv39GorEesOL1KtHb15KuwCtawdej3QiL95rPRTW58stEr/PxLh3Bp9AjlV07tJTXdrKNz357j8hLo1AmRv2p8prnZDF0A0j3jn71P68kvwvWhvZ3F+R0sNuC+E16IV1sJrWIlChU4NvcmsLBsv+ewsFqqGquDlpbFc3LuCQhE9PUu6wEGa7Im4e+Cbk79tcg+ZYFS1X4W7sAWLlxM0JzTMWdzSkqydLjiVc9FvoM3gBFrm/1rs7I5CACNg0vyHpXDhPFTM3a9enCqfWkZxNTfEfc3NOXte8s=
description: >-
Authentication data consisting of encrypted PAN,
expiry and datetime in base64 format
ephemeral_public_key:
type: string
example: BBSV6JzHhqoS0pLO6xMV6Z5yRhoOnpxaLv2+rp+/sK/RhLqLdEGok=
description: >-
VISA.ECC.ePK generated while creating MBPAD
encryptedInformation. EC point with P-256 curve and
uncompressed format. Base64 format
google_pay:
type: object
properties:
payment_account_reference:
type: string
example: V1234567890420053999
description: >-
Payment Account Reference (PAR) is a unique reference
value associated with a specific cardholder PAN
opaque_payment_card:
type: string
example: >-
eyJhdWQiOiIxODk5NzZhNi0yZmFjLTRlZDEtOTM0ZS03MjY5NmVhMDgxMzEiLCJraWQiOiJiYmVlZTAzOC1RMkFZM1Y1RTNJQ05CVVU2NkQ4SzExaEJtenFkWFN2VGlOelotWW5wb3pXUlhUbzUwIiwiaXNzIjoiYmJlZWUwMzgtNDgzMS00MjUzLWE3MjItMHY3NWNsMTNuNzFkIiwidHlwIjoiSk9TRSIsImNoYW5uZWxTZWN1cml0eUNvbnRleHQiOiJTSEFSRURfU0VDUkVUIiwiZW5jIjoiQTI1NkdDTSIsInRhZyI6ImEzOUM0RmxQbEhIMHBuczAtT2g1WGciLCJpYXQiOjE2NTQ4MzU3ODEsImFsZyI6IkEyNTZHQ01LVyIsIml2IjoibE9kcUc2Q2lwbW1SaV9VeSJ9.R9bp9RZ7qfxKNeB6QcmkpJs2-a7vmLLgJ7quOXRgCFQ.vuU9ubZevkKBaFWM.8XuSCadoQCJIGBgWmOS1jTZNIfbUHeRTUnVYpvE9PNEQFcoP04l-aSnd1NR0MDSfFlJA5Dh0QLBNxQOT_iR_M_9btzXes7fdKPNauiwexR8q42EIpx4a3G25WdHTzo2XUrbDBOqiFKM08qTW2wHhHzrffEfDVw4-gBECI4qrbwRPXbhOkAqeG3bU4gD9jAs0qv66mvJMP33Cqs_in0v8nAgOiPpufUkyXMzKpJjAXhptapEb9dxJyVYQ4JOoUrOEiPurUEwsf8NXscpydwiGDJVanKgOXw_v4NlRaVwFOrroF5bS0p1Y1mlfax6gf_hPKrTMcfTXcAwG21pwLEU0XH9WkuL-5b1GHMvQtcJM05WFWb0L2S1lyIqKg0zLuM8rDeLwtnvOTd3erwN64snGL9brjQ8BGM1fY54LBogrFFGDGuVPSCkG35OTAUKQ3aGPNn93bX9ujnnf0vRVHEQeFeahT1yXf2ZyCR6dNOnP1Ixj9degYj1xqYp_JwP64MlPWY4rJ2RGE0mMAVRvQVHKhKB9A_7nAvtGT2O6XQ
description: >-
This is the opaque card data that is needed by
GooglePay for tokenization
samsung_pay:
type: object
properties:
payment_account_reference:
type: string
example: V1234567890420053999
description: >-
Payment Account Reference (PAR) is a unique reference
value associated with a specific cardholder PAN
opaque_payment_card:
type: string
example: >-
This is the opaque card data that is needed by
SamsungPay for tokenization
description: opaque_payment_card
examples:
provision_a_card:
value:
wallet: apple_pay
apple_pay:
payment_account_reference: V123456720053999
activation_data: >-
TUJQQUMtMS1GSy00MDEyMDAuMS0tVERFQSDBEOEY4RTU5OEI5QzE4OTlGNzA3RjFCMDQ2RDY3RDNDREUwMg==
encrypted_pass_data: >-
V3bICnkm37BmBKEF9FAKK2zh2SvLhe6PqjvJaHS2t0eJaKVL/SfQ8mXOkDN7o4h7ayFmSuBy7A4R9uYWqWdZbo7fc0xOcsQLCgwQdVkW90JHAgL6j9axg26+OxrWyo7T9qm6NBlZzQFAy1oqYmw1tq6QMAEfbv7W6omlZ+ZYFS1X4W7sAWLlxM0JzTMWdzSkqydLjiVc9FvoM3gBFrm/1rs7I5CACNg0vyHpXDhPFTM3a9eysWef7qRdTxLIA7CUKDx59r4VTWtGijz1Pwb5uZCnYvZd3i/+T7ra4xZ+9Z6u/nCqfWkZxNTfEfc3NOXte8s=
ephemeral_public_key: >-
BBSV6JzHhqoS0pLO6xMV6Hxb7pPXpmNGra65K3kvUnlwfRTkWjA7v2+rp+/sK/RhLqLdEGok=
google_pay: null
samsung_pay: null
'401':
description: Unauthorized Error
content:
application/json:
examples:
show_card_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/card_not_found_error'
security:
- {}
components:
examples:
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
card_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/rate-limiting.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Rate Limiting
> Solid Platform enforces rate limiting
Rate limiting protects APIs from excessive use and thereby limits their availability. To ensure all your programs can reliably use the Solid APIs and other services, we rate-limit access to those services to ensure no program, its end users, or malicious hackers abuse access. When a program's traffic exceeds its allocated rate limit, an HTTP 429 status code (Too Many Requests) is returned.
There are two rate-limiting points affecting the Solid platform:
1. Solid's AWS CloudFront rate limits
Solid's cloud infrastructure limits all incoming traffic, including a Program's incoming Solid API HTTP traffic, on a per-client-IP-address basis to 1000 HTTP requests per rolling 5-minute window.
2. Solid API backend rate limits
In the Sandbox environment, Solid default rate limits a program's traffic (across all client IP addresses) to:
* 50 read operations per second
* 50 write operations per second
In the Prod environment, Solid default rate limits a program's traffic (across all client IP addresses) to:
* 100 read operations per second
* 100 write operations per second
As a developer, when your application hits the rate limits, it will receive a 429 response. However, you must take a proactive approach by throttling your traffic before hitting the rate limits in the first place.
Solid may reduce limits or increase limits to enable high-traffic FinTech apps.
If you need a different limit, could be lower or higher, please let your account manager know, and the Solid team will review the request.
IPs whose traffic persistently exceeds this limit by a large margin may be throttled further.
---
# Source: https://docs.solidfi.com/accounts/reconciliation.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Reconciliation
> A guide to Reconciliation
Solid v2 platform has reconciliation built-in. It ensures that all three below accounts are always in sync:
* FBO
* Master Account
* Sub Accounts
The Solid Dashboard lets you view all non-reconciled transactions in real time, informing you of the reconciliation status. Every transaction object has a reconciliation sub-object that provides the transaction's reconciliation status. If the transaction is reconciled, the sub-object has the transaction IDs in both Master and Sub Accounts. This ensures that both Master and Sub Accounts are always in sync. [Retrieve a Transaction using the API](/v2/api-reference/transactions/retrieve-a-transaction) to view the reconciliation status.
Every incoming and outgoing transaction is ledgered in the Master Account to reflect the FBO accurately. This ensures that both Master Account and FBO are always in sync.
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/reissue-a-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Reissue a Card
> Reissue a Card
## OpenAPI
````yaml post /v2/issuing/card/{card_id}/replace
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card/{card_id}/replace:
parameters:
- name: card_id
in: path
required: true
schema:
type: string
post:
tags:
- Cards
summary: Reissue a Card
description: Reissue a Card
operationId: ReissueACard
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
reason:
type: string
example: lost
description: card reissue reason
enum:
- lost
- stolen
- damaged
- expired
card_fulfilment:
type: object
properties:
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
examples:
Reissue a Card:
value:
reason: lost
card_fulfilment:
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
responses:
'200':
description: Reissue a Card
content:
application/json:
schema:
$ref: '#/components/schemas/card'
type: object
examples:
card_example:
$ref: '#/components/examples/card_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
show_card_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/card_not_found_error'
security:
- {}
components:
schemas:
card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account under which the card was created
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
label:
type: string
example: Travel
description: label of the card
product:
type: string
example: business_spend
description: type of card product configured based on the client's use case
enum:
- business_spend
- consumer_debit
- business_debit
- consumer_gpr
- consumer_gpnr
- consumer_payroll
- consumer_hsa
- consumer_fsa
- consumer_govt_benefits
theme:
type: string
example: metallic
description: theme of the card configured as part of the client use case
type:
type: string
example: physical
description: type of card
enum:
- physical
- virtual
expiry_month:
type: string
example: '12'
description: expiration month of the card
expiry_year:
type: string
example: '2025'
description: expiration year of the card
last4:
type: string
example: '5275'
description: last 4 digits of the card number
card_fulfilment:
type: object
properties:
embossing:
type: object
properties:
card_holder_name:
type: string
example: John Doe
description: name of the person to be embossed on the card
business_name:
type: string
example: Ace Inc
description: name of the business to be embossed on the card
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
tracking:
type: object
properties:
status:
type: string
example: delivered
description: delivery status of the card
enum:
- pending
- delivered
- canceled
- failure
- returned
- shipped
eta:
type: string
example: '2024-05-02'
description: estimated date of arrival for the shipped card
number:
type: string
example: '1231233'
description: tracking number if shipped via USPS Priority or UPS Next Day
url:
type: string
example: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
description: tracking URL if shipped via USPS Priority or UPS Next Day
provider:
type: string
example: usps
description: shipping provider (eg. USPS) that shipped the card
controls:
type: object
properties:
allowed:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to allow on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to allow on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to allow on the card. Example
["US","IN"]
items:
type: string
blocked:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to block on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to block on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to block on the card. Example
["US","IN"]
items:
type: string
limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period in which the maximum amount is allowed to be
spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '500.00'
description: maximum amount allowed to be spent in the set period
atm_enabled:
type: string
example: 'true'
description: >-
atm access for the card, true means enabled (by default), false
means disabled
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of the card
enum:
- open
- closed
- blocked
- locked
timestamps:
$ref: '#/components/schemas/card_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was closed
examples:
card_example:
value:
id: crd_7948d9a96706dd05360a340002de725f
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
label: Travel
product: business_spend
theme: metallic
type: physical
expiry_month: '12'
expiry_year: '2022'
last4: '5275'
card_fulfilment:
embossing:
card_holder_name: John Doe
business_name: Ace Inc
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
tracking:
status: delivered
eta: '2024-05-02'
number: '1231233'
url: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
provider: usps
controls:
allowed:
merchants: []
categories: []
countries: []
blocked:
merchants: []
categories: []
countries: []
limit:
period: daily
max_spend_amount: '500.00'
max_spend_per_transaction: '100.00'
max_spend_count: '10'
atm_enabled: 'true'
external_reference_id: FSY52RAZ-4X
attachments:
- label: United
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
description: Sales Team Card
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
closed_at: '2024-04-02T21:00:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
card_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/card-holders/retrieve-a-card-holder.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve a Card Holder
> Retrieve a Card Holder
## OpenAPI
````yaml get /v2/issuing/card_holder/{card_holder_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card_holder/{card_holder_id}:
parameters:
- name: card_holder_id
in: path
required: true
schema:
type: string
get:
tags:
- Card Holders
summary: Retrieve a Card Holder
description: Retrieve a Card Holder
operationId: retrieveACardHolder
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve a Card Holder
content:
application/json:
schema:
$ref: '#/components/schemas/card_holder'
type: object
examples:
card_holder_example:
$ref: '#/components/examples/card_holder_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
card_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/cardholder_not_found_error'
security:
- {}
components:
schemas:
card_holder:
type: object
properties:
id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that issued the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
person:
$ref: '#/components/schemas/person'
type: object
external_reference_id:
type: string
example: 6RPD1QW-W75
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace Sales Rep
description: purpose of card holder
ofac:
$ref: '#/components/schemas/card_holder_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of card holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/card_holder_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
card_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the card holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the card holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
examples:
card_holder_example:
value:
id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
external_reference_id: 6RPD1QW-W75
purpose: Ace Sales Rep
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
metadata:
designation: Senior Sales Manager
employee_number: '77'
attachments:
- label: Employee Badge
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
deactivated_at: '2024-04-02T21:00:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
cardholder_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/retrieve-a-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve a Card
> Retrieve a Card
## OpenAPI
````yaml get /v2/issuing/card/{card_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card/{card_id}:
parameters:
- name: card_id
in: path
required: true
schema:
type: string
get:
tags:
- Cards
summary: Retrieve a Card
description: Retrieve a Card
operationId: retrieveACard
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve a Card
content:
application/json:
schema:
$ref: '#/components/schemas/card'
type: object
examples:
card_example:
$ref: '#/components/examples/card_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
card_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/card_not_found_error'
security:
- {}
components:
schemas:
card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account under which the card was created
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
label:
type: string
example: Travel
description: label of the card
product:
type: string
example: business_spend
description: type of card product configured based on the client's use case
enum:
- business_spend
- consumer_debit
- business_debit
- consumer_gpr
- consumer_gpnr
- consumer_payroll
- consumer_hsa
- consumer_fsa
- consumer_govt_benefits
theme:
type: string
example: metallic
description: theme of the card configured as part of the client use case
type:
type: string
example: physical
description: type of card
enum:
- physical
- virtual
expiry_month:
type: string
example: '12'
description: expiration month of the card
expiry_year:
type: string
example: '2025'
description: expiration year of the card
last4:
type: string
example: '5275'
description: last 4 digits of the card number
card_fulfilment:
type: object
properties:
embossing:
type: object
properties:
card_holder_name:
type: string
example: John Doe
description: name of the person to be embossed on the card
business_name:
type: string
example: Ace Inc
description: name of the business to be embossed on the card
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
tracking:
type: object
properties:
status:
type: string
example: delivered
description: delivery status of the card
enum:
- pending
- delivered
- canceled
- failure
- returned
- shipped
eta:
type: string
example: '2024-05-02'
description: estimated date of arrival for the shipped card
number:
type: string
example: '1231233'
description: tracking number if shipped via USPS Priority or UPS Next Day
url:
type: string
example: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
description: tracking URL if shipped via USPS Priority or UPS Next Day
provider:
type: string
example: usps
description: shipping provider (eg. USPS) that shipped the card
controls:
type: object
properties:
allowed:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to allow on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to allow on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to allow on the card. Example
["US","IN"]
items:
type: string
blocked:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to block on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to block on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to block on the card. Example
["US","IN"]
items:
type: string
limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period in which the maximum amount is allowed to be
spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '500.00'
description: maximum amount allowed to be spent in the set period
atm_enabled:
type: string
example: 'true'
description: >-
atm access for the card, true means enabled (by default), false
means disabled
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of the card
enum:
- open
- closed
- blocked
- locked
timestamps:
$ref: '#/components/schemas/card_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was closed
examples:
card_example:
value:
id: crd_7948d9a96706dd05360a340002de725f
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
label: Travel
product: business_spend
theme: metallic
type: physical
expiry_month: '12'
expiry_year: '2022'
last4: '5275'
card_fulfilment:
embossing:
card_holder_name: John Doe
business_name: Ace Inc
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
tracking:
status: delivered
eta: '2024-05-02'
number: '1231233'
url: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
provider: usps
controls:
allowed:
merchants: []
categories: []
countries: []
blocked:
merchants: []
categories: []
countries: []
limit:
period: daily
max_spend_amount: '500.00'
max_spend_per_transaction: '100.00'
max_spend_count: '10'
atm_enabled: 'true'
external_reference_id: FSY52RAZ-4X
attachments:
- label: United
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
description: Sales Team Card
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
closed_at: '2024-04-02T21:00:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
card_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/counterparties/retrieve-a-counterparty.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve a Counterparty
> Retrieve a Counterparty
## OpenAPI
````yaml get /v2/payments/counterparty/{counterparty_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/counterparty/{counterparty_id}:
parameters:
- name: counterparty_id
in: path
required: true
schema:
type: string
get:
tags:
- Counterparties
summary: Retrieve a Counterparty
description: Retrieve a Counterparty
operationId: retrieveACounterparty
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve a Counterparty
content:
application/json:
schema:
$ref: '#/components/schemas/counterparty'
type: object
examples:
counterparty_example:
$ref: '#/components/examples/counterparty_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
counterparty_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/counterparty_not_found_error'
security:
- {}
components:
schemas:
counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client to which the counterparty belongs
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: >-
unique id of the sub account under which the counterparty was
created
label:
type: string
example: Development Vendor
description: label of the counterparty
type:
type: string
example: person
description: type of counterparty
enum:
- person
- business
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
intra_account:
$ref: '#/components/schemas/counterparty_intra_account'
type: object
ach:
$ref: '#/components/schemas/counterparty_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/counterparty_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/counterparty_international_wire'
type: object
rtp:
$ref: '#/components/schemas/counterparty_rtp'
type: object
fednow:
$ref: '#/components/schemas/counterparty_fednow'
type: object
check:
$ref: '#/components/schemas/counterparty_check'
type: object
debit_card:
$ref: '#/components/schemas/counterparty_debit_card'
type: object
purpose:
type: string
example: Offshore dev center
description: purpose of counterparty
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
ofac:
$ref: '#/components/schemas/counterparty_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of counterparty
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/counterparty_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
counterparty_intra_account:
type: object
properties:
sub_account_number:
type: string
example: '95483674098723'
description: sub account number of the counterparty
sub_account_id:
type: string
example: sub_cda1e562657c41e553104b10aad3fe70
description: sub account id of the counterparty
counterparty_ach:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: ACH routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
description: if the account is verified - true or false
example: pass
enum:
- pass
- fail
- review
counterparty_domestic_wire:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: Wire routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
counterparty_international_wire:
type: object
properties:
account_number:
type: string
example: '920020006167511'
description: bank account number of the counterparty
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
counterparty_rtp:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: RTP routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
example: pass
description: if the account is verified
enum:
- pass
- fail
- review
counterparty_fednow:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: FedNow routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
example: pass
description: if the account is verified or not
enum:
- pass
- fail
- review
counterparty_check:
type: object
properties:
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
counterparty_debit_card:
type: object
properties:
card_number:
type: string
example: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
description: tokenized card number of counterparty's debit card
last4:
type: string
example: '9990'
description: last4 of counterparty's debit card
expiry_month:
type: string
example: '10'
description: expiration month of counterparty's debit card
expiry_year:
type: string
example: '2024'
description: expiration year of counterparty's debit card
cvv:
type: string
example: tok_live_7CVyHuQR7aAjCZivYzLbuP_9990
description: cvv code of counterparty's debit card
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
pull_enabled:
type: string
example: 'true'
description: if debit pull is enabled or disabled by the debit card issuer
enum:
- 'true'
- 'false'
push_enabled:
type: string
example: 'true'
description: if debit pull is enabled or disabled by the debit card issuer
enum:
- 'true'
- 'false'
counterparty_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
counterparty_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
examples:
counterparty_example:
value:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
label: Development Vendor
type: person
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
intra_account:
sub_account_number: '95483674098723'
sub_account_id: sub_cda1e562657c41e553104b10aad3fe70
ach:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
domestic_wire:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
international_wire:
account_number: '920020006167511'
beneficiary_bank:
identifier_code: ICICINBBNRI
name: ICICI Bank
address:
line1: 256 Main St
line2: ''
city: Bengaluru
state: KA
country: IN
postal_code: '900009'
correspondent_bank:
identifier_code: SCBLUS33XXX
name: STANDARD CHARTERED BANK
address:
line1: 1095 12th Ave
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
rtp:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
fednow:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
check:
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
debit_card:
card_number: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
last4: '9990'
expiry_month: '10'
expiry_year: '2024'
cvv: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
pull_enabled: true
push_enabled: true
purpose: Offshore dev center
external_reference_id: TW-9L1L2-UVV
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments:
- label: Dev Contract
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
vendor_id: VID-0987ACR
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
counterparty_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find counterparty by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/master-accounts/retrieve-a-master-account.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve a Master Account
> Retrieve a Master Account
## OpenAPI
````yaml get /v2/accounts/master_account/{master_account_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/master_account/{master_account_id}:
parameters:
- name: master_account_id
in: path
required: true
schema:
type: string
get:
tags:
- Master Accounts
summary: Retrieve a Master Account
description: Retrieve a Master Account
operationId: retrieveAMasterAccount
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve a Master Account
content:
application/json:
schema:
$ref: '#/components/schemas/master_account'
type: object
examples:
master_account_example:
$ref: '#/components/examples/master_account_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
master_account:
type: object
properties:
id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the master account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
label:
type: string
example: Payments Account
description: label of the master account
available_balance:
type: string
example: '104100.41'
description: available balance in the master account
pending_credits:
type: string
example: '1198.50'
description: total pending credits to the master account
pending_debits:
type: string
example: '390.10'
description: total pending debits to the master account
account_number:
type: string
example: '9545931209'
description: account number of the master account
routing_number:
type: string
example: '123321123'
description: 9 digit routing number of the master account
sponsor_bank:
type: string
example: Lewis and Clark Bank
description: sponsor bank name
currency:
type: string
example: usd
description: currency of the master account
enum:
- usd
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Payment Ops Master Account
description: purpose of master account
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
description: ''
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of master account
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
- locked
timestamps:
$ref: '#/components/schemas/master_account_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
master_account_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the master account was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the master account was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the master account was closed
examples:
master_account_example:
value:
id: mas_743fa071316bc6beaf5dddfd05f49c30
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
label: Payments Account
available_balance: '104100.41'
pending_credits: '1198.50'
pending_debits: '390.10'
account_number: '9545931209'
routing_number: '123321123'
sponsor_bank: Sponsor Bank
currency: usd
external_reference_id: XV-H27LGD-FX
purpose: Payment Ops Master Account
attachments:
- label: flow of funds doc
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
master_account_code: '001'
status: open
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
closed_at: '2024-04-03T21:00:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-account-holders/retrieve-a-sub-account-holder.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve a Sub Account Holder
> Retrieve a Sub Account Holder
## OpenAPI
````yaml get /v2/accounts/sub_account_holder/{sub_account_holder_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account_holder/{sub_account_holder_id}:
parameters:
- name: sub_account_holder_id
in: path
required: true
schema:
type: string
get:
tags:
- Sub Account Holders
summary: Retrieve a Sub Account Holder
description: Retrieve a Sub Account Holder
operationId: retrieveASubAccountHolder
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve a Sub Account Holder
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account_holder'
type: object
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/sub_account_holder_not_found_error'
security:
- {}
components:
schemas:
sub_account_holder:
properties:
id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the sub account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
ofac:
$ref: '#/components/schemas/sub_account_holder_ofac'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of sub account holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/sub_account_holder_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
sub_account_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the sub account holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the sub account holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
examples:
sub_account_holder_example:
value:
id: sah_5ccfeef0adf0cbe2aa0980d2c9509b2d
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
type: person
person:
first_name: Jane
last_name: Doe
id_type: ssn
id_number: '223913234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: jane.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
kyc:
id: kyc_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/verify?id=kyc_01arz3ndektsv4rrffq69g5fav
details:
name:
status: pass
reasons: null
address:
status: pass
reasons: null
dob:
status: pass
reasons: null
ssn:
status: pass
reasons: null
phone:
status: pass
reasons: null
email:
status: pass
reasons: null
watchlist:
status: pass
reasons: null
fraud:
status: pass
reasons: null
idv:
id: idv_01arz3ndektsv4rrffq69g5fav
status: fail
method: solid
url: https://dashboard.solidfi.com/id=idv_01arz3ndektsv4rrffq69g5fav
reasons: null
business: null
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
external_reference_id: TW-9L1L2-UVV
purpose: Ace sub-account holder
attachments:
- label: formation
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
customer_code: '1501'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
deactivated_at: '2024-04-01T21:00:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
sub_account_holder_not_found_error:
value:
request_id: req_01900e9f737376be8aa2aa9c351ff598
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account holder by client id in qldb
field_name: ''
created_at: '2024-06-12T22:44:09Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-accounts/retrieve-a-sub-account.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve a Sub Account
> Retrieve a Sub Account
## OpenAPI
````yaml get /v2/accounts/sub_account/{sub_account_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account/{sub_account_id}:
parameters:
- name: sub_account_id
in: path
required: true
schema:
type: string
get:
tags:
- Sub Accounts
summary: Retrieve a Sub Account
description: Retrieve a Sub Account
operationId: retrieveASubAccount
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve a Sub Account
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account'
type: object
examples:
sub_account_example:
$ref: '#/components/examples/sub_account_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
sub_account:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the master account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: >-
unique id of the master account under which the sub account was
created
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_holder_name:
type: string
example: Ace LLC
description: sub account holder name
label:
type: string
example: Ace payments
description: label of the sub account
type:
type: string
example: cash
description: type of the sub account
enum:
- cash
- prepaid
- checking
account_number:
type: string
example: '9540861337293709'
description: account number of the sub account
routing_number:
type: string
example: '123206972'
description: 9 digit routing number of the sub account
sponsor_bank:
type: string
example: Lewis and Clark Bank
description: sponsor bank name
available_balance:
type: string
example: '0.00'
description: 'available balance in the sub account '
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account
pending_debits:
type: string
example: '0.00'
description: total pending debits to the sub account
currency:
type: string
example: usd
description: currency of the sub account
enum:
- usd
external_reference_id:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Sub account to pay offshore dev team
description: purpose of sub account
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of sub account
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
- locked
timestamps:
$ref: '#/components/schemas/sub_account_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was closed
examples:
sub_account_example:
value:
id: sub_bda1e562657c41e553104b10aad3fe70
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_holder_name: Ace LLC
label: Payments Account
type: cash
available_balance: '0.00'
pending_credits: '0.00'
pending_debits: '0.00'
account_number: '9540861337293709'
routing_number: '123321123'
sponsor_bank: Sponsor Bank
currency: usd
external_reference_id: XV-H27LGD-FX
purpose: Sub account to pay offshore dev team
attachments:
- label: contract
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
master_account_code: '001'
status: open
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
deactivated_at: '2024-04-03T21:00:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/retrieve-a-transaction.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve a Transaction
> Retrieve a Transaction
## OpenAPI
````yaml get /v2/payments/transaction/{transaction_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/transaction/{transaction_id}:
parameters:
- name: transaction_id
in: path
required: true
schema:
type: string
get:
tags:
- Transactions
summary: Retrieve a Transaction
description: Retrieve a Transaction
operationId: retrieveATransaction
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve a Transaction
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
retrieve_transaction_example:
$ref: '#/components/examples/retrieve_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
retrieve_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/transaction_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
retrieve_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '1500.00'
currency: usd
direction: credit
method: ach
type: push
message: incoming
description: May invoice from NewCo
available_balance: '1590.00'
pending_credits: '230.00'
pending_debits: '150.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: NewCo Inc
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach:
same_day: 'true'
effective_date: '2024-04-04'
company_discretionary_data: ''
company_entry_description: Payments
trace_number: '123112211'
return_code: ''
rta_id: ''
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata:
invoice_number: INV-AC989878
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '1500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
transaction_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find transaction by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/webhooks/retrieve-a-webhook.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve a Webhook
> Retrieve a Webhook
## OpenAPI
````yaml get /v2/webhook/{webhook_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/webhook/{webhook_id}:
parameters:
- name: webhook_id
in: path
required: true
schema:
type: string
get:
tags:
- Webhooks
summary: Retrieve a Webhook
description: Retrieve a Webhook
operationId: retrieveAWebhook
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve a Webhook
content:
application/json:
schema:
$ref: '#/components/schemas/webhook'
type: object
examples:
webhook_example:
$ref: '#/components/examples/webhook_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
webhook_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
webhook:
type: object
properties:
id:
type: string
example: whk_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the webhook created
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that issued the card
description:
type: string
example: Transaction webhook
description: description of the webhook
url:
type: string
example: http://test-url.com/txn-webhook
description: url of the webhook endpoint
events:
type: array
description: >-
an array of events to enable for this webhook endpoint. Example
["transaction.status.declined","transaction.status.received"]
items:
type: string
example: transaction.status.declined
status:
type: string
example: active
description: status of the webhook
enum:
- active
- inactive
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was created
updated_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was updated
deleted_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the webhook was deleted
examples:
webhook_example:
value:
id: whk_0190e7185e4874dab687e7af88f6f368
client_id: cli_01901368dbc174a9864a7cb156b0a207
description: Transaction Webhook
url: http://test-url.com/txn-webhook
events:
- transaction.status.declined
- transaction.status.received
status: active
timestamps:
created_at: '2024-07-24T23:34:12Z'
updated_at: '2024-07-25T10:22:11Z'
deleted_at: '2024-07-26T05:45:19Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/attachments/retrieve-an-attachment.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve an Attachment
> Retrieve an Attachment
## OpenAPI
````yaml get /v2/attachment/{attachment_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/attachment/{attachment_id}:
parameters:
- name: attachment_id
in: path
required: true
schema:
type: string
get:
tags:
- Attachments
summary: Retrieve an Attachment
description: Retrieve an Attachment
operationId: retrieveAnAttachment
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Retrieve an Attachment
content:
application/json:
schema:
$ref: '#/components/schemas/attachment'
type: object
examples:
attachment_example:
$ref: '#/components/examples/attachment_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
attachment_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
attachment:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
reference_id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: resource id to which the attachment belongs
label:
type: string
example: formation
description: label of the attachment
url:
type: string
example: http://bucket.s3-website-us-east-1.amazonaws.com
description: url to download the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the attachment was created
deleted_at:
type: string
example: '2024-04-04T11:06:00Z'
description: time at which the attachment was deleted
examples:
attachment_example:
value:
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
reference_id: ctp_8e5541c8a9e50c3af3b0daacf9175130
label: formation
url: http://bucket.s3-website-us-east-1.amazonaws.com
created_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/counterparties/retrieve-bank-info.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Retrieve Bank Info
> Retrieve Bank Info
## OpenAPI
````yaml get /v2/payments/counterparty/bank
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/counterparty/bank:
get:
tags:
- Counterparties
summary: Retrieve Bank Info
description: Retrieve Bank Info
operationId: retrieveBankInfo
parameters:
- name: type
in: query
schema:
type: string
example: aba
description: routing number type - aba or swift
enum:
- aba
- swift
- name: routing_number
in: query
schema:
type: string
example: '021214189'
description: bank routing number
responses:
'200':
description: Retrieve Bank Info
content:
application/json:
schema:
$ref: '#/components/schemas/bank_info'
type: object
examples:
bank_info_example:
$ref: '#/components/examples/bank_info_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
bank_info_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
bank_info:
type: object
properties:
routing_number:
type: string
example: '021214189'
description: routing number of the bank
bank_name:
type: string
example: ConnectOne Bank
description: name of the bank
type:
type: string
example: aba
description: routing number type - aba or swift
enum:
- aba
- swift
payment_methods:
type: array
description: an array of supported payment methods. Example ["ach","wire"]
items:
type: string
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
examples:
bank_info_example:
value:
routing_number: '021214189'
bank_name: ConnectOne Bank
type: aba
payment_methods:
- ach
- wire
address:
line1: 1365 Palisades Ave
line2: ''
city: Fort Lee
state: NJ
country: US
postal_code: 07024-5242
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/set-a-pin.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Set a PIN
> Setting a PIN is a two-step process
1. Get a one-time PIN token
2. Use the PIN token in Solid's SDK to set a PIN. Solid will provide access to the SDK during the implementation.
## OpenAPI
````yaml post /v2/issuing/card/{card_id}/set_pin_token
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card/{card_id}/set_pin_token:
parameters:
- name: card_id
in: path
required: true
schema:
type: string
post:
tags:
- Cards
summary: Set a PIN
description: |-
Setting a PIN is a two-step process
1. Get a one-time PIN token
2. Use the PIN token in Solid's SDK to set a PIN. Solid will provide access to the SDK during the implementation.
operationId: setAPIN
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Set a PIN
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
set_pin_token:
type: string
example: card_pin_test_01920c6725b4707688fa0ad517bdeddb
description: set PIN token
examples:
set_pin_example:
value:
id: crd_7948d9a96706dd05360a340002de725f
set_pin_token: card_pin_test_01920c6725b4707688fa0ad517bdeddb
'401':
description: Unauthorized Error
content:
application/json:
examples:
show_card_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/card_not_found_error'
security:
- {}
components:
examples:
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
card_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/show-a-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Show a Card
> Displaying unredacted card number and CVV is a two-step process
1. Get a one-time show token
2. Use the show token in Solid's SDK to show the unredacted card number and CVV. Solid will provide access to the SDK during the implementation.
## OpenAPI
````yaml post /v2/issuing/card/{card_id}/show_token
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card/{card_id}/show_token:
parameters:
- name: card_id
in: path
required: true
schema:
type: string
post:
tags:
- Cards
summary: Show a Card
description: |-
Displaying unredacted card number and CVV is a two-step process
1. Get a one-time show token
2. Use the show token in Solid's SDK to show the unredacted card number and CVV. Solid will provide access to the SDK during the implementation.
operationId: showACard
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'200':
description: Show a Card
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
show_token:
type: string
example: card_show_test_66449e6614b54f9e838c74807268db09
description: show token
examples:
show_card_example:
value:
id: crd_7948d9a96706dd05360a340002de725f
show_token: card_show_test_66449e6614b54f9e838c74807268db09
'401':
description: Unauthorized Error
content:
application/json:
examples:
show_card_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/card_not_found_error'
security:
- {}
components:
examples:
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
card_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/simulation/simulate-an-auth-transaction.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Simulate an Auth Transaction
> Simulate an Auth Transaction
## OpenAPI
````yaml post /v2/simulate/incoming/card_issuing
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/simulate/incoming/card_issuing:
post:
tags:
- Simulation
- Card
summary: Simulate an Auth Transaction
description: Simulate an Auth Transaction
operationId: simulateAnAuthTransaction
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
card_id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
amount:
type: string
example: '120.00'
description: amount of the transaction
parent_transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the parent transaction
type:
type: string
example: refund
description: type within the payment method used for the transaction
enum:
- auth
- adjust
- reverse
- refund
status:
type: string
example: settled
description: status of the transaction
enum:
- pending
- settled
examples:
simulate_refund_auth_settle_example:
value:
card_id: crd_7948d9a96706dd05360a340002de725f
amount: '120.00'
parent_transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
type: refund
status: settled
simulate_refund_example:
value:
card_id: crd_7948d9a96706dd05360a340002de725f
amount: '120.00'
parent_transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
type: refund
status: pending
simulate_refund_settle_example:
value:
card_id: crd_7948d9a96706dd05360a340002de725f
amount: '120.00'
parent_transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
type: refund
status: settled
simulate_reversal_example:
value:
card_id: crd_7948d9a96706dd05360a340002de725f
amount: '120.00'
parent_transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
type: reverse
status: settled
simulate_settle_example:
value:
card_id: crd_7948d9a96706dd05360a340002de725f
amount: '120.00'
parent_transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
type: adjust
status: settled
simulate_auth_example:
value:
card_id: crd_7948d9a96706dd05360a340002de725f
amount: '93.50'
type: auth
status: pending
simulate_auth_settle_example:
value:
card_id: crd_7948d9a96706dd05360a340002de725f
amount: '120.00'
type: auth
status: settled
responses:
'201':
description: >-
Simulate an Auth Transaction / Simulate a Settle Transaction /
Simulate a Reversal Transaction / Simulate a Refund Auth Transaction
/ Simulate a Refund Settle Transaction / Simulate a Refund Auth &
Settle Transaction
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
simulate_refund_auth_settle_example:
$ref: '#/components/examples/simulate_refund_auth_settle_example'
simulate_refund_example:
$ref: '#/components/examples/simulate_refund_example'
simulate_refund_settle_example:
$ref: '#/components/examples/simulate_refund_settle_example'
simulate_reversal_example:
$ref: '#/components/examples/simulate_reversal_example'
simulate_settle_example:
$ref: '#/components/examples/simulate_settle_example'
simulate_auth_example:
$ref: '#/components/examples/simulate_auth_example'
simulate_auth_settle_example:
$ref: '#/components/examples/simulate_auth_settle_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
simulate_auth_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
simulate_refund_auth_settle_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '120.00'
currency: usd
direction: credit
method: card_issuing
type: refund
message: incoming
description: Mom and Pop
available_balance: '313.50'
pending_credits: '0.00'
pending_debits: '0.00'
counterparty: null
card:
id: crd_7948d9a96706dd05360a340002de725f
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
merchant: Mom and Pop
auth_method: online
wallet: ''
rta_id: ''
local_transaction:
amount: '120.00'
currency: usd
conversion_rate: '1.00'
available_limit:
period: daily
max_spend_amount: '500.00'
max_spend_count: '10'
network_settlement_at: '2024-04-04T11:06:00Z'
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-04T11:06:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '120.00'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '120.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
simulate_refund_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: pending
amount: '120.00'
currency: usd
direction: credit
method: card_issuing
type: refund
message: incoming
description: Mom and Pop
available_balance: '313.50'
pending_credits: '0.00'
pending_debits: '0.00'
counterparty: null
card:
id: crd_7948d9a96706dd05360a340002de725f
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
merchant: Mom and Pop
auth_method: online
wallet: ''
rta_id: ''
local_transaction:
amount: '120.00'
currency: usd
conversion_rate: '1.00'
available_limit:
period: daily
max_spend_amount: '500.00'
max_spend_count: '10'
network_settlement_at: ''
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-04T11:06:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '120.00'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '120.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
simulate_refund_settle_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '120.00'
currency: usd
direction: credit
method: card_issuing
type: refund
message: incoming
description: Mom and Pop
available_balance: '313.50'
pending_credits: '0.00'
pending_debits: '0.00'
counterparty: null
card:
id: crd_7948d9a96706dd05360a340002de725f
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
merchant: Mom and Pop
auth_method: online
wallet: ''
rta_id: ''
local_transaction:
amount: '120.00'
currency: usd
conversion_rate: '1.00'
available_limit:
period: daily
max_spend_amount: '500.00'
max_spend_count: '10'
network_settlement_at: '2024-04-05T11:06:00Z'
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-04T11:06:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '120.00'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '120.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
simulate_reversal_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '120.00'
currency: usd
direction: credit
method: card_issuing
type: reverse
message: incoming
description: Mom and Pop
available_balance: '313.50'
pending_credits: '0.00'
pending_debits: '0.00'
counterparty: null
card:
id: crd_7948d9a96706dd05360a340002de725f
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
merchant: Mom and Pop
auth_method: online
wallet: ''
rta_id: ''
local_transaction:
amount: '120.00'
currency: usd
conversion_rate: '1.00'
available_limit:
period: daily
max_spend_amount: '500.00'
max_spend_count: '10'
network_settlement_at: ''
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-04T11:06:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '120.00'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '120.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
simulate_settle_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '26.50'
currency: usd
direction: debit
method: card_issuing
type: adjust
message: incoming
description: Mom and Pop
available_balance: '120.50'
pending_credits: '0.00'
pending_debits: '0.00'
counterparty: null
card:
id: crd_7948d9a96706dd05360a340002de725f
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
merchant: Mom and Pop
auth_method: online
wallet: ''
rta_id: ''
local_transaction:
amount: '26.50'
currency: usd
conversion_rate: '1.00'
available_limit:
period: daily
max_spend_amount: '380.00'
max_spend_count: '9'
network_settlement_at: '2024-04-02T21:00:00'
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '26.50'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '26.50'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
simulate_auth_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: pending
amount: '93.50'
currency: usd
direction: debit
method: card_issuing
type: auth
message: incoming
description: Mom and Pop
available_balance: '290.50'
pending_credits: '0.00'
pending_debits: '93.50'
counterparty: null
card:
id: crd_7948d9a96706dd05360a340002de725f
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
merchant: Mom and Pop
auth_method: online
wallet: ''
rta_id: ''
local_transaction:
amount: '93.50'
currency: usd
conversion_rate: '1.00'
available_limit:
period: daily
max_spend_amount: '406.50'
max_spend_count: '9'
network_settlement_at: ''
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '93.50'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '93.50'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
simulate_auth_settle_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '120.00'
currency: usd
direction: debit
method: card_issuing
type: auth
message: incoming
description: Mom and Pop
available_balance: '193.50'
pending_credits: '0.00'
pending_debits: '0.00'
counterparty: null
card:
id: crd_7948d9a96706dd05360a340002de725f
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
merchant: Mom and Pop
auth_method: online
wallet: ''
rta_id: ''
local_transaction:
amount: '120.00'
currency: usd
conversion_rate: '1.00'
available_limit:
period: daily
max_spend_amount: '380.00'
max_spend_count: '9'
network_settlement_at: '2024-04-04T11:06:00Z'
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-04T11:06:00Z'
attachments: null
metadata: null
reconciliation:
status: not_reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '120.00'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '120.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/simulation/simulate-an-incoming-ach-pull.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Simulate an Incoming ACH Pull
> Simulate an Incoming ACH Pull
## OpenAPI
````yaml post /v2/simulate/incoming/ach/pull
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/simulate/incoming/ach/pull:
post:
tags:
- Simulation
- ACH
summary: Simulate an Incoming ACH Pull
description: Simulate an Incoming ACH Pull
operationId: simulateAnIncomingAchPull
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: May Rent
description: description of the transaction
counterparty:
type: object
properties:
name:
type: string
example: John Doe
description: name of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
examples:
Simulate an Incoming ACH Pull:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
amount: '500.00'
description: May Rent
counterparty:
name: John Doe
routing_number: '121042882'
responses:
'201':
description: Simulate an Incoming ACH Pull
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
simulate_ach_pull_example:
$ref: '#/components/examples/simulate_ach_pull_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
simulate_ach_pull_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
simulate_ach_pull_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: received
amount: '500.00'
currency: usd
direction: debit
method: ach
type: pull
message: incoming
description: May Rent
available_balance: '1250.50'
pending_credits: '0.00'
pending_debits: '500.00'
counterparty:
id: ''
name: John Doe
verification_status: pass
account_number: ''
routing_number: '121042882'
account_type: ''
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach:
same_day: 'true'
effective_date: '2024-04-04'
company_discretionary_data: ''
company_entry_description: Payment
trace_number: '12104288212876'
return_code: ''
rta_id: ''
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '500.00'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/simulation/simulate-an-incoming-ach-push.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Simulate an Incoming ACH Push
> Simulate an Incoming ACH Push
## OpenAPI
````yaml post /v2/simulate/incoming/ach/push
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/simulate/incoming/ach/push:
post:
tags:
- Simulation
- ACH
summary: Simulate an Incoming ACH Push
description: Simulate an Incoming ACH Push
operationId: simulateAnIncomingAchPush
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: May Rent
description: description of the transaction
counterparty:
type: object
properties:
name:
type: string
example: John Doe
description: name of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
examples:
Simulate an Incoming ACH Push:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
amount: '500.00'
description: May Rent
counterparty:
name: John Doe
routing_number: '121042882'
responses:
'201':
description: Simulate an Incoming ACH Push
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
simulate_ach_push_example:
$ref: '#/components/examples/simulate_ach_push_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
simulate_ach_push_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
simulate_ach_push_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: received
amount: '500.00'
currency: usd
direction: credit
method: ach
type: push
message: incoming
description: May Rent
available_balance: '1250.50'
pending_credits: '500.00'
pending_debits: '0.00'
counterparty:
id: ''
name: John Doe
verification_status: pass
account_number: ''
routing_number: '121042882'
account_type: ''
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach:
same_day: 'true'
effective_date: '2024-04-04'
company_discretionary_data: ''
company_entry_description: Payment
trace_number: '12104288212098'
return_code: ''
rta_id: ''
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_a0b56852400c9fede6233fd8c2e60f9c
amount: '500.00'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/simulation/simulate-an-incoming-domestic-wire-push.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Simulate an Incoming Domestic Wire Push
> Simulate an Incoming Domestic Wire Push
## OpenAPI
````yaml post /v2/simulate/incoming/domestic_wire
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/simulate/incoming/domestic_wire:
post:
tags:
- Simulation
- Domestic Wire
summary: Simulate an Incoming Domestic Wire Push
description: Simulate an Incoming Domestic Wire Push
operationId: simulateAnIncomingDomesticWirePush
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: May Rent
description: description of the transaction
counterparty:
type: object
properties:
name:
type: string
example: John Doe
description: name of the counterparty
account_number:
type: string
example: '78762546'
description: account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
examples:
Simulate an Incoming Domestic Wire Push:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
amount: '500.00'
description: May Rent
counterparty:
name: John Doe
account_number: '78762546'
routing_number: '121042882'
responses:
'201':
description: Simulate an Incoming Domestic Wire Push
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
simulate_domestic_wire_example:
$ref: '#/components/examples/simulate_domestic_wire_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
simulate_domestic_wire_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
simulate_domestic_wire_example:
value:
id: txn_0191beb31b3771ec86fe245d603f1521
sub_account_id: sub_019105d908077ed2be68d7a08b4c7bfb
master_account_holder_id: mah_019105907421702091f5651e87682222
sub_account_holder_id: sah_019105d12584786ab54e4d1ba55f7c00
client_id: cli_0191058c4fc676dcb4ed67a096a80d6a
master_account_id: mas_019105952d8770f984bc888caa8059f8
status: received
amount: '8.00'
currency: USD
direction: credit
method: domestic_wire
type: push
message: incoming
description: Rent Payment
available_balance: '130.85'
pending_credits: '8.00'
pending_debits: '0.00'
counterparty:
id: ''
name: John Doe
verification_status: ''
account_number: '78762546'
routing_number: '121042882'
account_type: ''
bank_name: ''
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach: null
domestic_wire:
imad: FVtvUkfw0
omad: k2aVdUuUy
international_wire: null
rtp: null
fednow: null
check: null
card: null
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_019105952d8770f984bc888caa8059f8
transaction_id: txn_0191beb31a0573b586bbaf1909a0dd2a
amount: '8.00'
sub_account: null
timestamps:
created_at: '2024-09-04T20:21:34Z'
updated_at: '2024-09-04T20:21:34Z'
settled_at: ''
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/simulation/simulate-an-incoming-international-wire-push.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Simulate an Incoming International Wire Push
> Simulate an Incoming International Wire Push
## OpenAPI
````yaml post /v2/simulate/incoming/international_wire
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/simulate/incoming/international_wire:
post:
tags:
- Simulation
- International Wire
summary: Simulate an Incoming International Wire Push
description: Simulate an Incoming International Wire Push
operationId: simulateAnIncomingInternationalWirePush
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
amount:
type: string
example: '500.00'
description: amount of the transaction
description:
type: string
example: May Rent
description: description of the transaction
counterparty:
type: object
properties:
name:
type: string
example: John Doe
description: name of the counterparty
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
account_number:
type: string
example: '121042882'
description: bank account number of the counterparty
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
examples:
Simulate an Incoming International Wire Push:
value:
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
amount: '500.00'
description: May Rent
counterparty:
name: John Doe
identifier_code: ICICINBBNRI
account_number: '78762546'
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
responses:
'201':
description: Simulate an Incoming International Wire Push
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
simulate_international_wire_example:
$ref: '#/components/examples/simulate_international_wire_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
simulate_international_wire_example:
$ref: '#/components/examples/unauth_error'
security:
- {}
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
simulate_international_wire_example:
value:
id: txn_0191beb4cecf7ac5a1044ff0fef33c06
sub_account_id: sub_019105d908077ed2be68d7a08b4c7bfb
master_account_holder_id: mah_019105907421702091f5651e87682222
sub_account_holder_id: sah_019105d12584786ab54e4d1ba55f7c00
client_id: cli_0191058c4fc676dcb4ed67a096a80d6a
master_account_id: mas_019105952d8770f984bc888caa8059f8
status: received
amount: '8.00'
currency: USD
direction: credit
method: international_wire
type: push
message: incoming
description: Rent Payment
available_balance: '138.85'
pending_credits: '8.00'
pending_debits: '0.00'
counterparty:
id: ''
name: John Doe
verification_status: ''
account_number: '78762546'
routing_number: ''
account_type: ''
bank_name: ''
beneficiary_bank: null
correspondent_bank:
identifier_code: ICICINBBNRI
name: ''
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
shipping_address: null
ach: null
domestic_wire: null
international_wire:
imad: MTrfbagJU
omad: qkBZM9FW5
rtp: null
fednow: null
check: null
card: null
parent_transaction_id: ''
external_reference_id: ''
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_019105952d8770f984bc888caa8059f8
transaction_id: txn_0191beb4cdae7d45bac2845756f8c00e
amount: '8.00'
sub_account: null
timestamps:
created_at: '2024-09-04T20:23:26Z'
updated_at: '2024-09-04T20:23:26Z'
settled_at: ''
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/getting-started/simulation.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Simulation
> Solid Platform simulates transactions
Solid platform lets you simulate payments to test your integration in the sandbox environment. The platform currently supports simulating ACH payment methods and spending on issued cards.
Currently, the platform supports:
* [Simulating an Incoming ACH Push](/v2/api-reference/simulation/simulate-an-incoming-ach-push)
* [Simulating an Incoming ACH Pull](/v2/api-reference/simulation/simulate-an-incoming-ach-pull)
* [Simulating a Card Auth Transaction](/v2/api-reference/simulation/simulate-an-auth-transaction)
You should not stress-test your integration in the sandbox environment, as the rate limits would block the requests.
---
# Source: https://docs.solidfi.com/accounts/sub-accounts.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Sub Accounts
> A guide to Sub Accounts
Sub Accounts are created under a Master Account. The total balance in all the Sub Accounts should match the Master Account balance. It's important to note that the Sub Account Holder owns the Sub Account, which means the funds in the Sub Account belong to the Sub Account Holder and are custodied at the bank.
Use the APIS to [Create a Sub Account Holder](/v2/api-reference/sub-account-holders/create-a-sub-account-holder) and then [Create a Sub Account](/v2/api-reference/sub-accounts/create-a-sub-account).
Sub Accounts can be of three types:
* Cash
* Prepaid
* Checking
Each created Sub Account comes with a unique Sub Account ID. Sub Accounts can be configured to issue an Account Number depending on the use case. Upon the bank's approval, limits and controls at the Sub Account level are configured during onboarding.
Transactions can only be originated from a Sub Account. Every outgoing transaction makes a ledger entry first in the Sub Account and then ledgered in the Master Account to keep both Master and Sub Accounts in sync.
If the Sub Account is not issued an account number, an incoming transaction has to be sub-ledgered using the [Sub-Ledger a Transaction API](/v2/api-reference/transactions/sub-ledger-a-transaction).
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/sub-ledger-a-transaction.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Sub Ledger a Transaction
> Sub Ledger a Transaction
## OpenAPI
````yaml post /v2/payments/transaction
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/transaction:
post:
tags:
- Transactions
summary: Sub Ledger a Transaction
description: Sub Ledger a Transaction
operationId: subLedgerATransaction
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
master_account_transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
amount:
type: string
example: '1500.00'
description: amount of the transaction
examples:
Sub Ledger a Transaction:
value:
master_account_transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
amount: '1500.00'
responses:
'201':
description: Sub Ledger a Transaction
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
sub_ledger_transaction_example:
$ref: '#/components/examples/sub_ledger_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_ledger_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
sub_ledger_transaction_example:
$ref: '#/components/examples/master_account_not_found_error'
components:
schemas:
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
sub_ledger_transaction_example:
value:
id: txn_a0b56852400c9fede6233fd8c2e60f9c
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '1500.00'
currency: usd
direction: credit
method: ach
type: push
message: incoming
description: May invoice from NewCo
available_balance: '1590.00'
pending_credits: '0.00'
pending_debits: '0.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: John Doe
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: personal_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach:
same_day: 'true'
effective_date: '2024-04-04'
company_discretionary_data: DIRECT DEPOSIT
company_entry_description: Payments
trace_number: '123112211'
return_code: ''
rta_id: ''
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata: null
reconciliation:
status: reconciled
master_account:
- id: mas_743fa071316bc6beaf5dddfd05f49c30
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '1500.00'
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '1500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-account-holders/submit-a-idv.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Submit an IDV
> Submit an IDV
## OpenAPI
````yaml post /v2/accounts/sub_account_holder/{sub_account_holder_id}/idv
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account_holder/{sub_account_holder_id}/idv:
parameters:
- name: sub_account_holder_id
in: path
required: true
schema:
type: string
post:
tags:
- Sub Account Holders
summary: Submit an IDV
description: Submit an IDV
operationId: SubmitAnIDV
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'201':
description: Submit an IDV
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account_holder'
type: object
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
sub_account_holder:
properties:
id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the sub account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
ofac:
$ref: '#/components/schemas/sub_account_holder_ofac'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of sub account holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/sub_account_holder_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
sub_account_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the sub account holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the sub account holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
examples:
sub_account_holder_example:
value:
id: sah_5ccfeef0adf0cbe2aa0980d2c9509b2d
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
type: person
person:
first_name: Jane
last_name: Doe
id_type: ssn
id_number: '223913234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: jane.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
kyc:
id: kyc_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/verify?id=kyc_01arz3ndektsv4rrffq69g5fav
details:
name:
status: pass
reasons: null
address:
status: pass
reasons: null
dob:
status: pass
reasons: null
ssn:
status: pass
reasons: null
phone:
status: pass
reasons: null
email:
status: pass
reasons: null
watchlist:
status: pass
reasons: null
fraud:
status: pass
reasons: null
idv:
id: idv_01arz3ndektsv4rrffq69g5fav
status: fail
method: solid
url: https://dashboard.solidfi.com/id=idv_01arz3ndektsv4rrffq69g5fav
reasons: null
business: null
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
external_reference_id: TW-9L1L2-UVV
purpose: Ace sub-account holder
attachments:
- label: formation
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
customer_code: '1501'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
deactivated_at: '2024-04-01T21:00:00Z'
sub_account_holder_bad_request_error:
value:
request_id: req_01900ec5ebd37bf2a18b90948129e419
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: no type specified!
field_name: type
created_at: '2024-06-12T23:26:10Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-account-holders/submit-a-kyb.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Submit a KYB
> Submit a KYB
## OpenAPI
````yaml post /v2/accounts/sub_account_holder/{sub_account_holder_id}/kyb
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account_holder/{sub_account_holder_id}/kyb:
parameters:
- name: sub_account_holder_id
in: path
required: true
schema:
type: string
post:
tags:
- Sub Account Holders
summary: Submit a KYB
description: Submit a KYB
operationId: SubmitAKYB
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'201':
description: Submit a KYB
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account_holder'
type: object
examples:
sub_account_holder_business_example:
$ref: '#/components/examples/sub_account_holder_business_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
sub_account_holder:
properties:
id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the sub account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
ofac:
$ref: '#/components/schemas/sub_account_holder_ofac'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of sub account holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/sub_account_holder_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
sub_account_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the sub account holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the sub account holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
examples:
sub_account_holder_business_example:
value:
id: sah_01929abad28978ae83b24f5141638475
client_id: cli_01922e0609e877308fe708217311f5c8
master_account_holder_id: mah_01922e644f1876cd85f8611582db198c
master_account_id: mas_01922e6530ec79b589b4470cba42cb09
type: business
person: null
business:
legal_name: Acme LLC
dba: Acme LLC
entity_type: limited_liability_company
id_type: ein
id_number: '223913234'
phone: '+11231231231'
email: contact@acme.com
formation_date: '1989-08-09'
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
kyb:
id: kyb_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/verify?id=kyb_01arz3ndektsv4rrffq69g5fav
details:
name:
status: pass
reason: null
address:
status: pass
reason: null
watchlist:
status: pass
reason: null
fraud:
status: pass
reason: null
members:
- id: mem_01929abad17f7c2e80a766a5d4a38b39
first_name: Jane
middle_name: ''
last_name: Doe
id_type: ssn
id_number: '223902214'
date_of_birth: '1974-08-09'
phone: '+11231231231'
email: jane@acme.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
kyc:
id: kyc_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/verify?id=kyc_01arz3ndektsv4rrffq69g5fav
details:
name:
status: pass
reasons: null
address:
status: pass
reasons: null
dob:
status: pass
reasons: null
ssn:
status: pass
reasons: null
phone:
status: pass
reasons: null
email:
status: pass
reasons: null
watchlist:
status: pass
reasons: null
fraud:
status: pass
reasons: null
idv:
id: idv_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/id=idv_01arz3ndektsv4rrffq69g5fav
reasons: null
ownership: '50.00'
designation: president
title: ''
control_person: 'true'
ofac:
status: passed
last_updated_at: '2024-10-17T13:46:27Z'
external_reference_id: xyz-123-qwerp
purpose: Acme sub account holder
attachments: null
metadata:
customer_code: '1501'
status: activated
timestamps:
created_at: '2024-10-17T13:46:27Z'
updated_at: ''
deactivated_at: ''
sub_account_holder_bad_request_error:
value:
request_id: req_01900ec5ebd37bf2a18b90948129e419
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: no type specified!
field_name: type
created_at: '2024-06-12T23:26:10Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-account-holders/submit-a-kyc.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Submit a KYC
> Submit a KYC
## OpenAPI
````yaml post /v2/accounts/sub_account_holder/{sub_account_holder_id}/kyc
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account_holder/{sub_account_holder_id}/kyc:
parameters:
- name: sub_account_holder_id
in: path
required: true
schema:
type: string
post:
tags:
- Sub Account Holders
summary: Submit a KYC
description: Submit a KYC
operationId: SubmitAKYC
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
responses:
'201':
description: Submit a KYC
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account_holder'
type: object
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
sub_account_holder:
properties:
id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the sub account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
ofac:
$ref: '#/components/schemas/sub_account_holder_ofac'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of sub account holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/sub_account_holder_timestamp'
type: object
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
sub_account_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the sub account holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the sub account holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was deactivated
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
examples:
sub_account_holder_example:
value:
id: sah_5ccfeef0adf0cbe2aa0980d2c9509b2d
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
type: person
person:
first_name: Jane
last_name: Doe
id_type: ssn
id_number: '223913234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: jane.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
kyc:
id: kyc_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/verify?id=kyc_01arz3ndektsv4rrffq69g5fav
details:
name:
status: pass
reasons: null
address:
status: pass
reasons: null
dob:
status: pass
reasons: null
ssn:
status: pass
reasons: null
phone:
status: pass
reasons: null
email:
status: pass
reasons: null
watchlist:
status: pass
reasons: null
fraud:
status: pass
reasons: null
idv:
id: idv_01arz3ndektsv4rrffq69g5fav
status: fail
method: solid
url: https://dashboard.solidfi.com/id=idv_01arz3ndektsv4rrffq69g5fav
reasons: null
business: null
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
external_reference_id: TW-9L1L2-UVV
purpose: Ace sub-account holder
attachments:
- label: formation
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
customer_code: '1501'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
deactivated_at: '2024-04-01T21:00:00Z'
sub_account_holder_bad_request_error:
value:
request_id: req_01900ec5ebd37bf2a18b90948129e419
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: no type specified!
field_name: type
created_at: '2024-06-12T23:26:10Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/general/transactions.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Transactions
> A guide to Transactions
A transaction records money moved into an account (credit) or out of an account (debit) on an immutable ledger. Once opened, an account can have several credit and debit transactions.
An outgoing ODFI transaction originates from a Sub Account and clears from the Master Account, creating a double entry. Each entry has a unique Transaction ID and is related to the others, leading to the transaction being reconciled.
An incoming RDFI transaction is first received in the Master Account and sub-ledged into a Sub Account, creating a double entry. Each entry has a unique Transaction ID and is related to the others, leading to the transaction being reconciled.
A transaction must be manually reconciled or reversed if it is not automatically reconciled. For more, see the [Reconciliation Guide](/accounts/reconciliation).
Depending on the payment method, each transaction will go through various statuses and finally reach the settled status. In most cases, settled is considered the terminal state, but some exceptions exist. For example, an ACH transaction can be returned after it is settled. In this case, the final status of this ACH transaction is returned.
Each payment method has a dedicated API endpoint. For more, see the [Payments Guide](/payments/introduction).
---
# Source: https://docs.solidfi.com/v2/api-reference/card-holders/update-a-card-holder.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Update a Card Holder
> Update a Card Holder
## OpenAPI
````yaml patch /v2/issuing/card_holder/{card_holder_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card_holder/{card_holder_id}:
parameters:
- name: card_holder_id
in: path
required: true
schema:
type: string
patch:
tags:
- Card Holders
summary: Update a Card Holder
description: Update a Card Holder
operationId: updateACardHolder
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
person:
$ref: '#/components/schemas/person'
type: object
external_reference_id:
type: string
example: 6RPD1QW-W75
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace Sales Rep
description: purpose of card holder
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of card holder
enum:
- pending_activation
- activated
- suspended
- deactivated
examples:
Update a Card Holder:
value:
person:
first_name: Johnson
responses:
'200':
description: Update a Card Holder
content:
application/json:
schema:
$ref: '#/components/schemas/card_holder'
type: object
examples:
card_holder_example:
$ref: '#/components/examples/card_holder_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
card_holder_example:
$ref: '#/components/examples/cardholder_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
card_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
card_holder_example:
$ref: '#/components/examples/cardholder_not_found_error'
security:
- {}
components:
schemas:
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card_holder:
type: object
properties:
id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that issued the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
person:
$ref: '#/components/schemas/person'
type: object
external_reference_id:
type: string
example: 6RPD1QW-W75
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace Sales Rep
description: purpose of card holder
ofac:
$ref: '#/components/schemas/card_holder_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of card holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/card_holder_timestamp'
type: object
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
card_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the card holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the card holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
card_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card holder was deactivated
examples:
card_holder_example:
value:
id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
external_reference_id: 6RPD1QW-W75
purpose: Ace Sales Rep
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
metadata:
designation: Senior Sales Manager
employee_number: '77'
attachments:
- label: Employee Badge
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
deactivated_at: '2024-04-02T21:00:00Z'
cardholder_bad_request_error:
value:
request_id: req_01900eccf45d71f0b9e38dbb9175f151
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_PHONE
message: invalid phone
field_name: phone
created_at: '2024-06-12T23:33:51Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
cardholder_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/cards/update-a-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Update a Card
> Update a Card
## OpenAPI
````yaml patch /v2/issuing/card/{card_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/issuing/card/{card_id}:
parameters:
- name: card_id
in: path
required: true
schema:
type: string
patch:
tags:
- Cards
summary: Update a Card
description: Update a Card
operationId: updateACard
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
label:
type: string
example: Travel Expense Card
description: label of the card
controls:
type: object
properties:
allowed:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to allow on the card.
Example ["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to allow on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to allow on the card.
Example ["US","IN"]
items:
type: string
blocked:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to block on the card.
Example ["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to block on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to block on the card.
Example ["US","IN"]
items:
type: string
limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period in which the maximum amount is allowed
to be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '500.00'
description: maximum amount allowed to be spent in the set period
atm_enabled:
type: string
example: 'true'
description: >-
atm access for the card, true means enabled (by
default), false means disabled
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of the card
enum:
- open
- closed
- blocked
examples:
Update a Card:
value:
label: Travel Expense Card
responses:
'200':
description: Update a Card
content:
application/json:
schema:
$ref: '#/components/schemas/card'
type: object
examples:
card_example:
$ref: '#/components/examples/card_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
card_example:
$ref: '#/components/examples/card_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
card_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/card_not_found_error'
security:
- {}
components:
schemas:
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the card
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account under which the card was created
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
label:
type: string
example: Travel
description: label of the card
product:
type: string
example: business_spend
description: type of card product configured based on the client's use case
enum:
- business_spend
- consumer_debit
- business_debit
- consumer_gpr
- consumer_gpnr
- consumer_payroll
- consumer_hsa
- consumer_fsa
- consumer_govt_benefits
theme:
type: string
example: metallic
description: theme of the card configured as part of the client use case
type:
type: string
example: physical
description: type of card
enum:
- physical
- virtual
expiry_month:
type: string
example: '12'
description: expiration month of the card
expiry_year:
type: string
example: '2025'
description: expiration year of the card
last4:
type: string
example: '5275'
description: last 4 digits of the card number
card_fulfilment:
type: object
properties:
embossing:
type: object
properties:
card_holder_name:
type: string
example: John Doe
description: name of the person to be embossed on the card
business_name:
type: string
example: Ace Inc
description: name of the business to be embossed on the card
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
tracking:
type: object
properties:
status:
type: string
example: delivered
description: delivery status of the card
enum:
- pending
- delivered
- canceled
- failure
- returned
- shipped
eta:
type: string
example: '2024-05-02'
description: estimated date of arrival for the shipped card
number:
type: string
example: '1231233'
description: tracking number if shipped via USPS Priority or UPS Next Day
url:
type: string
example: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
description: tracking URL if shipped via USPS Priority or UPS Next Day
provider:
type: string
example: usps
description: shipping provider (eg. USPS) that shipped the card
controls:
type: object
properties:
allowed:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to allow on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to allow on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to allow on the card. Example
["US","IN"]
items:
type: string
blocked:
type: object
properties:
merchants:
type: array
description: >-
an array of merchant names to block on the card. Example
["Amazon","Netflix"]
items:
type: string
categories:
type: array
description: >-
an array of mcc codes to block on the card. Example
["0742","0763"]
items:
type: string
countries:
type: array
description: >-
an array of country codes to block on the card. Example
["US","IN"]
items:
type: string
limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period in which the maximum amount is allowed to be
spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '500.00'
description: maximum amount allowed to be spent in the set period
atm_enabled:
type: string
example: 'true'
description: >-
atm access for the card, true means enabled (by default), false
means disabled
external_reference_id:
type: string
example: XV-H27LGD-FX
description: unique id to cross-reference records with external systems
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of the card
enum:
- open
- closed
- blocked
- locked
timestamps:
$ref: '#/components/schemas/card_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
card_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the card was closed
examples:
card_example:
value:
id: crd_7948d9a96706dd05360a340002de725f
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
card_holder_id: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
label: Travel
product: business_spend
theme: metallic
type: physical
expiry_month: '12'
expiry_year: '2022'
last4: '5275'
card_fulfilment:
embossing:
card_holder_name: John Doe
business_name: Ace Inc
shipping_address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
tracking:
status: delivered
eta: '2024-05-02'
number: '1231233'
url: >-
https://tools.usps.com/go/TrackConfirmAction_input?strOrigTrackNum=120635849224
provider: usps
controls:
allowed:
merchants: []
categories: []
countries: []
blocked:
merchants: []
categories: []
countries: []
limit:
period: daily
max_spend_amount: '500.00'
max_spend_per_transaction: '100.00'
max_spend_count: '10'
atm_enabled: 'true'
external_reference_id: FSY52RAZ-4X
attachments:
- label: United
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
description: Sales Team Card
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
closed_at: '2024-04-02T21:00:00Z'
card_bad_request_error:
value:
request_id: req_01900ecf1c067ef39e132557e0a5cd39
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: enum is required
field_name: card_type
created_at: '2024-06-12T23:36:12Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
card_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find card holder by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/counterparties/update-a-counterparty.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Update a Counterparty
> Update a Counterparty
## OpenAPI
````yaml patch /v2/payments/counterparty/{counterparty_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/counterparty/{counterparty_id}:
parameters:
- name: counterparty_id
in: path
required: true
schema:
type: string
patch:
tags:
- Counterparties
summary: Update a Counterparty
description: Update a Counterparty
operationId: updateACounterparty
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
label:
type: string
example: Development Vendor
description: label of the counterparty
type:
type: string
example: person
description: type of counterparty
enum:
- person
- business
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
intra_account:
$ref: '#/components/schemas/counterparty_intra_account'
type: object
ach:
$ref: '#/components/schemas/counterparty_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/counterparty_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/counterparty_international_wire'
type: object
rtp:
$ref: '#/components/schemas/counterparty_rtp'
type: object
fednow:
$ref: '#/components/schemas/counterparty_fednow'
type: object
check:
$ref: '#/components/schemas/counterparty_check'
type: object
debit_card:
$ref: '#/components/schemas/counterparty_debit_card'
type: object
purpose:
type: string
example: Offshore dev center
description: purpose of counterparty
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of counterparty
enum:
- pending_activation
- activated
- suspended
- deactivated
examples:
Update a Counterparty:
value:
label: Utilities
responses:
'200':
description: Update a Counterparty
content:
application/json:
schema:
$ref: '#/components/schemas/counterparty'
type: object
examples:
counterparty_example:
$ref: '#/components/examples/counterparty_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
counterparty_example:
$ref: '#/components/examples/counterparty_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
counterparty_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/counterparty_not_found_error'
security:
- {}
components:
schemas:
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
counterparty_intra_account:
type: object
properties:
sub_account_number:
type: string
example: '95483674098723'
description: sub account number of the counterparty
sub_account_id:
type: string
example: sub_cda1e562657c41e553104b10aad3fe70
description: sub account id of the counterparty
counterparty_ach:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: ACH routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
description: if the account is verified - true or false
example: pass
enum:
- pass
- fail
- review
counterparty_domestic_wire:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: Wire routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
counterparty_international_wire:
type: object
properties:
account_number:
type: string
example: '920020006167511'
description: bank account number of the counterparty
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
counterparty_rtp:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: RTP routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
example: pass
description: if the account is verified
enum:
- pass
- fail
- review
counterparty_fednow:
type: object
properties:
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: FedNow routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of the counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
verification_status:
type: string
example: pass
description: if the account is verified or not
enum:
- pass
- fail
- review
counterparty_check:
type: object
properties:
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
counterparty_debit_card:
type: object
properties:
card_number:
type: string
example: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
description: tokenized card number of counterparty's debit card
last4:
type: string
example: '9990'
description: last4 of counterparty's debit card
expiry_month:
type: string
example: '10'
description: expiration month of counterparty's debit card
expiry_year:
type: string
example: '2024'
description: expiration year of counterparty's debit card
cvv:
type: string
example: tok_live_7CVyHuQR7aAjCZivYzLbuP_9990
description: cvv code of counterparty's debit card
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
pull_enabled:
type: string
example: 'true'
description: if debit pull is enabled or disabled by the debit card issuer
enum:
- 'true'
- 'false'
push_enabled:
type: string
example: 'true'
description: if debit pull is enabled or disabled by the debit card issuer
enum:
- 'true'
- 'false'
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client to which the counterparty belongs
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: >-
unique id of the sub account under which the counterparty was
created
label:
type: string
example: Development Vendor
description: label of the counterparty
type:
type: string
example: person
description: type of counterparty
enum:
- person
- business
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
intra_account:
$ref: '#/components/schemas/counterparty_intra_account'
type: object
ach:
$ref: '#/components/schemas/counterparty_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/counterparty_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/counterparty_international_wire'
type: object
rtp:
$ref: '#/components/schemas/counterparty_rtp'
type: object
fednow:
$ref: '#/components/schemas/counterparty_fednow'
type: object
check:
$ref: '#/components/schemas/counterparty_check'
type: object
debit_card:
$ref: '#/components/schemas/counterparty_debit_card'
type: object
purpose:
type: string
example: Offshore dev center
description: purpose of counterparty
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
ofac:
$ref: '#/components/schemas/counterparty_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of counterparty
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/counterparty_timestamp'
type: object
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
counterparty_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
counterparty_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the counterparty was deactivated
examples:
counterparty_example:
value:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
label: Development Vendor
type: person
person:
first_name: John
last_name: Doe
id_type: ssn
id_number: '223902234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: john.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
intra_account:
sub_account_number: '95483674098723'
sub_account_id: sub_cda1e562657c41e553104b10aad3fe70
ach:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
domestic_wire:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
international_wire:
account_number: '920020006167511'
beneficiary_bank:
identifier_code: ICICINBBNRI
name: ICICI Bank
address:
line1: 256 Main St
line2: ''
city: Bengaluru
state: KA
country: IN
postal_code: '900009'
correspondent_bank:
identifier_code: SCBLUS33XXX
name: STANDARD CHARTERED BANK
address:
line1: 1095 12th Ave
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
rtp:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
fednow:
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
verification_status: pass
check:
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
debit_card:
card_number: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
last4: '9990'
expiry_month: '10'
expiry_year: '2024'
cvv: tok_live_6GVyHuQR7aAjCZivYzLbuP_9990
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
pull_enabled: true
push_enabled: true
purpose: Offshore dev center
external_reference_id: TW-9L1L2-UVV
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments:
- label: Dev Contract
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
vendor_id: VID-0987ACR
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
counterparty_bad_request_error:
value:
request_id: req_01900eca101a7ca3ae62bf62191efadc
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: type must be properly set
field_name: ''
created_at: '2024-06-12T23:30:41Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
counterparty_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find counterparty by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-account-holders/update-a-sub-account-holder.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Update a Sub Account Holder
> Update a Sub Account Holder
## OpenAPI
````yaml patch /v2/accounts/sub_account_holder/{sub_account_holder_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account_holder/{sub_account_holder_id}:
parameters:
- name: sub_account_holder_id
in: path
required: true
schema:
type: string
patch:
tags:
- Sub Account Holders
summary: Update a Sub Account Holder
description: Update a Sub Account Holder
operationId: updateASubAccountHolder
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
verification:
$ref: '#/components/schemas/verification'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of sub account holder
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
- locked
examples:
Update a Sub Account Holder:
value:
person:
first_name: Johnson
responses:
'200':
description: Update a Sub Account Holder
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account_holder'
type: object
examples:
sub_account_holder_example:
$ref: '#/components/examples/sub_account_holder_example'
'400':
description: Bad Request Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: >-
#/components/examples/sub_account_holder_update_bad_request_error
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_holder_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/sub_account_holder_not_found_error'
security:
- {}
components:
schemas:
person:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
idv:
type: object
properties:
id:
type: string
example: idv_7948d9a96706dd05360a340002de725f
description: unique id of the IDV
status:
type: string
example: pass
description: status of the IDV
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder IDV method. It could be an external
vendor(Ex: plaid) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the identity verification result. It could be a link to
the external vendor or Solid
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
business:
type: object
properties:
legal_name:
type: string
example: Ace LLC
description: legal name of the business
dba:
type: string
example: Ace Inc
description: doing business as
entity_type:
type: string
example: limited_liability_company
description: entity type of the business
enum:
- sole_proprietor
- single_member_llc
- limited_liability_company
- general_partnership
- unlisted_corporation
- publicly_traded_corporation
- association
- non_profit
- government_organization
- revocable_trust
- irrevocable_trust
- estate
- professional_association
- limited_partnership
- limited_liability_partnership
- professional_corporation
id_type:
type: string
example: ein
description: type of the business identity used
enum:
- ein
- other
id_number:
type: string
example: '187654321'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is ein, id_number must be ein number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different businesses
phone:
type: string
example: '16604491146'
description: phone number of the business (E.164, max 16 chars, starts with +)
email:
type: string
example: support@ace.com
description: email of the business
formation_date:
type: string
example: '2018-02-18'
description: date business was formed (YYYY-MM-DD)
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
kyb:
type: object
properties:
id:
type: string
example: kyb_7948d9a96706dd05360a340002de725f
description: unique id of the KYB
status:
type: string
example: pass
description: status of the KYB
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
members:
type: array
items:
$ref: '#/components/schemas/business_member'
verification:
type: object
properties:
status:
type: string
example: pass
description: verification status of the sub account holder
enum:
- pass
- fail
method:
type: string
example: persona
description: >-
sub account holder verification method. It could be an external
vendor used to verify the person or business (Ex: alloy)
url:
type: string
example: >-
https://withpersona.com/verify?inquiry-id=inq_p1LgZj3wp5xWMk5XUhWAMrgV
description: >-
url to the person or business verification result. It could be a
link to the external vendor
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account_holder:
properties:
id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the sub account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account
person:
$ref: '#/components/schemas/person'
type: object
business:
$ref: '#/components/schemas/business'
type: object
ofac:
$ref: '#/components/schemas/sub_account_holder_ofac'
type: object
external_reference_id:
type: string
example: TW-9L1L2-UVV
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Ace sub-account holder
description: purpose of sub account holder
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: activated
description: status of sub account holder
enum:
- pending_activation
- activated
- suspended
- deactivated
- locked
timestamps:
$ref: '#/components/schemas/sub_account_holder_timestamp'
type: object
kyc_kyb:
type: object
properties:
status:
type: string
example: pass
enum:
- pass
- fail
- review
- in_review
reasons:
type: array
items:
$ref: '#/components/schemas/kyc_kyb_reasons'
kyc_kyb_reasons:
type: object
properties:
code:
type: string
example: N001
description: reason code
description:
type: string
example: First name didn't match
description: description of reason code
business_member:
type: object
properties:
first_name:
type: string
example: Jane
description: first name of the person
middle_name:
type: string
example: Jack
description: middle name of the person
last_name:
type: string
example: Doe
description: last name of the person
id_type:
type: string
example: ssn
description: type of identity used
enum:
- ssn
- passport
- other
id_number:
type: string
example: '945678934'
description: |-
- if id_type is ssn, id_number must be full SSN
- if id_type is passport, id_number must be passport number
- if id_type is other, id_number must be unique number of the id
id_number must be unique, as in, you cannot use the same id_number for two different persons
date_of_birth:
type: string
example: '1974-01-01'
description: date of birth of the person (YYYY-MM-DD)
phone:
type: string
example: '+19418405843'
description: phone number of the person (E.164, max 16 chars, starts with +)
email:
type: string
example: jane.doe@gmail.com
description: email of the person
address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address (optional)
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
ownership:
type: number
example: 50.59
description: ownership percentage in the business
title:
type: string
example: CEO
description: title of the member in the business
control_person:
type: string
example: 'true'
description: true if this member is the control person of the business
enum:
- 'true'
- 'false'
kyc:
type: object
properties:
id:
type: string
example: kyc_7948d9a96706dd05360a340002de725f
description: unique id of the KYC
status:
type: string
example: pass
description: status of the KYC
enum:
- pass
- fail
- review
- not_started
method:
type: string
example: solid
description: >-
sub account holder verification method. It could be an external
vendor(Ex: alloy) or Solid
url:
type: string
example: >-
https://dashboard.solidfi.com/id=kyc_7948d9a96706dd05360a340002de725f
description: >-
url to the person or business verification result. It could be a
link to the external vendor or Solid
details:
type: object
properties:
name:
$ref: '#/components/schemas/kyc_kyb'
type: object
address:
$ref: '#/components/schemas/kyc_kyb'
type: object
dob:
$ref: '#/components/schemas/kyc_kyb'
type: object
ssn:
$ref: '#/components/schemas/kyc_kyb'
type: object
phone:
$ref: '#/components/schemas/kyc_kyb'
type: object
email:
$ref: '#/components/schemas/kyc_kyb'
type: object
watchlist:
$ref: '#/components/schemas/kyc_kyb'
type: object
fraud:
$ref: '#/components/schemas/kyc_kyb'
type: object
sub_account_holder_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the sub account holder
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the sub account holder's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
sub_account_holder_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was updated
deactivated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account holder was deactivated
examples:
sub_account_holder_example:
value:
id: sah_5ccfeef0adf0cbe2aa0980d2c9509b2d
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
type: person
person:
first_name: Jane
last_name: Doe
id_type: ssn
id_number: '223913234'
date_of_birth: '1974-01-25'
phone: '+19418405843'
email: jane.doe@gmail.com
address:
line1: 123 Main St
line2: ''
city: New York
state: NY
country: US
postal_code: '10001'
kyc:
id: kyc_01arz3ndektsv4rrffq69g5fav
status: pass
method: solid
url: >-
https://dashboard.solidfi.com/verify?id=kyc_01arz3ndektsv4rrffq69g5fav
details:
name:
status: pass
reasons: null
address:
status: pass
reasons: null
dob:
status: pass
reasons: null
ssn:
status: pass
reasons: null
phone:
status: pass
reasons: null
email:
status: pass
reasons: null
watchlist:
status: pass
reasons: null
fraud:
status: pass
reasons: null
idv:
id: idv_01arz3ndektsv4rrffq69g5fav
status: fail
method: solid
url: https://dashboard.solidfi.com/id=idv_01arz3ndektsv4rrffq69g5fav
reasons: null
business: null
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
external_reference_id: TW-9L1L2-UVV
purpose: Ace sub-account holder
attachments:
- label: formation
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
customer_code: '1501'
status: activated
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-01T21:00:00Z'
deactivated_at: '2024-04-01T21:00:00Z'
sub_account_holder_update_bad_request_error:
value:
request_id: req_01900f1465e9751abfa03e0d8f50e16f
client_id: ''
method: PATCH
status: 400
error:
code: ERROR_CODE_INVALID_REQUEST_BODY
message: invalid request body
field_name: ''
created_at: '2024-06-13T00:51:53Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
sub_account_holder_not_found_error:
value:
request_id: req_01900e9f737376be8aa2aa9c351ff598
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account holder by client id in qldb
field_name: ''
created_at: '2024-06-12T22:44:09Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/sub-accounts/update-a-sub-account.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Update a Sub Account
> Update a Sub Account
## OpenAPI
````yaml patch /v2/accounts/sub_account/{sub_account_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/accounts/sub_account/{sub_account_id}:
parameters:
- name: sub_account_id
in: path
required: true
schema:
type: string
patch:
tags:
- Sub Accounts
summary: Update a Sub Account
description: Update a Sub Account
operationId: updateASubAccount
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
label:
type: string
example: Ace PayOps
external_reference_id:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Sub account to pay offshore dev team
description: purpose of sub account
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of sub account
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
examples:
Update a Sub Account:
value:
label: Ace PayOps
responses:
'200':
description: Update a Sub Account
content:
application/json:
schema:
$ref: '#/components/schemas/sub_account'
type: object
examples:
sub_account_example:
$ref: '#/components/examples/sub_account_example'
'400':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_example:
$ref: '#/components/examples/sub_account_bad_request_error'
'401':
description: Unauthorized Error
content:
application/json:
examples:
sub_account_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/master_account_not_found_error'
security:
- {}
components:
schemas:
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
sub_account:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
client_id:
type: string
example: cli_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id of the client that created the master account
master_account_holder_id:
type: string
example: mah_201e02c581a098a740456c5c19fcfcd6
description: unique id of the master account holder
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: >-
unique id of the master account under which the sub account was
created
sub_account_holder_id:
type: string
example: sah_5ccfeef0adf0cbe2aa0980d2c9505752
description: unique id of the sub account holder
sub_account_holder_name:
type: string
example: Ace LLC
description: sub account holder name
label:
type: string
example: Ace payments
description: label of the sub account
type:
type: string
example: cash
description: type of the sub account
enum:
- cash
- prepaid
- checking
account_number:
type: string
example: '9540861337293709'
description: account number of the sub account
routing_number:
type: string
example: '123206972'
description: 9 digit routing number of the sub account
sponsor_bank:
type: string
example: Lewis and Clark Bank
description: sponsor bank name
available_balance:
type: string
example: '0.00'
description: 'available balance in the sub account '
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account
pending_debits:
type: string
example: '0.00'
description: total pending debits to the sub account
currency:
type: string
example: usd
description: currency of the sub account
enum:
- usd
external_reference_id:
type: string
example: XVH-27LGDFX
description: unique id to cross-reference records with external systems
purpose:
type: string
example: Sub account to pay offshore dev team
description: purpose of sub account
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
status:
type: string
example: open
description: status of sub account
enum:
- open
- closed
- credit_blocked
- debit_blocked
- blocked
- locked
timestamps:
$ref: '#/components/schemas/sub_account_timestamp'
type: object
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
sub_account_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was updated
closed_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the sub account was closed
examples:
sub_account_example:
value:
id: sub_bda1e562657c41e553104b10aad3fe70
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_holder_name: Ace LLC
label: Payments Account
type: cash
available_balance: '0.00'
pending_credits: '0.00'
pending_debits: '0.00'
account_number: '9540861337293709'
routing_number: '123321123'
sponsor_bank: Sponsor Bank
currency: usd
external_reference_id: XV-H27LGD-FX
purpose: Sub account to pay offshore dev team
attachments:
- label: contract
id: att_a8d2b191fa0e960d8e49a4bfd320e07b
created_at: '2024-04-01T21:00:00Z'
metadata:
master_account_code: '001'
status: open
timestamps:
created_at: '2024-04-01T21:00:00Z'
updated_at: '2024-04-02T21:00:00Z'
deactivated_at: '2024-04-03T21:00:00Z'
sub_account_bad_request_error:
value:
request_id: req_01900ec875fe714d9cdf88b6bea6cbca
client_id: ''
method: POST
status: 400
error:
code: ERROR_CODE_INVALID_FIELD
message: invalid field
field_name: ''
created_at: '2024-06-12T23:28:56Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
master_account_not_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find account by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/v2/api-reference/transactions/update-a-transaction.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Update a Transaction
> Update a Transaction
## OpenAPI
````yaml patch /v2/payments/transaction/{transaction_id}
openapi: 3.0.3
info:
title: Solid v2
version: 1.0.0
contact: {}
servers:
- url: https://api.sandbox.solidfi.com
- url: https://api.prod.solidfi.com
security: []
tags:
- name: Master Accounts
- name: Sub Account Holders
- name: Sub Accounts
- name: Counterparties
- name: Card Holders
- name: Cards
- name: Transactions
- name: Attachments
- name: Webhooks
- name: Simulation
- name: ACH
- name: Card
paths:
/v2/payments/transaction/{transaction_id}:
parameters:
- name: transaction_id
in: path
required: true
schema:
type: string
patch:
tags:
- Transactions
summary: Update a Transaction
description: Update a Transaction
operationId: updateATransaction
parameters:
- name: api-key
in: header
schema:
type: string
example: '{{api_key}}'
description: >-
API key is required to call Solid APIs. You can view and manage
your API keys in the Solid dashboard.
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
description:
type: string
example: Invoice payment
description: description of the transaction
metadata:
$ref: '#/components/schemas/metadata'
type: object
examples:
Update a Transaction:
value:
metadata:
invoice_number: INV-AC989878
responses:
'200':
description: Update a Transaction
content:
application/json:
schema:
$ref: '#/components/schemas/transaction'
type: object
examples:
update_transaction_example:
$ref: '#/components/examples/update_transaction_example'
'401':
description: Unauthorized Error
content:
application/json:
examples:
update_transaction_example:
$ref: '#/components/examples/unauth_error'
'404':
description: Not Found Error
content:
application/json:
examples:
master_account_example:
$ref: '#/components/examples/transaction_found_error'
components:
schemas:
metadata:
type: object
description: >-
Metadata takes free-form key-value pairs. You may send metadata when you
create an object (POST) and when updating the object (PATCH). If you
would like to remove metadata that is already on an object, you can
unset it by passing in the key-value pair with an empty string, like
this:
{"key": ""}
transaction:
type: object
properties:
id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the transaction
sub_account_id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
master_account_id:
type: string
example: mas_743fa071316bc6beaf5dddfd05f49c30
description: unique id of the master account holder
status:
type: string
example: originated
description: status of the transaction
enum:
- originated
- pending
- clearing
- cleared
- settled
- canceled
- in_review
- returned
- reversed
- received
- declined
- refunded
amount:
type: string
example: '93.50'
description: amount of the transaction
currency:
type: string
example: usd
description: currency of the transaction
enum:
- usd
direction:
type: string
example: debit
description: if transaction is debit or credit
enum:
- debit
- credit
method:
type: string
example: ach
description: payment method for the transaction
enum:
- ach
- domestic_wire
- international_wire
- check
- fednow
- rtp
- debit_card
- card_issuing
type:
type: string
example: push
description: type within the payment method used for the transaction
enum:
- push
- pull
- decline
- cancel
- return
- send
- deposit
- request
- auth
- adjust
- reverse
- refund
message:
type: string
example: outgoing
description: if transaction is incoming or outgoing
enum:
- incoming
- outgoing
description:
type: string
example: Invoice payment
description: description of the transaction
available_balance:
type: string
example: '500.00'
description: available balance in the sub account after the transaction
pending_credits:
type: string
example: '0.00'
description: total pending credits to the sub account after the transaction
pending_debits:
type: string
example: '93.50'
description: total pending debits to the sub account after the transaction
counterparty:
$ref: '#/components/schemas/transaction_counterparty'
type: object
ach:
$ref: '#/components/schemas/transaction_ach'
type: object
domestic_wire:
$ref: '#/components/schemas/transaction_domestic_wire'
type: object
international_wire:
$ref: '#/components/schemas/transaction_international_wire'
type: object
rtp:
$ref: '#/components/schemas/transaction_rtp'
type: object
fednow:
$ref: '#/components/schemas/transaction_fednow'
type: object
check:
$ref: '#/components/schemas/transaction_check'
type: object
card:
$ref: '#/components/schemas/transaction_card'
type: object
external_reference_id:
type: string
example: 123-9088-2
description: unique id to cross-reference records with external systems
purpose:
type: string
example: May Invoice
description: purpose of the transaction
ofac:
$ref: '#/components/schemas/transaction_ofac'
type: object
attachments:
type: array
items:
$ref: '#/components/schemas/attachment_object'
metadata:
$ref: '#/components/schemas/metadata'
type: object
reconciliation:
$ref: '#/components/schemas/transaction_reconciliation'
type: object
timestamps:
$ref: '#/components/schemas/transaction_timestamp'
type: object
transaction_counterparty:
type: object
properties:
id:
type: string
example: ctp_8e5541c8a9e50c3af3b0daacf9175130
description: unique id of the counterparty
name:
type: string
example: John Doe
description: name of the counterparty
verification_status:
type: string
example: pass
description: account verification status of the counterparty
enum:
- pass
- fail
- review
account_number:
type: string
example: '98324502'
description: bank account number of the counterparty
routing_number:
type: string
example: '121042882'
description: routing number of the counterparty's bank
account_type:
type: string
example: business_checking
description: type of counterparty's bank account
enum:
- business_checking
- business_savings
- personal_checking
- personal_savings
bank_name:
type: string
example: Wells Fargo
description: name of counterparty's bank
beneficiary_bank:
$ref: '#/components/schemas/counterparty_beneficiary_bank'
type: object
correspondent_bank:
$ref: '#/components/schemas/counterparty_correspondent_bank'
type: object
shipping_address:
type: object
properties:
line1:
type: string
example: 123 Main St
description: line 1 of the address
line2:
type: string
example: ''
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_ach:
type: object
properties:
effective_date:
type: string
example: '2024-05-05'
description: date on which the ACH must post on the beneficiary's bank account
company_discretionary_data:
type: string
example: DIRECT DEPOSIT
description: >-
text field within the ACH batch file used to reference ACH
originator details like name, etc.
company_entry_description:
type: string
example: PAYROLL
description: >-
text field within the ACH batch file that describes the purpose of
the ACH transaction
trace_number:
type: string
example: '12309876564'
description: unique identifier within the ACH batch file
return_code:
type: string
example: R01
description: reason code given in case of ACH return
rta_id:
type: string
example: rta_64c6c87ee9d609f36a6f390dc378a4ce
description: unique id for real time authorization
transaction_domestic_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_international_wire:
type: object
properties:
imad:
type: string
example: 20240520D2B74A1C002742
description: >-
IMAD (Input Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
omad:
type: string
example: 20240520L1B7832F000914
description: >-
OMAD (Output Message Accountability Data) number is a unique number
generated by FedwireService for tracking purposes.
transaction_rtp:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the RTP transaction that shown to the
beneficiary
transaction_fednow:
type: object
properties:
reference_number:
type: string
example: 20240410T110000Z
description: >-
reference number of the FedNow transaction that shown to the
beneficiary
transaction_check:
type: object
properties:
check_number:
type: string
example: '98987679'
description: check number
cashed:
type: string
example: 'true'
description: if the check is cashed or not
transaction_card:
type: object
properties:
id:
type: string
example: crd_7948d9a96706dd05360a340002de725f
description: unique id of the card
cardholder_id:
type: string
example: cah_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id of the card holder
merchant:
type: string
example: Walmart
description: merchant the card was used at
auth_method:
type: string
example: online
description: method of use for the card transaction
wallet:
type: string
example: google_pay
description: digital wallet type
rta_id:
type: string
example: rta_a120a61f60dfd40fdb07b2e8bcd1f6f0
description: unique id for real time authorization
local_transaction:
type: object
properties:
amount:
type: string
example: '10.00'
description: transaction amount in local currency
currency:
type: string
example: usd
description: local currency code
conversion_rate:
type: string
example: '1.00'
description: currency conversion rate
available_limit:
type: object
properties:
period:
type: string
example: daily
description: >-
time period available in which the maximum amount is allowed to
be spent
enum:
- daily
- per_transaction
- weekly
- monthly
- yearly
- all_time
max_spend_amount:
type: string
example: '50.00'
description: maximum amount available to be spent in the set period
transaction_ofac:
type: object
properties:
status:
type: string
example: pass
description: ofac status of the counterparty
enum:
- pass
- fail
last_updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: >-
last date and time at which the counterparty's ofac status was
checked
attachment_object:
type: object
properties:
id:
type: string
example: att_a8d2b191fa0e960d8e49a4bfd320e07b
description: unique id of the attachment created
label:
type: string
example: formation
description: label of the attachment
timestamps:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was created
deleted_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the attachment was deleted
transaction_reconciliation:
type: object
properties:
status:
type: string
example: reconciled
description: reconciliation status of the transaction
enum:
- reconciled
- not_reconciled
master_account:
type: array
items:
$ref: '#/components/schemas/transaction_master_account_reconciliation'
sub_account:
type: array
items:
$ref: '#/components/schemas/transaction_sub_account_reconciliation'
transaction_timestamp:
type: object
properties:
created_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was created
updated_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was updated
settled_at:
type: string
example: '2024-04-01T21:00:00Z'
description: date and time at which the transaction was settled
counterparty_beneficiary_bank:
type: object
properties:
identifier_code:
type: string
example: ICICINBBNRI
description: SWIFT/BIC code of counterparty's bank
name:
type: string
example: ICICI Bank
description: name of counterparty's bank
address:
type: object
properties:
line1:
type: string
example: 256 Main St
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: Bengaluru
description: city of the address
state:
type: string
example: KA
description: '2-Letter state abbreviation (ex: CA)'
country:
type: string
example: IN
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '900009'
description: postal code
counterparty_correspondent_bank:
type: object
properties:
identifier_code:
type: string
example: SCBLUS33XXX
description: SWIFT/BIC code of counterparty's correspondent bank
name:
type: string
example: STANDARD CHARTERED BANK
description: name of counterparty's correspondent bank
address:
type: object
properties:
line1:
type: string
example: 1095 12th Ave
description: line 1 of the address
line2:
type: string
example: Suite 201
description: line 2 of the address
city:
type: string
example: New York
description: city of the address
state:
type: string
example: NY
description: '2-Letter US state abbreviation (ex: CA)'
country:
type: string
example: US
description: '2-letter abbreviated country code (ex: US)'
postal_code:
type: string
example: '10001'
description: postal code
transaction_master_account_reconciliation:
type: object
properties:
id:
type: string
example: mas_bda1e562657c41e553104b10aad3fe70
description: unique id of the master account
transaction_id:
type: string
example: txn_817d2a074042bb4ec54e08fd82b1e0a8
description: unique id of the master account transaction
amount:
type: string
example: '93.50'
description: master account transaction amount
transaction_sub_account_reconciliation:
type: object
properties:
id:
type: string
example: sub_bda1e562657c41e553104b10aad3fe70
description: unique id of the sub account
transaction_id:
type: string
example: txn_a0b56852400c9fede6233fd8c2e60f9c
description: unique id of the sub account transaction
amount:
type: string
example: '93.50'
description: sub account transaction amount
examples:
update_transaction_example:
value:
id: txn_817d2a074042bb4ec54e08fd82b1e0a8
client_id: cli_64c6c87ee9d609f36a6f390dc378a4ce
master_account_holder_id: mah_201e02c581a098a740456c5c19fcfcd6
master_account_id: mas_743fa071316bc6beaf5dddfd05f49c30
sub_account_holder_id: sah_5ccfeef0adf0cbe2aa0980d2c9505752
sub_account_id: sub_bda1e562657c41e553104b10aad3fe70
status: settled
amount: '1500.00'
currency: usd
direction: credit
method: ach
type: push
message: incoming
description: May invoice from NewCo
available_balance: '1590.00'
pending_credits: '0.00'
pending_debits: '0.00'
counterparty:
id: ctp_8e5541c8a9e50c3af3b0daacf9175130
name: NewCo Inc
verification_status: pass
account_number: '98324502'
routing_number: '121042882'
account_type: business_checking
bank_name: Wells Fargo
beneficiary_bank: null
correspondent_bank: null
shipping_address: null
ach:
same_day: 'true'
effective_date: '2024-04-04'
company_discretionary_data: ''
company_entry_description: Payments
trace_number: '123112211'
return_code: ''
rta_id: ''
parent_transaction_id: ''
external_reference_id: 123-9088-2
purpose: ''
ofac:
status: pass
last_updated_at: '2024-04-01T21:00:00Z'
attachments: null
metadata:
invoice_number: INV-AC989878
reconciliation:
status: not_reconciled
master_account: null
sub_account:
- id: sub_bda1e562657c41e553104b10aad3fe70
transaction_id: txn_817d2a074042bb4ec54e08fd82b1e0a8
amount: '1500.00'
timestamps:
created_at: '2024-04-04T11:06:00Z'
updated_at: '2024-04-04T11:06:00Z'
settled_at: '2024-04-04T11:06:00Z'
unauth_error:
value:
request_id: req_01900e34c96d7abfa970a9f454ab2d5d
client_id: ''
method: GET
status: 401
error:
code: ERROR_CODE_UNAUTHORIZED
message: unauthorized
field_name: ''
created_at: '2024-06-12T20:47:38Z'
transaction_found_error:
value:
request_id: req_01900e959896706b870affad1b4d71dd
client_id: ''
method: GET
status: 404
error:
code: ERROR_CODE_RESOURCE_NOT_FOUND
message: cannot find transaction by id in qldb
field_name: ''
created_at: '2024-06-12T22:33:23Z'
````
---
# Source: https://docs.solidfi.com/card-issuance/virtual-card.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Virtual Card
> A guide to Virtual Cards.
Solid offers its clients a fully managed card-art program. That means Solid manages the virtual card approval with the issuing bank and the network.
You can download the virtual cart art template's Figma file [here](https://www.figma.com/file/cwxnEXJtFIalnq96UCefSj/Card-Art-Template?node-id=0%3A1).
You must follow the Front of Card (FOC) design to simplify the process and get the required approval.
When customizing a card for your card program, you can display a horizontal or vertical virtual card, allowing for creative design choices.
Unlike a Physical Card that has both Front of Card (FOC) and Back of Card (BOC) designs, Virtual Card has only Front of Card (FOC).
The instructions below explain the Virtual Card Front of Card (FOC) template and the customization available to meet the brand guidelines of the FinTech Program.
1. Start with a blank Horizontal Card
2. Apply your brand's visual design and logo
3. Display the VISA product identifier:
* Consumer Debit: Display Debit under the Visa logo.
* Business Debit: Display Business Debit under the Visa logo.
* Consumer Credit: Display the Visa logo as-is. No product identifier needed.
* Business Credit: Display Business under the Visa logo.
4. Display the card information (16 digit card info, expiration date, CVV, Cardholder Name, Business Name, if a Business Card). VISA also requires Virtual Limited Use to be mentioned on the Front of Card (FOC).
Depending on the card's visual design (dark or light), use the appropriate Visa logo (Blue, White, or Black). Your brand logo needs to contrast the card design (background).
---
# Source: https://docs.solidfi.com/card-issuance/wallet.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Wallet
> A guide to Wallets.
Solid Issuing allows your end to add cards to wallets such as Apple Pay, Google Pay and Samsung Pay.
Solid offers its clients a fully managed card-art program. That means Solid manages the wallet approval with the issuing bank and the network.
You can download the wallet cart art template's Figma file [here](https://www.figma.com/file/cwxnEXJtFIalnq96UCefSj/Card-Art-Template?node-id=0%3A1).
You must follow the Front of Card (FOC) design to simplify the process and get the required approval.
Unlike a Physical Card that has both Front of Card (FOC) and Back of Card (BOC) designs, Wallet Card has only Front of Card (FOC). The orientation of the card should be in landscape mode.
The instructions below explain the Wallet Front of Card (FOC) template and the customization available to meet the brand guidelines of the card program.
1. Start with a blank Horizontal Card
2. Apply your brand's visual design and logo
3. Display the VISA product identifier:
* Consumer Debit: Display Debit under the Visa logo.
* Business Debit: Display Business Debit under the Visa logo.
* Consumer Credit: Display the Visa logo as-is. No product identifier needed.
* Business Credit: Display Business under the Visa logo.
4. Solid will register the card art with Visa, Apple Pay, Google Pay, Samsung Pay to display the last four of the card number at the bottom left.
Solid implementation team sets up your brand's card metadata, like images, terms and conditions, and other relevant information needed during card provisioning the card on an end user's wallet (Apple Pay, Google Pay, Samsung Pay).
Depending on the card's visual design (dark or light), use the appropriate Visa logo (Blue, White, or Black). Your brand logo needs to contrast the card design (background).
---
# Source: https://docs.solidfi.com/payments/wire.md
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solidfi.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Wire
> A guide to Wires
Wires are direct transfers between banks. International wires (and in some cases, domestic wires) usually have intermediary/correspondent banks, which serve as third-party banks that help process and settle transactions. Unlike Intra Account transactions, Wire transactions go through multiple states in their lifecycle before the transaction finally settles:
* Originated: when a transaction is created.
* Pending: when a transaction is waiting to be sent to the bank.
* Clearing: when a transaction has been sent to the bank in the FedWire/MT103 file or via an API.
* Cleared: when the bank has processed the transaction and given Solid the IMAD/OMAD number. The IMAD/OMAD number is a unique number used to locate the transaction if required.
* Settled: when a transaction is marked as settled to indicate the completion of the wire transaction.
* Returned: when the originated wire transaction is returned by the RDFI.
### 1. Domestic Wire
Steps to originate a Domestic Wire transaction:
Via the Dashboard or the API, [Create a Counterparty](/v2/api-reference/counterparties/create-a-counterparty) with the beneficiary account details in the `domestic_wire` sub-object.
Via the Dashboard or the API, [Originate a Domestic Wire](/v2/api-reference/transactions/originate-a-domestic-wire)
Pass the necessary parameters (originating sub\_account\_id, counterparty\_id, amount) and other optional parameters as needed.
```
{
"sub_account_id": "sub_bda1e562657c41e553104b10aad3fe70",
"counterparty_id": "ctp_8e5541c8a9e50c3af3b0daacf9175130",
"amount": "25000.00",
"description": "Invoice 123-9088-2 ",
"external_reference_id": "123-9088-2"
}
```
Congratulations, you have now successfully Originated a Domestic Wire transaction!
### 2. International Wire
Steps to originate an International Wire transaction:
Via the Dashboard or the API, [Create a Counterparty](/v2/api-reference/counterparties/create-a-counterparty) with the beneficiary account details in the `international_wire` sub-object.
Via the Dashboard or the API, [Originate an International Wire](/v2/api-reference/transactions/originate-an-international-wire)
Pass the necessary parameters (originating sub\_account\_id, counterparty\_id, amount) and other optional parameters as needed.
```
{
"sub_account_id": "sub_bda1e562657c41e553104b10aad3fe70",
"counterparty_id": "ctp_8e5541c8a9e50c3af3b0daacf9175130",
"amount": "250000.00",
"description": "Offshore Dev 123-9088-2 ",
"external_reference_id": "123-9088-2"
}
```
Congratulations, you have now successfully Originated an International Wire transaction!
### 3. Wire Cut-off Times
**Originating Wires (both Domestic and International)**: The cut-off time for originating Wires on the same day is 12 pm PT.
**Receiving Wires (both Domestic and International)**: Incoming Wires received by the partner bank before 4 pm PT are made available on the same day.