見積(draft)
├─> 見積送付(sent)
│ └─> 確認(sale)─> 出荷・請求書作成
│ ├─> 請求書送付(posted)
│ │ └─> 支払い(in_payment / paid)
└─> キャンセル(cancel)
✅ Odooセールスモジュールの業務フローまとめ
📘 ステージ分類(画面上の表記)と内部ステータス(sale.order.state
)
ステージ(UI表示) | 内部ステータス | 説明 |
---|---|---|
見積 | draft | 下書き状態の見積。顧客にまだ送っていない |
見積提出済み | sent | メール送信・印刷後。顧客に提出済み |
販売オーダ(確認済み) | sale | 顧客が受け入れ、注文確定された状態 |
請求書作成済(未請求) | sale | 請求書がドラフトとして作成されているがまだ送っていない |
請求書送付済・支払待ち | sale + 請求書状態 = posted | 顧客に請求書送信済みで、支払い待ち |
支払済み(または一部) | sale + 請求書状態 = in_payment / paid | 請求が支払われた状態 |
キャンセル | cancel | 見積・注文が取り消された状態 |
🧩 状態ごとの入力・操作内容とボタン機能(文章形式)
1. 【見積】draft
- 入力項目:
- 顧客名、商品、数量、価格、税、納期、支払条件など
- 操作可能なボタン:
- 「見積送信」→
action_quotation_send()
:メール送信と印刷 - 「確認」→
action_confirm()
:注文確定、販売オーダへ - 「キャンセル」→
action_cancel()
:キャンセル処理
- 「見積送信」→
- 備考:いつでも編集可能。販売オーダとして確定する前の状態。
2. 【見積提出済み】sent
- 特徴:見積が顧客に送信された後の状態(UI上で表示)
- 操作可能なボタン:
- 「確認」→ 顧客が注文を承諾した想定でオーダに移行
- 「キャンセル」
- 備考:stateは変わらないが、履歴として重要
3. 【販売オーダー】sale
- 状態変化:
action_confirm()
によりsale
に変わる - 自動で発生:
stock.picking
(出荷オーダ)の作成procurement
のトリガー(在庫がなければ仕入)
- 操作可能なボタン:
- 「出荷」:
picking
への遷移 - 「請求書作成」:
account.move
のドラフト請求書作成
- 「出荷」:
- 備考:この状態から在庫・会計処理が開始される
4. 【請求書作成済み】sale
+ 請求書 state=draft
- 機能:
- 請求書はドラフト(未投稿)状態で作成される
- 操作可能なボタン:
- 「確認・送信」:請求書を投稿(
posted
)状態へ
- 「確認・送信」:請求書を投稿(
- 備考:まだ支払いはされていない
5. 【請求書送付済み・支払待ち】請求書 state=posted
- 操作可能なボタン(請求書画面):
- 「支払い登録」:支払いレコード作成(
in_payment
)
- 「支払い登録」:支払いレコード作成(
- 備考:未収金状態。顧客の支払いを待つフェーズ
6. 【支払済み】請求書 state=paid
または in_payment
- 状態:請求金額に対して支払い登録が完了した状態
- 備考:販売プロセスが完了(会計処理も終了)
7. 【キャンセル】cancel
- どの状態でもキャンセルは可能(ただし制限あり)
- 備考:
- 出荷済み・請求済みの場合は、返品や返金が必要
- 元の注文内容を保持したまま複製可能
✅ モデルと処理の連携概要
機能 | モデル | 関連 |
---|---|---|
見積/販売注文 | sale.order | メインの販売ドキュメント |
出荷指示 | stock.picking | sale.order → 出荷連携 |
請求書 | account.move | sale.order から生成 |
支払い記録 | account.payment | account.move に関連 |
stateDiagram
direction LR
[*] --> draft:新規見積作成
draft --> sent:見積送信
sent --> sale:注文を確認
draft --> sale:注文を確認
sale --> invoice_draft:請求書作成
invoice_draft --> invoice_posted:請求書送付
invoice_posted --> in_payment:支払登録
in_payment --> paid:支払完了
draft --> cancel
sent --> cancel
sale --> cancel
invoice_draft --> cancel
invoice_posted --> cancel
cancel --> [*]
paid --> [*]
note right of draft
状態:見積(draft)
- 入力:顧客、商品、数量、価格など
- 操作:見積送信、確認、キャンセル
end note
note right of sent
状態:見積提出済み(sent)
- 操作:確認、キャンセル
end note
note right of sale
状態:販売オーダ(sale)
- 自動:出荷指示作成
- 操作:出荷、請求書作成、キャンセル
end note
note right of invoice_draft
状態:請求書ドラフト
- 操作:請求書送信・投稿
end note
note right of invoice_posted
状態:請求書送付済み
- 操作:支払登録
end note
note right of paid
状態:支払済み
- 完了済みの販売プロセス
end note
note right of cancel
状態:キャンセル
- どの段階でも可能
- 元に戻せない(複製推奨)
end note
「販売見積から確定・出荷まで行い、未請求タブに表示される」流れを体験すること
🧩 操作シナリオ:見積作成 → 確定 → 出荷 → 未請求に表示
🪧 事前準備:商品設定を確認(納品ベースの請求)
- [販売] > [商品] メニューにアクセス
- 対象の商品を開く(または新規作成)
- 「販売」タブで以下を設定:
- 請求ポリシー(Invoicing Policy):
🔘 納品済数量に基づいて請求する(Based on delivered quantities)
- 請求ポリシー(Invoicing Policy):
- 保存
📘 ステップ1:見積作成
- [販売] > [見積] > 新規作成
- 以下を入力:
- 顧客:テスト用の顧客
- 商品:先ほどの納品ベースの商品
- 数量:例として「3個」
- 保存
📩 ステップ2:見積を送信して確定
- 「見積送信」ボタン(任意)
- 「確認(Confirm)」ボタンをクリック
→ 状態がsale
に変わる
→ Odooが 出荷指示(delivery order) を自動で作成
📦 ステップ3:出荷処理
- 販売オーダー画面内「出荷」ボタンをクリック(またはリンク)
stock.picking
画面に遷移- 実際の数量を確認(例:3個)
- 「検証(Validate)」ボタンを押して納品を完了させる
→sale.order.line.invoice_status
がto invoice
に更新される
💰 ステップ4:未請求セクションに表示される
- [販売] > [注文] > [未請求] メニューに移動
- 「請求対象オーダー」のドロップダウンを選択
- 先ほどのオーダーが表示されているはずです
✅ 補足:ここでできる操作
- 「オーダーごとに請求」:個別に請求書を作成
- 「まとめて請求書を作成」:複数のオーダーを一括で請求書に変換
- この処理により、
account.move
(請求書)がドラフトで作成される

コメントを残す