What is a bank history?
Bank history is a special type of Bank record that allows for the retrieval of bank history transactions associated with a bank account.
To get started with Bank History for a bank account, the bank account must first be enrolled as a Bank History bank using the Bank history enrollment checkout flow.
<script
id="paystand_checkout"
type="text/javascript"
src="https://checkout.paystand.co/v4/js/paystand.checkout.js"
ps-container-id="container-id"
ps-env="sandbox"
></script>
<button
class="paystand-button"
ps-container-id="container-id"
ps-publishableKey="1noqhele1yjgieoi8aqe4n8i"
ps-checkoutType="checkout_bank_enrollment"
>Enroll a Bank</button>
Flow of a bank history request
A bank history will begin with lastRequestProgress in the "ready" state. This indicates that the bank history is available to be requested.
You can request a bank history by calling the Request a history endpoint. When the history is requested the lastRequestProgress will change to the "processing" state, indicating that the request is currently being processed. In addition, the lastRequestStatus field will change to "inProgress". Requesting a bank history while it is already in progress will have no effect.
When the bank history is ready, a BankHistory event will be sent indicating that the bank history request has been processed. The lastRequestProgress field will turn back to "ready" indicating that it is available for further requests and lastRequestStatus field will change to either "hasNewResults" or "noNewResults", depending on whether or not new history has been added since the last request.
Occasionally a bank history will become disconnected, indicated by both the lastRequestProgress field and the lastRequestStatus field switching to "reconnect". When this happens, the bank must be reconnected using the Bank History enrollment checkout. A request for history will not be enabled when the bank history is in a "reconnect" state. Any history that had previously been requested will still be available via the Retrieve a history endpoint.
Bank History Parameters
Parameter | Specification |
---|---|
id | Type: string Length: 25 The unique id for the bank history bank. |
object | Type: string Value: bankHistory Identifies this as the bank history object. |
accountType | Type: enum Values: checking, savings |
bankName | Type: string Length: 256 The name of the bank. |
accountName | Type: string Length: 256 The name of the account. |
routingNumber | Type: string Length: 32 The bank routing number. |
nameOnAccount | Type: string Length: 256 The name on the bank account. |
accountHolderType | Type: enum Values: individual, company |
currency | Type: ISO4217 currency code The currency for the bank account. |
country | Type: ISO 3166-1 alpha-3 The country where this bank account is located. |
last4 | Type: string Length: 4 The last four digits of the bank account. |
lastRequestProgress | Type: string Enum: reconnect, ready, processing The progress of the last bank history request. |
lastRequestStatus | Type: string Enum: hasNewResults, noNewResults, reconnect, inProgress The status of the last bank history request. |
lastRequestDate | Type: date string |
status | Type: string Enum: active, inactive The overall status of the bank history |
created | Type: date string The date the bank history was created |
lastUpdated | Type: date string The date the bank history was last updated |
History Results Parameters
Parameter | Specification |
---|---|
results.id | Type: string Length: 25 |
results.amount | Type: decimal string The amount of the transaction. |
results.date | Type: date string The date of the transaction. |
results.currentBalance | Type: decimal string The current balance after the transaction. |
results.debit | Type: boolean Was the transaction a debit or credit. |
results.description | Type: string Length: 0-256 A description of the transaction. |
results.pending | Type: boolean Is the transaction pending or complete. |
results.recurring | Type: boolean Is the transaction a recurring transaction. |