メインコンテンツにスキップ
商品詳細は英語で表示されます。翻訳は近日公開予定です。
Unbuild, Disassembly & Salvage Orders — A build-to-order Odoo module that turns rejects, returns, and rework into structured  — 1/1イメージプレビュー

A build-to-order Odoo module that turns rejects, returns, and rework into structured unbuild/disassembly orders

— recovering components back to stock with defined salvage yields, preserved lot/serial traceability, and correct recovered-component valuation.

ECOSIRE scopes, builds, installs, and supports it on your Odoo 17/18/19.

Unbuild, Disassembly & Salvage Ordersとは?

A build-to-order Odoo module that turns rejects, returns, and rework into structured unbuild/disassembly orders — recovering components back to stock with defined salvage yields, preserved lot/serial traceability, and correct recovered-component valuation. ECOSIRE scopes, builds, installs, and supports it on your Odoo 17/18/19. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

主な機能

Extends Odoo's native `mrp.unbuild` (or a governed `ecosire.salvage.order` model) to support partial and graded recovery instead of a fixed BOM explosion
Per-BOM-line salvage yield definition — declare expected recovery percentage and quantity for each component of the parent unit
Condition/disposition routing per component: reuse-to-stock, send-to-rework, scrap, or warranty-return, each with its own destination `stock.location`
Recovered-component valuation via `compute`/`@api.depends` from the parent's inventory cost, posting through standard or AVCO valuation so stock and COGS stay accurate
Lot/serial preservation — disassembly `stock.move.line` records link each recovered part's lot/serial back to the parent unit's serial for intact upstream/downstream traceability
Rework-loop integration: a failed unit's salvage order can spawn a manufacturing or repair order that consumes the recovered components
Automated action to auto-create a salvage/disassembly order when a linked `quality.check` fails (Enterprise Quality)
OWL-based salvage-yield editor for fast per-line entry of expected quantity, condition, and destination
QWeb 'Disassembly & Recovery' report listing recovered components, condition grade, and revalued cost for audit and finance
Multi-company and warehouse isolation enforced through `ir.model.access.csv` plus `ir.rule` record rules
Full XML-RPC / JSON-RPC API surface so reverse-logistics, WMS, or PLM systems can create and query salvage orders
Configurable salvage BOM templates so recurring reject/return types recover a consistent component set
Scrap vs salvage split on a single order, with scrap flowing to Odoo's standard scrap location and salvage to reusable stock
Version-matched builds for Odoo 17.0, 18.0, and 19.0, respecting each release's `mrp`/`stock` API changes

受注生産、すべておまかせ

自分での設定は不要 — ECOSIRE が構築・インストール・サポートする実働アプリです。

  1. 1

    ご注文

    一回限りの構築料金から始めます。キックオフで一緒に範囲を決めます。

  2. 2

    構築とインストール

    ECOSIRE がお客様の Odoo 上で構築・設定・インストールします。

  3. 3

    本番稼働 + サポート

    約1週間(営業日ベース)で稼働し、本番稼働後2週間のサポートが付きます。納品したコードの不具合は無償で修正します。

技術仕様

Odoo互換性
Odoo 17, Odoo 18, Odoo 19
エディション
Enterprise&Community
ライセンス
ライセンスの確認が必要です
Python要件
Python 3.10+
データベース
PostgreSQL 12+

この製品について

Every plant accumulates value it can't sell: quality-failed finished goods, customer returns, superseded assemblies, and rework candidates sitting in a quarantine bin. Odoo's native mrp.unbuild order does exist, but it is deliberately simple — it consumes one finished product and returns the exact BOM component quantities to stock, with no concept of partial recovery, scrap-versus-salvage split, per-component yield, condition grading, or the fact that a disassembled unit rarely gives back 100% of its bill of materials. Teams end up doing the recovery math in spreadsheets, manually creating inventory adjustments, and losing the lot/serial thread between the parent unit and the parts pulled out of it. That breaks traceability and quietly distorts inventory valuation.

