119 lines
3.7 KiB
Markdown
119 lines
3.7 KiB
Markdown
# Tradify Importer Readiness
|
|
|
|
This assessment reviews the Tradify Importer for first-customer onboarding. It is based on `routes/tradifyImport.js`, route documentation, migrations, and current project state.
|
|
|
|
## Current Capability
|
|
|
|
The importer is mapped under `/settings/tradify-import` with backend routes under `/api/tradify-import`.
|
|
|
|
Current documented routes:
|
|
|
|
- `POST /api/tradify-import/upload` - upload CSV, parse, preview
|
|
- `GET /api/tradify-import/sessions` - list recent sessions
|
|
- `GET /api/tradify-import/sessions/:id` - session detail
|
|
- `GET /api/tradify-import/sessions/:id/logs` - import logs
|
|
- `POST /api/tradify-import/sessions/:id/confirm` - execute import
|
|
- `POST /api/tradify-import/sessions/:id/rollback` - rollback import
|
|
|
|
Migrations:
|
|
|
|
- `20260604_tradify_import.sql`
|
|
- `20260605_tradify_project_links.sql`
|
|
- `20260605_tradify_import_progress.sql`
|
|
|
|
## Imports Currently Expected
|
|
|
|
Based on project state, the importer handles Tradify CSV import into:
|
|
|
|
- customers
|
|
- jobs
|
|
- quotes
|
|
- invoices
|
|
- projects / project links
|
|
- import session logs and rollback metadata
|
|
|
|
## Safety Features
|
|
|
|
| Feature | Status |
|
|
|---|---|
|
|
| Upload and parse before writing | Present |
|
|
| Preview before confirm | Present |
|
|
| Session history | Present |
|
|
| Logs per session | Present |
|
|
| Confirm step | Present |
|
|
| Rollback route | Present |
|
|
| Project linking migration | Present |
|
|
| Tenant write isolation proof | Needs test |
|
|
| Customer-facing instructions | Missing |
|
|
| Sample CSV templates | Missing |
|
|
|
|
## What Would Confuse a Non-Technical Customer
|
|
|
|
- Which Tradify export screens to use.
|
|
- Whether to export customers, jobs, quotes, and invoices separately.
|
|
- Whether closed/archived jobs should be imported.
|
|
- How duplicate customer emails are handled.
|
|
- What happens if an import is wrong.
|
|
- Whether quote/invoice numbers will change.
|
|
- Whether attachments come across.
|
|
- Whether imported data immediately syncs to Xero.
|
|
|
|
## Recommended Stage 1 Approach
|
|
|
|
Use the importer as a BoundHQ-assisted onboarding tool, not self-serve.
|
|
|
|
1. Customer exports files.
|
|
2. BoundHQ reviews column headings.
|
|
3. BoundHQ imports into a throwaway/test tenant first.
|
|
4. Customer approves preview.
|
|
5. BoundHQ imports into real tenant.
|
|
6. BoundHQ validates customer/job/quote/invoice counts.
|
|
7. BoundHQ keeps rollback available until customer signs off.
|
|
|
|
## Draft Customer-Facing Guide
|
|
|
|
### Before You Start
|
|
|
|
Do this when you have 20-30 minutes and no one is actively editing Tradify records. The import will not change Tradify. BoundHQ will preview the data before anything is committed.
|
|
|
|
### Export From Tradify
|
|
|
|
1. Open Tradify.
|
|
2. Export your Customers list to CSV.
|
|
3. Export your Jobs list to CSV.
|
|
4. Export your Quotes list to CSV.
|
|
5. Export your Invoices list to CSV.
|
|
6. Do not edit the column names.
|
|
7. Send the CSV files to BoundHQ or upload them during onboarding.
|
|
|
|
### What BoundHQ Will Check
|
|
|
|
- Number of customers, jobs, quotes, and invoices.
|
|
- Duplicate customer names or emails.
|
|
- Closed/archived jobs.
|
|
- Missing customer names.
|
|
- Imported quote and invoice numbers.
|
|
- Whether jobs can be linked to projects.
|
|
|
|
### What Does Not Come Across Automatically
|
|
|
|
- Tradify attachments unless specifically exported and supplied.
|
|
- Live Xero connection history.
|
|
- Tradify automations or reminders.
|
|
- Any custom fields that are not in the exported CSV.
|
|
|
|
### After Import
|
|
|
|
BoundHQ will show you:
|
|
|
|
- Customer count.
|
|
- Job count.
|
|
- Quote count.
|
|
- Invoice count.
|
|
- Any rows skipped or needing review.
|
|
- Whether rollback is still available.
|
|
|
|
## Readiness Verdict
|
|
|
|
The importer is promising for Stage 1.5 and first-customer DIFM onboarding. It is not ready as a non-technical self-serve flow until export instructions, supported CSV formats, duplicate handling explanation, and tenant isolation tests are documented and verified.
|