PostgreSQL連携

1万+の銀行の取引、残高、保有資産、売買を、ご自身のPostgreSQLデータベースのテーブルにスケジュールどおり書き込みます。追記またはupsertで、すぐにクエリできます。

psql · analytics3行をupsert、6:02
analytics=> SELECT date, description, amount, category, account_nameanalytics-> FROM transactions ORDER BY date DESC LIMIT 6; date       | description        | amount   | category   | account_name  ------------+--------------------+----------+------------+---------------- 2026-10-19 | Stripe payout      |  4200.00 | Income     | Chase Checking 2026-10-19 | Whole Foods Market |   -86.42 | Groceries  | Amex Gold      2026-10-18 | Gusto payroll      | -6850.00 | Payroll    | Chase Checking 2026-10-18 | Figma              |   -45.00 | Software   | Amex Gold      2026-10-17 | Shell              |   -52.30 | Transport  | Amex Gold      2026-10-17 | Blue Bottle Coffee |    -6.75 | Eating out | Amex Gold     (6 rows)
Chase CheckingとAmex Goldを6:02にtransactions(取引)テーブルへupsertしました。再同期では行を再追加せず、その場で更新します。

銀行からPostgreSQLまで、3ステップで

  1. 01

    PostgreSQLを接続

    ホスト、データベース、最小権限のユーザーを入力するか、接続文字列を貼り付けます。保存前にテストしてください。

    ホストdb.acme.internal
    ポート5432
    ユーザーbanksync_writer
    SSLモードrequire
    テスト● 接続に成功しました
  2. 02

    テーブルを選ぶ

    スキーマとテーブルを選ぶか、BankSyncに作成させます。追記、またはキーでupsertします。

    スキーマpublic
    テーブルtransactions
    追記Upsert
    行の照合キーtransaction_id
  3. 03

    スケジュールを選ぶ

    毎時、毎日、毎週、またはオンデマンド。すべての実行が記録に残ります。

    毎時毎日毎週
    次回の実行明日6:00
    前回の実行● 新しい行3件、6:02

PostgreSQLのセットアップを最初から最後まで

BankSyncでPostgreSQLを設定する様子です。サンプル口座で撮影しています。

テーブルに届くデータ

transaction_id
取引に対する銀行の固定ID。upsertのキーになります。 4bdd8e6931727cd
date
銀行が計上した日。 2026-10-19
description
銀行が付けた摘要。 Whole Foods Market
amount
口座の通貨建てで符号付き。出金はマイナスです。 -86.42
currency
ISO 4217コード。 USD
category
グループ化やフィルターに使える支出カテゴリー。 Groceries
account_name
取引元の口座。複数の銀行で1つのテーブルを共有できます。 Amex Gold
pending
銀行が計上するまでtrue。 false
既存の列に銀行のフィールドをマッピングするか、BankSyncにテーブルと一意インデックスを作成させます。

データベースは経由地のひとつ。それがすべてではありません

PostgreSQLの要点

データ
取引、残高、売買、保有資産、ローン。1フィードにつき1つのデータ型です。
対応先
Supabase、Neon、Timescale、CockroachDB、Amazon RDS、セルフホスト型Postgres。
書き込みモード
追記は同期ごとに行を挿入します。upsertは選択したキー列で照合し、その場で更新します。
セキュリティ
SSLモードはdisable、require、verify-fullに対応。最小権限のユーザーと、許可リストに登録できる少数の固定BankSync IPを使います。
スケジュール
プランに応じて毎時、毎日、毎週の自動同期を選べるほか、いつでも手動で同期できます。
アクセス
読み取り専用で、銀行自身の同意画面で承認します。BankSyncが銀行のログイン情報を保存することはなく、お金を動かすこともできません。
セットアップ
所要時間は約10分です。 マネージド(Supabase、Neon、Aurora、RDS)とセルフホストのデータベースで使えます。
ステータス
利用可能です。

よくある質問

BankSyncはどのPostgreSQLホストに対応していますか?

到達可能なPostgreSQLデータベースならどれでも使えます。Supabase、Neon、Timescale、CockroachDB、Amazon RDS、セルフホスト型Postgresにも対応しています。

追記とupsert、どちらを使うべきですか?

ほとんどのフィードではupsertです。追記は同期のたびに新しい行を挿入するため、再同期で重複する可能性があります。upsertは、transaction_id(取引ID)など選択したキー列で行を照合し、その場で更新します。

BankSyncでテーブルを作成できますか?

はい。「Set this up for me」で、フィードのデータ型に合わせたテーブルを作成し、すべての列をマッピングして、upsertに必要な一意インデックスを追加します。

データベースへのアクセスを制限するには?

挿入のみ(BankSyncにテーブルを作成させる場合は作成も)できるユーザーをBankSyncに渡し、SSLモードはrequireまたはverify-fullを使い、BankSyncの接続元の固定IPアドレスを許可リストに追加します。

BankSyncはお金を動かしたり、銀行のパスワードを見たりできますか?

いいえ。銀行へのアクセスは読み取り専用で、銀行自身の同意画面で承認します。BankSyncが銀行のログイン情報を保存することはなく、お金を動かすこともできません。

PostgreSQLデータベースに銀行データを

BankSyncはPostgreSQLと提携しておらず、PostgreSQLの承認を受けたものでも公式パートナーでもありません。PostgreSQLの商標は各所有者に帰属します。