ECOSIRE builds a dedicated Unbuild, Disassembly & Salvage layer on top of Odoo's manufacturing core. We extend mrp.unbuild (or introduce a governed ecosire.salvage.order model where a cleaner separation is warranted) with per-BOM-line salvage definitions: for each component you declare an expected recovery yield, a condition/disposition (reuse, rework, scrap, warranty-return), and a destination location. A compute/@api.depends layer derives recoverable quantities and recovered value from the parent unit's inventory cost and your yield rules, so the stock moves that get generated reflect what actually came off the line — not an idealized BOM explosion. Lot and serial numbers are preserved on disassembly: the module writes stock-move lines that link each recovered component's lot/serial back to the parent's serial, so stock.lot traceability (upstream and downstream) stays intact and auditable. When a unit fails quality, the order can spawn a rework loop that feeds the salvaged components straight into a new manufacturing or repair order rather than back to raw stock.

Technically, the module ships as a proper Odoo addon: a versioned __manifest__.py declaring dependencies on mrp, stock, and quality (Enterprise) or a Community-safe fallback; new models.Model classes with fields, compute methods, and constraints; access control via ir.model.access.csv plus record rules for multi-company and warehouse-level isolation; backend list/form/kanban views in XML with OWL components for the salvage-yield editor; a QWeb "Disassembly & Recovery" report showing recovered components, condition, and revalued cost; and optional automated actions (e.g., auto-create a salvage order when a quality.check fails). Everything is reachable over the standard XML-RPC / JSON-RPC API, so WMS, PLM, or reverse-logistics systems can create and read salvage orders programmatically. Recovered-component valuation posts correctly through Odoo's inventory valuation (standard or AVCO), so your stock and COGS reflect reclaimed value.

Because this is build-to-order, nothing is a shrink-wrapped download. We start with a short scoping call, confirm your BOM structure, valuation method (Community vs Enterprise differences matter here), quality workflow, and Odoo version (17.0, 18.0, or 19.0), then write a fixed-scope specification. We build against a copy of your configuration, run UAT on a staging database, and hand over installable source, documentation, and a git repository. Typical delivery is one working week from confirmed scope, followed by a post-go-live support window. You own the code.

得られるもの

  • Installable module source code built for your exact Odoo version (17.0, 18.0, or 19.0), Community or Enterprise
  • On-site or remote installation and configuration against your production Odoo, including BOM/valuation/quality wiring
  • Technical documentation: data model, `compute` logic, security rules, automated actions, and API endpoints
  • End-user guide plus a live training session for production, quality, and inventory teams
  • UAT on a staging database with a documented rollback plan before any production change
  • Post-go-live support window for defect fixes and configuration questions
  • Git repository handover with full commit history and branch/tag for your version
  • Signed-off fixed-scope specification and acceptance checklist

これは誰のためのものですか

Manufacturing Operations Manager

Runs the reject/rework floor and needs failed and returned units turned into structured disassembly orders so recovered components flow back to stock predictably instead of via spreadsheets and manual inventory adjustments.

Quality Manager

Wants a quality failure to automatically trigger a salvage/disassembly decision, with each recovered component graded for reuse, rework, or scrap, and full lot/serial traceability preserved for audits and warranty claims.

Inventory & Costing Controller

Needs recovered components to post at correct value through Odoo's inventory valuation so reclaimed stock and COGS are accurate, and needs the disassembly report to reconcile what was consumed against what was recovered.

Reverse-Logistics / Returns Lead

Handles customer returns and superseded assemblies and needs to create and query salvage orders over the XML-RPC/JSON-RPC API from the returns or WMS system, routing parts to reuse, rework, or warranty-return locations.

Unbuild, Disassembly & Salvage Orders の比較方法

