Build a CRM with CSV import
How to build a CRM with CSV import with AI
To build a CRM with CSV import, describe who it is for and what they do in it, and let Forge64 plan and generate the app. A workspace-isolated CRM (companies, contacts, deals) fed by CSV and Excel imports: saved column mappings, dry-run preview, per-row validation with stored rejections, de-duplication on normalised email, idempotent re-uploads, chunked transactions and whole-import undo; plus merge, privacy erasure that preserves history, a field-level audit trail, signed webhooks and safe CSV export. The core parts of a first version are workspaces and members, role matrix with owner visibility, append-only field-level audit trail, record versions and undo and mapped, previewed, validated import pipeline.
Last checked
What the first version needs
These are the parts a CRM with CSV import needs before it is useful. Each one is something the plan covers.
- Workspaces and members: Each workspace is isolated from every other in the database.
- Role matrix with owner visibility: Admin, manager, rep and readonly; reps see only records they own.
- Append-only field-level audit trail: Every create, update, merge, import and delete is recorded and can never be edited, even by admins.
- Record versions and undo: Keep the history of each contact so merges and imports can be inspected and undone.
- Mapped, previewed, validated import pipeline: Upload CSV or Excel, map columns, preview, validate row by row and apply in chunks.
- De-duplication and merge: Contacts are unique on normalised email; duplicates can be merged in one transaction.
- Privacy erasure preserving audit: Erase a person's data on request while keeping the audit history.
- Record search: Find companies, contacts and deals quickly.
- Signed outbound webhooks: Tell other systems when records change.
Parts you can add in the first version
- Tenant-defined custom fields: Each workspace defines its own fields.
The data it stores
Each table below becomes part of the Postgres database that belongs to your app.
- workspaces: import_row_limit caps rows per import.
- contacts: erased contacts keep the id and tombstone personal columns.
- companies: domain is normalised to lowercase.
- deals: amount in integer minor units.
- import_jobs: status: previewed|running|completed|failed|undone.
- import_rows: every rejected row is stored with its error.
- record_versions: snapshots power merge review and import undo.
- audit_log: insert-only; UPDATE and DELETE are refused by trigger.
- webhook_endpoints: signing secret shown once.
Pages and endpoints
| Route | Who can use it | What it does |
|---|---|---|
| /contacts | authed | contact list, search and merge. |
| /pipeline | authed | kanban pipeline of deals. |
| /imports | authed | upload, map columns, preview, run and undo imports. |
| /api/imports | authed | create an import, dry-run it, run it, undo it. |
| /api/contacts/merge | authed | merge duplicates in one transaction. |
| /api/contacts/[id]/erase | authed | privacy erasure preserving audit. |
| /api/exports/contacts | authed | CSV export with formula-injection protection. |
| /api/health | public | health endpoint. |
What to leave out of version one
- No live two-way sync with other CRMs in phase 1.
- No email sequences.
- No storing the original upload beyond the retention window.
How Forge64 builds it
Forge64 matches your description to one of 25 reference architectures, writes the plan and data model into the project, generates the app, and runs a quality gate over the code before you see it. Each app gets its own Postgres database and sign-in with no per-user fee. Hosting on Forge Cloud and Forge Payments are rolling out.
This is a reference design for the category, not a promise that every item is generated today. Built-ins such as background jobs, file uploads and search are rolling out; email sent from your app is coming soon, so anything here that needs it is something you add yourself for now.
FAQ
- What does a CRM with CSV import need first?
- Workspaces and members, role matrix with owner visibility, append-only field-level audit trail, record versions and undo, mapped, previewed, validated import pipeline and de-duplication and merge. The plan for a CRM with CSV import covers all of these before it generates code.
- What should I leave out of the first version of a CRM with CSV import?
- No live two-way sync with other CRMs in phase 1. No email sequences. No storing the original upload beyond the retention window.
- Which products define the CRM with CSV import category?
- Well-known examples include HubSpot, Attio, Pipedrive, Salesforce and Zoho CRM. Use them to decide which features your users expect, then describe your own version.
Build your app with Forge64
One prompt to a running app with auth, database, hosting and payments. Start free, no credit card required.
Start building for free