Akahu · Schema

Transaction_2

CompanyFinanceOpen BankingNew ZealandAPI

Properties

Name Type Description
_id string The unique identifier for this transaction
_account string The Account ID to identify which account this transaction belongs to
_connection string The Connection ID to identify which institution this transaction was retrieved from.
date string The ISO 8601 timestamp of when this transaction was lodged by the bank
description string The raw transaction description, essentially what you see on a bank statement
type object
amount number The amount of money being debited or credited by this transaction. A negative value represents a debit and positive value a credit.
balance numbernull The account balance after the receipt of this transaction, where available
meta object Additional metadata that Akahu has extracted from the transaction. Availability of this metadata varies greatly depending on the institution that the transaction was sourced from and the transaction t
enrichment object
View JSON Schema on GitHub

JSON Schema

akahu-transaction-2-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/akahu/main/json-schema/akahu-transaction-2-schema.json",
  "title": "Transaction_2",
  "x-generated": "2026-10-26",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/akahu-transactions-api-openapi.yml#/components/schemas/Transaction_2",
  "type": "object",
  "required": [
    "_id",
    "_account",
    "_connection",
    "date",
    "description",
    "type",
    "amount"
  ],
  "properties": {
    "_id": {
      "type": "string",
      "description": "The unique identifier for this transaction"
    },
    "_account": {
      "type": "string",
      "description": "The Account ID to identify which account this transaction belongs to"
    },
    "_connection": {
      "type": "string",
      "description": "The Connection ID to identify which institution this transaction was retrieved from."
    },
    "date": {
      "type": "string",
      "format": "date-time",
      "description": "The ISO 8601 timestamp of when this transaction was lodged by the bank"
    },
    "description": {
      "type": "string",
      "description": "The raw transaction description, essentially what you see on a bank statement"
    },
    "type": {
      "$ref": "#/$defs/TransactionType_2"
    },
    "amount": {
      "type": "number",
      "description": "The amount of money being debited or credited by this transaction. A negative value represents a debit and positive value a credit."
    },
    "balance": {
      "type": [
        "number",
        "null"
      ],
      "description": "The account balance after the receipt of this transaction, where available"
    },
    "meta": {
      "type": "object",
      "description": "Additional metadata that Akahu has extracted from the transaction. Availability of this metadata varies greatly depending on the institution that the transaction was sourced from and the transaction type. Please note that **all metadata items are optional**.",
      "properties": {
        "conversion": {
          "type": "object",
          "description": "Currency conversion information for payments that have been converted to a foreign currency. All fields are optional except `currency`.",
          "properties": {
            "currency": {
              "type": "string",
              "description": "The 3 digit currency code identifying the foreign currency involved in the conversion."
            },
            "amount": {
              "type": "number",
              "description": "The amount of foreign currency involved in this transaction."
            },
            "rate": {
              "type": "number",
              "description": "The currency conversion rate."
            },
            "fee": {
              "type": "number",
              "description": "The amount of any currency conversion fee associated with the transaction."
            }
          }
        },
        "card": {
          "type": "string",
          "description": "Partial card number associated with this transaction. This is generally the last 4 digits and may relate to a debit, credit, or EFTPOS card."
        },
        "other_account": {
          "type": "string",
          "description": "If the transaction involves money transfer to/from another New Zealand bank account, this field may contain the account number associated with the other account. Transactions that may have this data available include: `PAYMENT`, `TRANSFER`, `STANDING ORDER`, `DIRECT DEBIT`, `DIRECT CREDIT`."
        }
      }
    },
    "enrichment": {
      "type": "object",
      "required": [
        "category",
        "confidence"
      ],
      "properties": {
        "category": {
          "type": "object",
          "description": "The base NZFCC category that the transaction belongs to. Also included is a map of less specific category groupings that this NZFCC category is part of (by default Akahu will include `personal_finance`). Custom category groupings can be configured for your application if required.",
          "required": [
            "_id",
            "name",
            "groups"
          ],
          "properties": {
            "_id": {
              "type": "string",
              "description": "The NZFCC Category ID"
            },
            "name": {
              "type": "string",
              "description": "The NZFCC Category Name"
            },
            "components": {
              "type": "array",
              "deprecated": true,
              "items": {
                "type": "object",
                "description": "A category that this transaction falls under",
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "The category name"
                  },
                  "type": {
                    "type": "string",
                    "description": "The category set that this category comes from"
                  }
                }
              }
            },
            "groups": {
              "type": "object",
              "description": "Higher level groupings that this category belongs to.",
              "additionalProperties": {
                "type": "object",
                "required": [
                  "_id",
                  "name"
                ],
                "properties": {
                  "_id": {
                    "type": "string",
                    "description": "The ID for this group of categories"
                  },
                  "name": {
                    "type": "string",
                    "description": "The name of this group of categories"
                  }
                }
              }
            }
          }
        },
        "merchant": {
          "type": "object",
          "description": "The merchant that the transaction is paying to.",
          "required": [
            "_id",
            "name"
          ],
          "properties": {
            "_id": {
              "type": "string",
              "description": "The Akahu Merchant ID"
            },
            "name": {
              "type": "string",
              "description": "The merchant name"
            },
            "logo": {
              "type": "string",
              "format": "url",
              "description": "URL of a .png image of the merchant logo. If no logo is available, a placeholder image is provided."
            },
            "website": {
              "type": "string",
              "format": "uri",
              "description": "The Akahu Merchant website"
            }
          }
        },
        "confidence": {
          "type": "number",
          "description": "A score between `0` and `0.99` indicating Akahu's confidence in the enrichment accuracy. Currently the lowest returned confidence score is `0.5`. We are still tweaking the maths behind this score, but intend to release guidelines for usage once it becomes stable."
        }
      }
    }
  },
  "$defs": {
    "TransactionType_2": {
      "type": "string",
      "enum": [
        "CARD",
        "PAYMENT",
        "TRANSFER",
        "INTEREST",
        "FEE",
        "TAX",
        "DIRECT CREDIT",
        "DIRECT DEBIT",
        "STANDING ORDER",
        "ATM",
        "FX",
        "LOAN",
        "KIWISAVER",
        "CREDIT",
        "DEBIT",
        "UNKNOWN"
      ],
      "description": "Type of the transaction:\n\n  - `CARD` → The transaction was initiated via Credit, Debit, or EFTPOS card.\n  - `PAYMENT` → An outbound payment to another New Zealand bank account.\n  - `TRANSFER` → An internal money transfer between two accounts.\n  - `INTEREST` → Credits: Interest received from a savings or investment account. Debits: Interest charged on a debt (such as a loan, credit card, or overdraft).\n  - `FEE` → Fee paid to the institution e.g. an account fee, card fee, ATM fee.\n  - `TAX` → Tax paid on interest or other source of income.\n  - `DIRECT CREDIT` → Payment received from another party.\n  - `DIRECT DEBIT` → Direct debit payment initiated by (and paid to) a third party with prior authorization from the account holder.\n  - `STANDING ORDER` → Automatic payment.\n  - `ATM` → ATM deposit or withdrawal.\n  - `FX` → Foreign currency exchange.\n  - `LOAN` → Payments towards a loan.\n  - `KIWISAVER` → Transactions towards a KiwiSaver account.\n  - `CREDIT` → Money has entered the account (fallback).\n  - `DEBIT` → Money has left the account (fallback)."
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/akahu-transaction-2"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.