A statement is a disclosure of the state of an account, and its activity, over a billing period. Synctera will generate a statement payload for any account that requires periodic statements to be provided to the customer, through the Statements API. These payloads are made available at the end of every billing period, which is usually from the first to the last day of a calendar month.

At this time, Synctera does not generate a printable version of a statement.

Currently supported account types


This guide assumes that you are already familiar with the customer and account APIs, and have one or more accounts created.

If this is not the case, refer to the following guides:

Statement generation

A statement is generated automatically at the end of an account's billing period. At this time, billing frequency is monthly, meaning that at the end of every calendar month a bank statement will be generated for every eligible account.

Account typeEligibility
CHECKINGEligible, but only if the account was active during the statement period

Once a statement is generated, a notification will be sent via webhook. Please refer to the Webhook Events section for details.

Webhook Events


This section assumes you are familiar with our webhook API. If not, please see the webhooks guide for more context.

When a statement is generated, a webhook notification will be sent to subscribers of event type STATEMENT.CREATED. The event will contain a full version of the statement payload, following the spec outlined in the Statements API specification.

Please note that if a statement contains an excessive number of transactions, the system may opt to return an empty list in the webhook notification to the subscriber due to technical limitations. This will be reflected in the payload with transactions_omitted set to "true" and an empty transactions attribute.

API Workflow

Step 1: List the statements for a given account

If statements are available for an account, you can retrieve a summarized list by calling GET /v1/statements, with an account_id query parameter:

curl --request GET \
   --url \
   -H 'Accept: application/json' \
   -H "Authorization: Bearer $apikey"

This route only gives high-level details about each statement. Once you know the ID of the statement you're looking for, you can retrieve details about that statement.

Step 2: Retrieve the details for a given statement

With a statement ID, you'll be able to pull detailed information about the statement:

curl --request GET \
   --url \
   -H 'Accept: application/json' \
   -H "Authorization: Bearer $apikey"

Step 3: List the transactions for a statement

With a statement ID, you'll be able to pull the list of transactions that pertain to that statement:

curl --request GET \
   --url \
   -H 'Accept: application/json' \
   -H "Authorization: Bearer $apikey"

This list will only include posted transactions at the time of statement generation. These are also only returned to you in descending order of posted date.