A staffing-agency ERP built on Odoo that runs candidate pipelines, client job orders, placement contracts and placement-fee billing end to end. ECOSIRE scopes, builds, installs and supports it for your agency — it is not an off-the-shelf download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $399.00 USD; request a quote for a scoped proposal.

A staffing-agency ERP built on Odoo that runs candidate pipelines, client job orders, placement contracts and placement-fee billing end to end. ECOSIRE scopes, builds, installs and supports it for your agency — it is not an off-the-shelf download.
现在无需付款。此操作会向我们的团队发送报价请求——我们会通过邮件跟进价格和后续步骤。
Recruitment and manpower agencies live and die by two numbers: time-to-fill and placement margin. Yet most agencies run those numbers across a spreadsheet of candidates, a separate CRM for clients, an email inbox for job orders, and an accountant who invoices placements weeks after the fact. Odoo's native Recruitment app was built for a company hiring its own staff — one hr.job maps to one internal vacancy, candidates become hr.applicant records funneled toward a single employee contract, and there is no concept of a paying client, a placement fee, a margin, or a candidate you place at multiple clients over a career. The moment you try to model "Client A ordered 12 welders, we sourced 40 candidates, placed 9, and now bill a 15% placement fee," native Odoo runs out of road.
Dedicated `ecosire.candidate` model with structured skill tags (`many2many`), certifications, languages, expected salary, notice period and availability-window fields — beyond native `hr.applicant`
Client job-order / requisition model (`ecosire.job.order`) linked to the client `res.partner`, carrying required headcount, rate card, seniority and hard deadline
Candidate-to-job matching pipeline as a drag-and-drop Kanban with configurable `stage_id` records (sourced → screened → shortlisted → client interview → offer → placed)
Placement record (`ecosire.placement`) binding candidate ↔ job order with contract terms, start date, guarantee period and the fee/margin it earns
Computed KPIs via `@api.depends` — fill rate per job order, days-to-fill, and gross margin per placement — stored for reporting and pivot views
Placement-fee and ongoing-margin billing wired into Odoo Accounting: confirming a placement generates the client `account.move` from the agreed fee model
This module reshapes Odoo into an agency operating system. We introduce first-class models for the agency's real objects: a candidate database (ecosire.candidate) with structured skills, certifications, availability windows, expected salary and document tracking; client job orders / requisitions (ecosire.job.order) linked to the client res.partner with required headcount, rate card and deadline; and a placement record (ecosire.placement) that binds one candidate to one job order with the contract terms, start date, and the fee or margin that placement earns. A Kanban matching pipeline sits between candidates and job orders — sourced, screened, shortlisted, client-interview, offer, placed — implemented as a state selection with a stage model so recruiters drag cards exactly like they do in native CRM. Computed fields (@api.depends) roll up fill rate per job order, days-to-fill, and gross margin per placement so managers see the health of the desk without exporting anything.
Technically it is a clean, upgrade-safe Odoo addon. Business rules live in the ORM (models.Model with validated fields, @api.constrains guards, and compute/store fields), not in fragile automations. Access is governed by ir.model.access.csv plus record rules so a recruiter sees only their own desk while a manager sees the branch, and overseas-manpower workflows (visa stage, medical, deployment) are modeled as extra pipeline stages rather than bolted-on notes. Placement billing is wired straight into Odoo Accounting: confirming a placement can generate the client invoice for the placement fee or the ongoing margin against the contract, so finance never re-keys anything. QWeb reports produce the candidate CV pack, the client shortlist sheet and the placement/commission statement on your letterhead. Everything is reachable over Odoo's XML-RPC / JSON-RPC API, so a job board or a WhatsApp intake bot can create candidates and job orders programmatically. Automated actions handle the tedious edges — flagging expiring candidate documents, nudging stalled job orders, and alerting when a placement's guarantee period is about to lapse.
Because every agency's desk, fee model and compliance rules differ, this is a build-to-order engagement, not a one-click install. We start from this proven blueprint, scope your exact stages, rate cards, fee structures and document requirements on a short call, then build, test and hand over a module tuned to how your agency actually works. Typical delivery is 2 to 4 weeks from confirmed scope, targeting your Odoo version (17.0, 18.0 or 19.0) on Community or Enterprise. You receive the full source, a staging UAT, training, and a post-go-live support window — you own the code and the Git repository at the end.
Runs multiple desks and needs a single system where candidate pipelines, client job orders and placement revenue live together — with margin and fill-rate visible without chasing spreadsheets.
Places workers abroad and must track visa, medical, embassy and deployment stages plus expiring documents per candidate, with compliance-safe records and audit trails.
Wants placement fees and ongoing margins invoiced automatically against the right client and contract in Odoo Accounting, and clean recruiter-commission statements at period end.
Manages a team's pipeline day to day and needs record-rule-scoped views, KPI dashboards and stalled-job-order alerts to keep time-to-fill down.
在 ecosire.com 上购买许可证并从您的帐户仪表板下载 Recruitment & Manpower Agency Management 模块 ZIP。
将 ZIP 解压到服务器上的 Odoo 自定义插件文件夹中(或通过“应用程序”>“从 Odoo.sh / runbot 上的文件安装”上传)。
激活开发者模式,打开应用程序,单击更新应用程序列表,搜索 Recruitment & Manpower Agency Management,然后按安装。
打开新菜单,粘贴您的 ECOSIRE 许可证密钥,连接任何外部凭据(Shopify、Amazon、Stripe 等),然后保存。
运行内置连接测试,同步前 10 条记录,并安排定期 cron。如果出现任何问题,请联系支持人员。
| 标准 | 伊科西尔 | 定制建造 | 竞争对手 | 奥杜本机 |
|---|---|---|---|---|
| Client job orders & placements | First-class job-order and placement models with fee/margin | Whatever you spec and pay to build | Often candidate-only, weak on client side | |
| Candidate as reusable talent pool | Persistent candidate DB, placed many times over a career | Possible but build-dependent | Usually yes | |
| Placement-fee / margin billing | Auto-generates client invoice in Odoo Accounting | Must be designed and integrated | Rarely wired into accounting | |
| Overseas manpower (visa/medical/deployment) | Modeled as stages + document expiry tracking | Buildable at cost | Seldom covered | |
| Fit to your agency's process | Scoped and tailored before build | Fully bespoke | Fixed to vendor's assumptions | |
| Delivery time | 2-4 weeks from confirmed scope | Months, spec-dependent | Instant download, then heavy config | |
| Source code & ownership | Full source + Git repo handover | You own what you paid for | Often obfuscated or license-locked | |
| Support & upgrades | Post-go-live window + optional retainer | Depends on the developer | Vendor support tiers, variable |
This is build-to-order. After a short scoping call to confirm your stages, fee models, rate cards and document requirements, typical delivery is 2 to 4 weeks from confirmed scope. Larger multi-branch or overseas-compliance builds can run longer; we give you a firm timeline once scope is fixed.
Native Recruitment is for a company hiring its own employees — one vacancy, one applicant funnel, no paying client and no placement fee. This module adds first-class models for candidates as a reusable talent pool, client job orders, a placement record that carries the fee/margin, and billing wired into Accounting. It is an agency system, not an internal-HR one.
We build for Odoo 17.0, 18.0 or 19.0 on either Community or Enterprise. We target your exact version so the module upgrades cleanly. If you are on Community, everything here works without Enterprise-only apps; if you are on Enterprise, we integrate with the apps you already run.
Every engagement includes a post-go-live support window for defect fixes and configuration tweaks. Because you receive the full source and Git repository, you can also extend it in-house or engage us for a version-upgrade or enhancement retainer later — you are never locked in.
Yes. All models are exposed over Odoo's XML-RPC / JSON-RPC API, so candidates and job orders can be created programmatically from a career site, a job-board feed, or a messaging bot. We scope the specific integrations you need during the build.
Yes. Visa, medical, embassy and deployment steps are modeled as pipeline stages with per-stage document checklists, and the candidate document vault tracks expiries (passport, visa, certifications) with automated reminders before they lapse.
Yes. You receive the complete module source and a Git repository with full history at handover. There is no per-seat license lock-in on the module itself — it runs on your Odoo instance and you can maintain or extend it however you choose.
A staffing-agency ERP built on Odoo that runs candidate pipelines, client job orders, placement contracts and placement-fee billing end to end. ECOSIRE scopes, builds, installs and supports it for your agency — it is not an off-the-shelf download.