A build-to-order Odoo module that lets respondents attach and upload files directly inside survey forms — with server-side validation, storage governance, and full backend visibility. ECOSIRE scopes, builds, installs, and supports it for your instance. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $249.00 USD; request a quote for a scoped proposal.
Manifiesto de la app
Diseñado en torno a tu flujo de trabajo
A build-to-order Odoo module that lets respondents attach and upload files directly inside survey forms — with server-side validation, storage governance, and full backend visibility. ECOSIRE scopes, builds, installs, and supports it for your instance.
Sin configuración por tu cuenta: una app funcional creada, instalada y con soporte de ECOSIRE.
Empieza con un precio único de desarrollo. Definimos el alcance contigo en el arranque.
ECOSIRE la crea, la configura y la instala en tu Odoo.
Sales en vivo en unas 2–4 semanas, con un periodo de soporte posterior al lanzamiento.
Odoo's native Survey app captures text, choices, ratings, and dates — but the moment a respondent needs to submit a document, the workflow breaks. Recruitment candidates cannot attach a CV, event registrants cannot upload proof of payment, quality audits cannot capture a photo of a defect, and vendor onboarding forms cannot collect a certificate. Teams end up emailing files separately, pasting shared-drive links into a text question, or maintaining a parallel form outside Odoo entirely. That fragmentation loses the connection between the answer and the file, and it leaves no clean record on the survey.user_input line where the rest of the response lives.
This is where Odoo core runs out of road: the survey.question model has no question type for binary attachments, and survey.user_input.line stores answers as char, text, numeric, date, or many2one references only — there is nothing to hold a file. We build a new question type — "File Upload" — that plugs into the existing survey engine rather than bolting a separate system alongside it. On the model side we extend survey.question with configuration fields (allowed extensions, maximum size in MB, single-vs-multiple files, required flag) and add an ir.attachment-backed store so each uploaded file is a first-class Odoo attachment linked to the corresponding survey.user_input.line. The public QWeb survey template gets an OWL-rendered upload widget so respondents on the website survey can attach files inline, and validation runs on both sides: client-side for immediate feedback and server-side in the submission controller (extension allowlist, per-file and total size caps, MIME sniffing) so nothing malicious or oversized ever reaches the filestore. Access is governed through ir.model.access.csv plus record rules so only authorized users can open a respondent's attachments from the backend, and the files surface directly on the survey result and participation views.
Because everything is anchored to the standard survey data model, the rest of Odoo keeps working: attachments flow into reporting, automated actions can fire when a file-bearing response arrives (for example, create an hr.applicant or a helpdesk.ticket and carry the attachment across), and the JSON-RPC/XML-RPC API can read the uploaded files programmatically for downstream integrations. The build targets Odoo 17.0, 18.0, and 19.0, works on both Community and Enterprise (Survey is a core app in both), and respects your instance's existing filestore and attachment-storage configuration — including object storage if you already offload attachments to S3-compatible buckets.
This is a made-to-order build, not an existing download. After a short scoping call we confirm exactly which survey types need uploads, the file-type and size policy, retention and access rules, and any automated action that should follow a submission — then we develop, test on a staging copy of your database, and install it on your instance. Typical delivery is 2-4 weeks from confirmed scope. Pricing starts from $249 (indicative, single-company base scope); multi-company deployment, tighter validation/virus-scanning requirements, object-storage integration, and automated post-submission workflows (auto-creating applicants, tickets, or documents from uploads) increase the quoted scope.
Run application or screening surveys where candidates must attach a CV, portfolio, or certification. They need the file bound to the response and, ideally, an automated action that spins up an `hr.applicant` with the attachment already in place.
Collect proof of payment, ID scans, or signed consent forms during event or webinar registration surveys, and need those documents retained against each registrant's submission rather than scattered across email.
Capture photos of defects, inspection sheets, or compliance evidence inside internal audit surveys, with size limits and access controls so sensitive files stay governed inside Odoo.
Own the instance and want a clean, upgrade-safe extension of the core Survey app — proper `ir.attachment` storage, `ir.model.access.csv`/record-rule security, and a git-handover repo — rather than a fragile one-off patch.
| Criterio | ECOSIRE | Construcción personalizada | Competidor | Odoo Nativo |
|---|---|---|---|---|
| Availability | Built to order for your instance in 2-4 weeks from confirmed scope | Depends entirely on in-house developer availability | Instant download, but generic and not tailored | |
| File storage model | First-class `ir.attachment` linked to the response line, filestore/object-storage aware | Varies by developer skill; risk of loose base64 blobs | Usually attachment-based but fixed to the vendor's design | |
| Validation & security | Server-side allowlist, size caps, MIME sniffing, `ir.model.access.csv` + record rules | Only as thorough as the person who wrote it | Basic extension/size checks, security rarely audited | |
| Fit to your surveys | Scoped to your exact survey types, policies, and workflows | Fully custom but you carry all specification risk | One-size-fits-all; you adapt to it | |
| Downstream automation | Optional automated actions create applicants/tickets/documents from uploads | Possible but must be built and tested from scratch | Rarely included; integration left to you | |
| Version & edition coverage | Built and tested for 17.0/18.0/19.0, Community or Enterprise | Whatever your team targets and maintains | Version support depends on the vendor's update cadence | |
| Ongoing support & upgrades | Post-go-live support window plus quoted migration re-builds | Internal team owns all maintenance | Vendor support quality and longevity vary | |
| Handover & ownership | Git repo, tagged release, technical docs, user guide, training | You own it, if it was documented | Encrypted/obfuscated code common; limited handover |
No. This is a build-to-order module. ECOSIRE scopes it with you, builds it against your exact Odoo version and edition, tests it on a staging copy of your database, then installs and supports it. There is no instant download — the deliverable is a module built for your instance.
Typical delivery is 2-4 weeks from confirmed scope. The timeline starts once we've agreed which surveys need uploads, the file-type and size policy, access rules, and any automated post-submission action. Tighter validation requirements or downstream integrations can extend that; we confirm the schedule in your fixed quote.
Pricing starts from $249 as an indicative single-company base scope. We hold a short scoping call, confirm exactly what you need, and then issue a fixed quote before any build begins. Drivers such as multi-company deployment, virus-scanning, object-storage integration, or automated workflows that create applicants/tickets from uploads increase the quoted scope.
We build for Odoo 17.0, 18.0, and 19.0, on both Community and Enterprise — the Survey app ships in both. We pin the `survey` dependency in `__manifest__.py` and tag a version-specific release so the module matches your instance exactly.
Every engagement includes a post-go-live support window for defect fixes and configuration tweaks. Beyond that, we offer ongoing support and version-migration builds when you upgrade Odoo — since it's a made-to-order module, upgrades are a re-build/re-test against the new version rather than an automatic marketplace update.
Files are stored as standard `ir.attachment` records linked to the survey response line, so they inherit your instance's filestore or object-storage backend. Access is governed by `ir.model.access.csv` and record rules, and the submission controller enforces an extension allowlist, per-file and total size caps, and MIME sniffing server-side so oversized or disallowed files never reach the filestore.
Yes. Because uploads live on the standard survey data model, we can wire an automated action or server action so a file-bearing submission creates a downstream record — for example an `hr.applicant`, a `helpdesk.ticket`, or a document — and carries the attachment across. That automation is a scoping option that we quote as part of your build.
A build-to-order Odoo module that lets respondents attach and upload files directly inside survey forms — with server-side validation, storage governance, and full backend visibility. ECOSIRE scopes, builds, installs, and supports it for your instance.