APIドキュメント
銀行明細書をプログラムでアップロード・処理し、Excelでダウンロードするためのリファレンス。
認証
すべてのリクエストのAuthorizationヘッダーでAPIキーを送信してください。キーはサーバーに保管し、ブラウザやモバイルアプリには置かないでください。
Authorization: Bearer <your_api_key>
ベースURL
https://api.bayainy.com/api/v1
/upload/previewアップロード前のプレビュー
各ページ (デジタルまたはスキャン) を判別し、正確なページ数を計算します。料金は発生しません。
POST /upload/preview HTTP/1.1Authorization: Bearer <your_api_key>Content-Type: multipart/form-datafile: statement.pdf
レスポンス
{"page_count": 3,"digital_pages": 2,"scanned_pages": 1,"credit_cost": 4,"pages": [{ "page": 1, "type": "digital" },{ "page": 2, "type": "digital" },{ "page": 3, "type": "scanned" }]}
/upload明細書をアップロードする
PDFをアップロードして抽出を開始します。明細書はpendingのステータスで始まり、自動的にprocessingへ進みます。
POST /upload HTTP/1.1Authorization: Bearer <your_api_key>Content-Type: multipart/form-datafile: statement.pdf
レスポンス
{"id": "550e8400-e29b-41d4-a716-446655440000","filename": "statement.pdf","status": "pending","page_count": 3,"estimated_seconds": 6}
/statements/{id}明細書とその取引を取得する
処理の完了を確認し、抽出された取引と残高を取得するために使います。
注: ステータスがprocessingからcompleted (またはfailed) に変わるまで、数秒ごとにこのエンドポイントを確認してください。
GET /statements/550e8400-e29b-41d4-a716-446655440000 HTTP/1.1Authorization: Bearer <your_api_key>
レスポンス
{"id": "550e8400-e29b-41d4-a716-446655440000","status": "completed","bank_name": "Al Rajhi Bank","transaction_count": 42,"opening_balance": 12480.00,"closing_balance": 24755.00,"available_exports": ["excel", "csv", "qbo", "xml"],"transactions": [{"date": "2026-09-01","description": "Card purchase, Panda","debit": 184.50,"credit": 0.00,"balance": 12295.50,"category": "grocery","reference": "FT26244S1K7Q","page_number": 1}]}
取引のフィールド
datestring取引日 (YYYY-MM-DD)。
descriptionstring取引の内容。参照番号を除いた説明。
debitnumber出金額。常に正の値で、ない場合は0。
creditnumber入金額。常に正の値で、ない場合は0。
balancenumberその行に印字された残高。当座貸越の場合はマイナス。
categorystring支出のカテゴリ。例: grocery、transfer、fuel。
referencestring | null銀行が印字した参照番号 (ある場合)。
page_numberintegerその行があったPDFのページ。
/statements明細書の一覧を取得する
アカウントに紐づくすべての明細書を、新しい順に返します。
GET /statements HTTP/1.1Authorization: Bearer <your_api_key>
レスポンス
[{"id": "550e8400-e29b-41d4-a716-446655440000","filename": "statement.pdf","status": "completed","transaction_count": 42}]
/download/{id}/{format}ファイルをダウンロードする
ステータスがcompletedになってから利用できます。プランに含まれる形式はavailable_exportsに記載されています。
excelcsvqboquickbooksxmlodoozohomt940camt053iifGET /download/550e8400-e29b-41d4-a716-446655440000/excel HTTP/1.1Authorization: Bearer <your_api_key>
レスポンス
HTTP/1.1 200 OKContent-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet<binary .xlsx file>
/statements/{id}明細書を削除する
明細書とその取引、ファイルを削除します。元に戻すことはできません。
DELETE /statements/550e8400-e29b-41d4-a716-446655440000 HTTP/1.1Authorization: Bearer <your_api_key>
レスポンス
HTTP/1.1 204 No Content
ステータスの値
pending受信済み。まもなく開始します。
queued空きを待っています。
processing抽出を実行中です。
completed取引とファイルの準備ができました。
failed処理できませんでした。理由はerror_messageに記載されています。
連携についてのご質問は?
お問い合わせ