# Bank statements A bank statement is a detailed summary of an account’s transactions and balances for specific business dates. These statements are directly tied to "cycles," which define the start and end dates for recording activity. On the Pismo platform, cycles are automated so that as soon as one closes, the next one automatically begins, ensuring a continuous record. # Cycle closing Cycle closing is the Pismo platform's process for marking the operational end of the day for accounts. Unlike traditional "End of Day" routines that require system downtime, cycle closing enables 24/7 platform operation and continuous transaction processing. At the designated closing moment, the Pismo platform captures a balance snapshot for each account, creating an official record for that business date. This consistent and auditable history is essential for accurate reporting, reconciliation, and interest calculations. You can configure cycle closing time using the `cycle_closing_time` field in the [Create account balance history configuration](https://developers.pismo.io/pismo-docs/reference/post-account-balance-history-configuration) endpoint. To update `cycle_closing_time`, use [Update account balance history configuration](https://developers.pismo.io/pismo-docs/reference/patch-account-balances-history-configuration). When a cycle closes for an account, three key events occur. * A balance history event is generated and emitted. * A new record is created in the balance history table, provided there has been activity or movement in the account. * The account's balance for that day becomes accessible through the [Get account balance history](https://developers.pismo.io/pismo-docs/reference/get-account-balance-history) endpoint, if there is any account movement. ## Configure cycle closing You can configure cycle closing at the division or organization level, and each level can follow its own rules. These are the main settings. * **Cycle closing time**: Specify the exact time the cycle ends, using the division’s time zone. * **Cycle event delay**: Add an optional buffer period before the Pismo platform emits the cycle closing event. The timezone used for cycle closing depends on where it is configured. For division-level configurations, the Pismo platform first looks for a timezone set for that division. If none exists, it inherits the timezone from the parent division, moving up the hierarchy until one is found. If no timezone is found, it defaults to UTC. In contrast, cycle closings configured at the organization level always use the organization’s timezone, regardless of the settings in any individual divisions. ## Update cycle closing When you update the cycle closing time, the timing of your request determines when the change takes effect. There are two scenarios. * **Update made before the next cycle validity**: If you submit the update **before** the next cycle validity is scheduled to start, the new configuration takes effect **at the very next cycle closing**. This change is immediate for the upcoming cycle. * **Update made after the current cycle validity**: If you submit an update while the current cycle is already in progress, the new closing time only takes effect **after two full cycles have completed**. The Pismo platform finishes the current cycle and the following cycle using the existing configuration. After both cycles complete, it applies the updated configuration. This ensures consistent processing across active cycles. For traceability, the Pismo platform generates an [Account balance history configuration changed](https://developers.pismo.io/events/docs/account-balances-balance-history-config-change-1) event every time you update a cycle-closing configuration. For details about cycle validity, refer to the `cycle_config_validity` field of [Get account balance history configuration](https://developers.pismo.io/pismo-docs/reference/get-account-balance-history-configuration). ## Skip cycle closing Skip cycle closing is a feature controlled by a boolean parameter in the [administrative division](https://developers.pismo.io/pismo-docs/reference/post-v2-admin-division) or [Create holiday](https://developers.pismo.io/pismo-docs/reference/post-v2-holiday) endpoints. When set to `true`, the Pismo platform bypasses the cycle‑closing process for that division on non‑business days. As a result, the [Get account balance history](https://developers.pismo.io/pismo-docs/reference/get-account-balance-history) endpoint returns only business days, omitting weekends and holidays. With `skip_cycle_closing` enabled, any transaction that occurs on a non‑business day is automatically recorded on the next business day, ensuring that both event generation and balance history follow the division’s business calendar. This configuration is especially useful for back‑value‑dated transactions—transactions posted with a past value date—because balance recalculations and balance‑history events are generated only on business days. This avoids unnecessary entries and maintains consistency with the defined business calendar. For a list of parameters and how you can use them to configure back- and future-business-dated transactions, including `skip_cycle_closing`, refer to [Posting transactions on holidays](https://developers.pismo.io/pismo-docs/docs/posting-transactions-on-holidays#parameters). ## Trigger reason The `trigger_reason` field in the [Account balance history generated](https://developers.pismo.io/events/docs/account-balances-balance-history-1) event indicates the specific condition or action that caused an account balance history event to be generated, providing clear context for why the event was emitted. You can find a list of trigger reasons and their details in the [Account balance history generated](https://developers.pismo.io/events/docs/account-balances-balance-history-1) event. Here are some trigger reason examples. | Trigger reason | Description | | ----------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `CYCLE_CLOSING` | Generated at the end of a business date, based on the cycle closing time defined in [Account balance history configuration changed](https://developers.pismo.io/events/docs/account-balances-balance-history-config-change-1). Not produced on non‑working days when `skip_cycle_closing = true` is in the administrative division. | | `BACK_VALUE_DATED_OPERATION` | Occurs when the business date derived from a transaction’s `payment_datetime` is earlier than the current business date, even if the transaction’s own `business_date` is current. Events are generated for past days only, not for the current business day. | | `BACK_VALUE_AND_BUSINESS_DATED_OPERATION` | Applies when two conditions are met: the transaction’s `business_date` is earlier than the current business date, and the business date derived from its `payment_datetime` is even earlier than that. Events are recorded for all impacted past business days. | | `BACK_VALUE_DATED_OPERATION_CURRENT_DATE` | Same condition as `BACK_VALUE_DATED_OPERATION`, but the event is logged **only** for the current business date. |