iDempiere 出納帳の使い方|債権債務・資金管理 操作マニュアル・技術仕様
This content is not available in your language yet.
📖 未収・未払管理の全体像: 未収・未払管理の業務フロー全体図 も合わせてご覧ください。
出納帳は、iDempiereの債権債務・資金管理における銀行照合(Bank Reconciliation)機能です。銀行の取引明細とiDempiere上の入金/支払伝票を照合・マッチングし、差異を管理します。
📌 ポイント: 「Create From」ボタンを使うと、完了済みの未照合入金/支払伝票を一括で明細行に取り込めます。月次の銀行照合作業を大幅に効率化できます。
銀行口座ごとに出納帳を作成し、入出金明細を登録して既存の入金/支払伝票と紐付けます。「Create From」ボタンで未照合の入金/支払を一括取込できます。
出納帳でできること
Section titled “出納帳でできること”- 銀行取引明細の登録・管理
- 入金/支払伝票との照合(マッチング)
- 「Create From」による未照合伝票の一括取込
- 手数料・利息など銀行側取引の記録
- 出納帳の完了による銀行口座残高の更新
- 未照合明細の差異分析
graph TD
subgraph "Bank/Cash Statement (Window 194)"
T1["🏦 出納帳<br/>C_BankStatement<br/>22項目"]
T2["📄 出納帳明細<br/>C_BankStatementLine<br/>35項目"]
end
T1 --> T2
💡 ヒント: 出納帳明細の「手数料」「利息」欄に入力した金額は、完了処理時に自動的に会計仕訳が生成されます。銀行手数料の記録漏れがなくなります。
| タブ名 | テーブル | 役割 | 主な入力項目 |
|---|---|---|---|
| 出納帳 | C_BankStatement | ヘッダー情報(銀行口座・日付等) | 銀行口座、伝票名、取引日 |
| 出納帳明細 | C_BankStatementLine | 入出金明細(銀行取引の各行) | 入金/支払、金額、取引先 |
出納帳の基本操作手順
Section titled “出納帳の基本操作手順”graph TD
A["🚀 メニューから開く<br/>債権債務・資金管理 > 出納帳(標準)"] --> B["➕ 新規でヘッダーを入力<br/>(銀行口座・伝票名・取引日・期首残高)"]
B --> C["💾 保存"]
C --> D["📄 出納帳明細タブへ移動"]
D --> E{明細の登録方法}
E -->|一括取込(推奨)| F["🔄 Create Fromボタンで<br/>未照合伝票を一括取込"]
E -->|手動入力| G["📝 新規行を追加して<br/>入金/支払・金額を入力"]
F --> H["💾 保存"]
G --> H
H --> I["🔙 出納帳タブに戻る"]
I --> J["✅ 伝票処理 → 完了"]
J --> K["🏦 銀行口座残高・会計仕訳に反映"]
⚠️ 注意: 出納帳を完了すると期末残高が確定します。完了後の修正は「無効」処理で取消してから再作成が必要です。
アクセス方法
Section titled “アクセス方法”メニューから「債権債務・資金管理 > 出納帳(標準)」を開きます。
- ツールバーの「新規」ボタンをクリック
- ヘッダー情報を入力:
- 銀行口座: 照合対象の銀行口座を選択
- 伝票名: 出納帳の名前(例: 「2026年5月 三菱UFJ」)
- 取引日: 出納帳の基準日
- 期首残高: 銀行通帳の期首残高を入力
- 「保存」をクリック
明細の登録方法1: Create Fromボタン(推奨)
Section titled “明細の登録方法1: Create Fromボタン(推奨)”- 「出納帳明細」タブに移動
- 「Create From」ボタンをクリック
- 取込条件を設定:
- 取引先: 特定の取引先に絞る場合に指定
- 日付範囲: 対象期間を指定
- 未照合の入金/支払伝票一覧が表示される
- 取り込む伝票を選択し「OK」をクリック
- 選択した伝票が明細行として自動登録される
明細の登録方法2: 手動入力
Section titled “明細の登録方法2: 手動入力”- 「出納帳明細」タブで「新規」をクリック
- 以下を入力:
- 入金/支払: 既存の入金/支払伝票を選択(任意)
- 取引先: 取引先を選択
- 取引日: 銀行での取引日
- 取引金額: 入金はプラス、出金はマイナス
- 精算金額: 銀行口座の通貨での金額
- 手数料: 銀行手数料がある場合に入力
- 利息: 利息がある場合に入力
- メモ: 取引の備考
- 「保存」をクリック
伝票処理(確定)
Section titled “伝票処理(確定)”- 「出納帳」タブに戻る
- 「伝票処理」ボタンをクリック
- アクション「完了(Complete)」を選択
- 「OK」をクリック
完了処理により以下が自動実行されます:
- 入金/支払伝票が未指定の明細行に対し、入金/支払伝票の自動生成
- 銀行口座残高の更新
- 手数料・利息の会計仕訳生成
- 期末残高の確定
項目リファレンス
Section titled “項目リファレンス”出納帳タブ(ヘッダー)
Section titled “出納帳タブ(ヘッダー)”| 項目名 | 必須 | 型 | 説明 |
|---|---|---|---|
| 銀行口座 | ○ | 選択 | 照合対象の銀行口座 |
| 伝票名 | ○ | テキスト | 出納帳の名称 |
| 取引日 | ○ | 日付 | 出納帳の基準日付 |
| 期首残高 | ○ | 金額 | 銀行通帳の期首残高 |
| 期末残高 | 自動 | 金額 | 期首残高 + 全明細行の合計 |
| 伝票状態 | 自動 | リスト | 起案、完了、無効 等 |
出納帳明細タブ
Section titled “出納帳明細タブ”| 項目名 | 必須 | 型 | 説明 |
|---|---|---|---|
| 入金/支払 | - | 検索 | 照合する入金/支払伝票 |
| 取引先 | - | 検索 | 取引相手 |
| 取引日 | ○ | 日付 | 銀行での取引日 |
| 転記日付 | ○ | 日付 | 会計上の転記日付 |
| 取引金額 | ○ | 金額 | 入金(+)/ 出金(-) |
| 精算金額 | ○ | 金額 | 銀行口座通貨での金額 |
| 手数料 | - | 金額 | 銀行手数料 |
| 利息 | - | 金額 | 受取利息または支払利息 |
| メモ | - | テキスト | 取引の備考 |
伝票ステータスの遷移
Section titled “伝票ステータスの遷移”stateDiagram-v2
[*] --> 起案: 新規作成
起案 --> 完了: 完了処理
起案 --> 無効: 無効処理
完了 --> 無効: 取消処理(逆仕訳)
完了 --> クローズ: クローズ処理
よくある質問(FAQ)
Section titled “よくある質問(FAQ)”Q. Create Fromで入金/支払伝票が表示されません
Section titled “Q. Create Fromで入金/支払伝票が表示されません”未照合(出納帳に紐付いていない)の完了済み入金/支払伝票のみが表示されます。伝票が「起案」状態の場合は先に完了してください。
Q. 銀行手数料だけの明細を登録するには?
Section titled “Q. 銀行手数料だけの明細を登録するには?”入金/支払伝票を指定せずに手動で明細行を追加し、手数料欄に金額を入力してください。完了処理時に手数料の会計仕訳が自動生成されます。
Q. 期末残高が銀行通帳と合いません
Section titled “Q. 期末残高が銀行通帳と合いません”未照合の入金/支払がないか確認してください。また、手数料や利息の登録漏れがないかチェックしてください。差異がある場合は調整仕訳用の明細行を追加します。
Q. 出納帳を完了した後に修正できますか?
Section titled “Q. 出納帳を完了した後に修正できますか?”完了済みの出納帳は「無効」処理で取消可能です。取消後に新しい出納帳を作成してください。
業務フロー上の位置づけ
Section titled “業務フロー上の位置づけ”graph TD
A[入金伝票] -->|照合| B[出納帳]
C[支払伝票] -->|照合| B
D[銀行取引明細] -->|手動/CSV| B
B -->|完了| E[銀行口座残高更新]
B -->|完了| F[会計仕訳]
関連する仕様書
Section titled “関連する仕様書”OSS ERP導入についてのご相談
Section titled “OSS ERP導入についてのご相談”iDempiereの出納帳機能は、銀行照合の手間を大幅に削減し、正確な資金管理を実現します。 Create From機能による一括取込で、月次の銀行照合作業を効率化しませんか?
As-Link株式会社では、iDempiereの導入支援・カスタマイズ開発を承っております。
🛠 技術仕様(開発者向け)
出納帳は Document 型の伝票で、C_BankStatement テーブルに格納されます。MBankStatement クラス(804行)がヘッダーのビジネスロジックを、MBankStatementLine クラス(334行)が明細行のロジックを担います。両クラスとも DocAction インターフェースを実装(ヘッダー側のみ)しています。
アーキテクチャ概要
Section titled “アーキテクチャ概要”classDiagram
class MBankStatement {
+prepareIt() String
+completeIt() String
+voidIt() boolean
+closeIt() boolean
+getLines(boolean) MBankStatementLine[]
+getStatementDifference() BigDecimal
}
class MBankStatementLine {
+beforeSave(boolean) boolean
+afterSave(boolean, boolean) boolean
+afterDelete(boolean) boolean
}
class X_C_BankStatement {
<<generated>>
}
class PO {
<<abstract>>
}
class DocAction {
<<interface>>
}
MBankStatement --|> X_C_BankStatement
X_C_BankStatement --|> PO
MBankStatement ..|> DocAction
MBankStatement --> MBankStatementLine : has many
MBankStatementLine --> MPayment : references/creates
パッケージ: org.compiere.model
ソースファイル:
org.adempiere.base/src/org/compiere/model/MBankStatement.javaorg.adempiere.base/src/org/compiere/model/MBankStatementLine.java
関連DBテーブル
Section titled “関連DBテーブル”C_BankStatement(出納帳ヘッダー)
Section titled “C_BankStatement(出納帳ヘッダー)”| カラム名 | 型 | 必須 | 説明 | 備考 |
|---|---|---|---|---|
| C_BankStatement_ID | ID | PK | 出納帳ID | 主キー |
| AD_Client_ID | TableDirect | Y | クライアント | |
| AD_Org_ID | TableDirect | Y | 組織 | |
| C_BankAccount_ID | TableDirect | Y | 銀行口座 | |
| Name | String | Y | 伝票名 | |
| DocumentNo | String | Y | 伝票番号 | |
| DocStatus | List | Y | 伝票状態 | DR/CO/VO |
| StatementDate | Date | Y | 取引日 | |
| BeginningBalance | Amount | Y | 期首残高 | |
| EndingBalance | Amount | Y | 期末残高 | 自動計算 |
| StatementDifference | Amount | Y | 差異額 | 期末-期首-明細合計 |
| Processed | YesNo | Y | 処理済み | |
| Posted | Button | Y | 転記 |
C_BankStatementLine(出納帳明細)
Section titled “C_BankStatementLine(出納帳明細)”| カラム名 | 型 | 必須 | 説明 |
|---|---|---|---|
| C_BankStatementLine_ID | ID | PK | 明細ID |
| C_BankStatement_ID | TableDirect | Y | ヘッダーFK |
| Line | Integer | Y | 行番号 |
| C_Payment_ID | Search | N | 入金/支払伝票 |
| C_BPartner_ID | Search | N | 取引先 |
| ValutaDate | Date | Y | 取引日 |
| DateAcct | Date | Y | 転記日付 |
| TrxAmt | Amount | Y | 取引金額 |
| StmtAmt | Amount | Y | 精算金額 |
| ChargeAmt | Amount | N | 手数料 |
| InterestAmt | Amount | N | 利息 |
| C_Charge_ID | TableDirect | N | 手数料科目 |
| Memo | String | N | メモ |
| IsReversal | YesNo | Y | 逆仕訳フラグ |
erDiagram
C_BankStatement ||--o{ C_BankStatementLine : "has"
C_BankStatement }o--|| C_BankAccount : "references"
C_BankAccount }o--|| C_Bank : "belongs to"
C_BankStatementLine }o--o| C_Payment : "references"
C_BankStatementLine }o--o| C_BPartner : "references"
C_BankStatementLine }o--o| C_Charge : "references"
ビジネスロジック
Section titled “ビジネスロジック”prepareIt() の主要処理
Section titled “prepareIt() の主要処理”ModelValidator.TIMING_BEFORE_PREPAREイベント発火- 会計期間のオープンチェック
- 明細行の存在チェック(0行は不可)
ModelValidator.TIMING_AFTER_PREPAREイベント発火
completeIt() の主要処理
Section titled “completeIt() の主要処理”ModelValidator.TIMING_BEFORE_COMPLETEイベント発火- 各明細行を処理:
C_Payment_IDが指定されている場合: 入金/支払伝票の照合済みフラグを更新C_Payment_IDが未指定の場合: 新規の入金/支払伝票(MPayment)を自動生成し完了- 手数料(
ChargeAmt)がある場合: 手数料用のMPaymentを別途生成 - 利息(
InterestAmt)がある場合: 利息用のMPaymentを別途生成
- 期末残高の確定(
EndingBalanceの更新) ModelValidator.TIMING_AFTER_COMPLETEイベント発火
voidIt() の主要処理
Section titled “voidIt() の主要処理”- 各明細行の逆仕訳:
- 自動生成された入金/支払伝票の逆仕訳
- 照合フラグの解除
- 期末残高を期首残高にリセット
MBankStatementLine の保存時処理
Section titled “MBankStatementLine の保存時処理”beforeSave():
- 入金/支払伝票が指定された場合、取引先・金額を自動セット
- 精算金額(StmtAmt)= 取引金額(TrxAmt)+ 手数料(ChargeAmt)+ 利息(InterestAmt)の整合性チェック
afterSave() / afterDelete():
- ヘッダーの
EndingBalanceとStatementDifferenceを再計算
伝票処理フロー
Section titled “伝票処理フロー”stateDiagram-v2
[*] --> Drafted : 新規作成
Drafted --> InProgress : prepareIt()
InProgress --> Completed : completeIt()
Completed --> Voided : voidIt()
Completed --> Closed : closeIt()
Drafted --> Voided : voidIt()
Create From 処理の内部フロー
Section titled “Create From 処理の内部フロー”sequenceDiagram
participant UI as ZKウィンドウ
participant CF as CreateFromStatement
participant BSL as MBankStatementLine
participant Pay as MPayment
UI->>CF: Create Fromボタン押下
CF->>Pay: 未照合の入金/支払を検索
Pay-->>CF: 対象伝票リスト
CF-->>UI: 選択画面を表示
UI->>CF: 対象伝票を選択しOK
loop 選択された各伝票
CF->>BSL: 明細行を自動生成
BSL->>BSL: C_Payment_ID, 金額をセット
end
拡張ポイント(カスタマイズ箇所)
Section titled “拡張ポイント(カスタマイズ箇所)”OSGi Model Validator(推奨)
Section titled “OSGi Model Validator(推奨)”出納帳に独自バリデーションや後処理を追加する例:
public class CustomBankStatementValidator implements ModelValidator { @Override public String docValidate(PO po, int timing) { if (po instanceof MBankStatement) { MBankStatement bs = (MBankStatement) po; if (timing == TIMING_BEFORE_COMPLETE) { // 例: 期末残高の差異チェック BigDecimal diff = bs.getStatementDifference(); if (diff.abs().compareTo(BigDecimal.ZERO) != 0) { return "出納帳の差異が " + diff + " あります。確認してください。"; } } if (timing == TIMING_AFTER_COMPLETE) { // 例: 完了後に経理部門へ通知 notifyAccountingDept(bs); } } return null; }
@Override public int modelChange(PO po, int type) throws Exception { if (po instanceof MBankStatementLine) { MBankStatementLine line = (MBankStatementLine) po; if (type == TYPE_BEFORE_NEW) { // 例: 明細行追加時の自動マッチング autoMatchPayment(line); } } return null; }}Create From のカスタマイズ
Section titled “Create From のカスタマイズ”CreateFromStatement クラスを OSGi で拡張し、銀行APIやCSVからの自動取込ロジックを追加可能。外部銀行システムとの連携は、このポイントでカスタマイズするのが最適。
関連プロセス
Section titled “関連プロセス”| プロセス名 | 説明 |
|---|---|
| 伝票処理 (DocAction) | 伝票の完了・無効・取消等 |
| Create From | 未照合入金/支払の一括取込 |
| 銀行照合レポート | 照合状況の確認レポート |
インデックス
Section titled “インデックス”| 名前 | 種別 | カラム |
|---|---|---|
| c_bankstatement_pkey | UNIQUE | C_BankStatement_ID |
| c_bankstatement_uu_idx | UNIQUE | C_BankStatement_UU |
| c_bankstatementline_pkey | UNIQUE | C_BankStatementLine_ID |
| c_bankstatementline_uu_idx | UNIQUE | C_BankStatementLine_UU |
関連ドキュメント
Section titled “関連ドキュメント”iDempiereカスタマイズのご相談
Section titled “iDempiereカスタマイズのご相談”iDempiereの出納帳は Model Validator や Create From の拡張で、銀行API連携や独自照合ルールを安全に実装できます。 コア改変なしで業務要件に合わせた銀行照合の自動化が可能です。
As-Link株式会社では、OSGiプラグインによる安全なカスタマイズを提供しています。