---
title: "Register a customer API bank connection"
method: POST
path: "/public/v2/bank-connections/"
tags: ["Bank Connections"]
---

# Register a customer API bank connection

`POST /public/v2/bank-connections/`

Register or upsert a customer-built bank connection and optional accounts under source_type=customer_api.

## Headers

- `Idempotency-Key` string

## Request body

- PublicBankConnectionRegisterSchemaIn
  - `connection_source_id` string, required
  - `institution_name` string, required
  - `accounts` PublicBankConnectionAccountSchemaIn[]
    - `account_id` string, required — Stable customer-supplied account key.
    - `account_name` string, required — Display name for the account.
    - `truncated_account_number` string, nullable
    - `currency_iso_4217_code` string, nullable

## Response `201`

Created

- PublicBankConnectionSchemaOut
  - `id` integer, required
  - `connection_source_id` string, required
  - `institution_name` string, nullable
  - `status` string, required
  - `successfully_aggregated_at` string, date-time, nullable
  - `last_sync_at` string, date-time, nullable
  - `accounts` PublicBankConnectionAccountSchemaOut[]
    - `id` integer, required
    - `account_id` string, required
    - `account_name` string, required
    - `truncated_account_number` string, nullable
    - `currency_iso_4217_code` string, nullable
    - `status` string, required

## Other responses

- `400` — Bad Request
- `422` — Unprocessable Content

---

[API](https://skmtc.net/dualentry/apis/dualentry-public-api.md) · [All operations](https://skmtc.net/dualentry/apis/dualentry-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dualentry/dualentry-public-api/revisions/dcb8297898a2/schema)