基準エコシエールカスタムビルド競合他社Odoo 標準機能
Partial / graded recoveryPer-BOM-line yield %, condition and disposition per componentWhatever you spec and can build in-houseRarely — most stop at fixed BOM returnNone — returns full BOM quantities only
Lot/serial preservation on disassemblyRecovered parts linked back to parent serial, traceability intactPossible but easy to get wrong without deep MRP knowledgeInconsistent; often breaks the parent linkBasic; no salvage-aware linkage
Recovered-component valuationRevalued via `compute` through standard/AVCO, posts to COGS/stockDepends on your accounting expertiseUsually returns at BOM cost, not recovered valueReturns at component cost, no recovery logic
Rework-loop / quality integrationAuto-trigger from failed `quality.check`, spawn rework/repair orderBuildable but significant effortSeldom integrated with QualityManual and disconnected
Fit to your BOMs & processScoped to your BOM structure, valuation and workflowFully tailored — you own the effortGeneric; you adapt to its assumptionsGeneric core behavior
Delivery modelBuild-to-order, one working week, UAT on staging + rollbackYour timeline and internal capacityInstant install, then you fill the gapsAlready present, limited
Source & ownershipFull source + git repo handover, you own itYou own itVendor-locked, encrypted or licensedOdoo core, not customizable without dev
Support & upgradesPost-go-live window + optional version-upgrade retainerYour team maintains itVendor SLA varies; upgrades often paidCovered by your Odoo maintenance only

Unbuild, Disassembly & Salvage Orders に関するよくある質問

How is this different from Odoo's built-in Unbuild order?

Native `mrp.unbuild` returns the exact BOM component quantities to stock and nothing more — no partial recovery, no per-component yield, no condition grading, no scrap-vs-salvage split, and no linkage from a quality failure. We add all of that: declared recovery yields per BOM line, disposition routing, preserved lot/serial linkage to the parent unit, recovered-component revaluation, and rework-loop integration.

What is the delivery lead time?

This is a build-to-order module, not an instant download. Typical delivery is one working week from confirmed scope. After a short scoping call we write a fixed-scope specification; once you sign off, we build against a copy of your configuration, run UAT on staging, and hand over the installable source and git repository.

How are updates and support handled after go-live?

Every engagement includes a post-go-live support window for defect fixes and configuration questions. Because you receive the full source and git repository, you own the code outright. We offer version-upgrade work (e.g., 18.0 to 19.0) and ongoing support as a separate, optional retainer.

Does it work on Odoo Community or only Enterprise?

Both. The core unbuild/salvage/valuation logic runs on Community. Some features — notably auto-creating a salvage order from a failed `quality.check` — depend on the Enterprise Quality app, so we confirm your edition during scoping and provide a Community-safe fallback (e.g., manual or server-action trigger) where a feature relies on Enterprise-only modules.

Is lot and serial traceability preserved when a unit is disassembled?

Yes. The disassembly stock moves write `stock.move.line` records that link each recovered component's lot/serial back to the parent unit's serial, so Odoo's upstream/downstream traceability on `stock.lot` remains intact and auditable for warranty and compliance.

Can our other systems create salvage orders automatically?

Yes. The models are exposed over the standard XML-RPC and JSON-RPC API, so your WMS, returns portal, or PLM can create, read, and update salvage/disassembly orders programmatically — for example creating a salvage order the moment a return is booked.

Which Odoo versions are supported?

We build and test against Odoo 17.0, 18.0, and 19.0, respecting each release's `mrp` and `stock` API differences. You tell us your target version during scoping and we deliver a version-matched build.

見積もりを依頼

Unbuild, Disassembly & Salvage Orders

A build-to-order Odoo module that turns rejects, returns, and rework into structured unbuild/disassembly orders — recovering components back to stock with defined salvage yields, preserved lot/serial traceability, and correct recovered-component valuation. ECOSIRE scopes, builds, installs, and supports it on your Odoo 17/18/19.

  • Extends Odoo's native `mrp.unbuild` (or a governed `ecosire.salvage.order` model) to support partial and graded recovery instead of a fixed BOM explosion
  • Per-BOM-line salvage yield definition — declare expected recovery percentage and quantity for each component of the parent unit
  • Condition/disposition routing per component: reuse-to-stock, send-to-rework, scrap, or warranty-return, each with its own destination `stock.location`
  • Recovered-component valuation via `compute`/`@api.depends` from the parent's inventory cost, posting through standard or AVCO valuation so stock and COGS stay accurate

見積もりを依頼

Unbuild, Disassembly & Salvage Orders のご要望をお知らせください。価格、ライセンスの選択肢、貴社に合わせたご提案を、通常1営業日以内にお送りします。

今すぐのお支払いはありません。これはチームへの見積もり依頼を送信します。価格と次のステップをメールでご案内します。