API Reference


Introduction

The Consumer API is based on REST and has predictable resource-oriented URLs. The Consumer API uses standard HTTP verbs and status codes and returns JSON-encoded responses.

The Consumer API protects access to user data using OAuth 2.0. The user's login credentials are never shared with third party apps. Authorization is provided to third party applications via an access_token.

The Consumer API provides authenticated user identity information using OpenID Connect (OIDC). With OpenID Connect, third party apps are provided authenticated information about the user in the form of an identity_token.

Both the access_token and identity_token are encrypted in JSON Web Token format.


Base URL

See the Base URL topic.

Versioning

See the Versioning topic.


API Credentials

Before you can connect to the Consumer API, you'll need to get these from Banno.

You'll need these credentials:

  • client_id
  • client_secret <--- Keep this secret!

CAUTION # 1

Do not share credentials via unsecured channels (e.g. email or instant messaging)

Similarly, do not commit credentials to your source code repository.

CAUTION # 2

It is important to keep the client_secret value secret and not leak it through some kind of frontend, client-accessible JavaScript call.

Authentication

See the Authentication topic.


Currency

Currency values are returned by the Consumer API in String format. This prevents issues with floating point number conversion.

Examples

  • "-1543.00"
  • "741.41"

Balances

Deposit Accounts

A positive balance indicates the amount of money the owner has in the account.

A negative balance would indicate other conditions (such as an overdraft).

Debt and Line of Credit Accounts

A positive balance indicates the amount owed. For example, a balance of 70,422 on a home loan would indicate that the owner owes $70,422 on their home.

A negative balance indicates a credit owed. For example, a balance of -5.22 might indicate a refund was posted to a credit card that had no outstanding balance.

Investment and Other Types of Accounts

No inference is applied to the balances with regard to positive or negative numbers.

Transactions

Transactions for Deposit Accounts and Bills

A positive amount indicates a credit.

A negative amount indicates a debit.

Transactions for Debt and Line of Credit Accounts

For debt and line of credit accounts, the amount should be inverted. This is due to the fact that a debit increases the balance on these type of accounts and a credit decreases the balance (i.e. this is the opposite of deposit accounts).


Date and Time

Dates and times are generally in the UTC time zone.

Date and times are in ISO 8601 format.

Example:

  • 2017-07-23T12:30:12.123Z