How to Plan a Financial System Implementation
Why Finance System Projects Go Over Time and Over Budget
ERP and financial system implementations are among the most consistently over-budget projects in enterprise IT. The reasons are the same across almost every failed implementation:
Scope creep during configuration — the team discovers the system can do something and adds it to the requirements mid-project. Data migration complexity underestimated — "we'll just export to CSV" collides with 10 years of inconsistent data and no field mapping documentation. Training treated as an afterthought — the system launches and nobody knows how to use it.
The antidote is a rigorous phase-gated project plan that makes scope decisions early, front-loads data migration planning, and treats training as a full phase. Here's how to build it.
Phase 1: Discovery and Vendor Selection (Months 1–2)
Before selecting a system, document what you actually need.
Document current state:
- Map all existing finance processes: procure-to-pay, order-to-cash, financial close, budgeting, reporting
- Identify integrations: payroll, CRM, banking, HR, inventory, expense management
- Document current system limitations — what can't you do that's costing you time or accuracy?
Define requirements:
- Functional requirements by process area
- Technical requirements: cloud vs. on-premise, single sign-on, API capability
- Integration requirements: which systems must connect, in which direction, in near-real-time or batch
- Reporting requirements: out-of-box vs. custom, self-service vs. IT-dependent
Evaluate vendors:
- Issue RFP to shortlisted vendors (typically 3–5)
- Evaluate demos against your documented requirements
- Check references: call 5+ reference customers of similar size and industry
- Evaluate total cost of ownership: license, implementation, ongoing support
Common choices by company stage:
- Sub-$50M revenue: QuickBooks Enterprise, Xero, FreshBooks
- $50M–$500M: NetSuite, Sage Intacct, Acumatica
- $500M+: SAP S/4HANA, Oracle Cloud ERP, Microsoft Dynamics 365
Phase 2: Project Kickoff and Planning (Month 3)
Before configuration begins, establish the governance structure that will run the project.
Tasks:
- Identify project team: executive sponsor (CFO), project manager, functional leads by area, IT lead, vendor implementation lead
- Agree on implementation methodology: waterfall (phase-gated) vs. agile (sprint-based)
- Define scope: which modules in scope for Phase 1, which deferred to Phase 2
- Set go-live date and work backward: if go-live is Month 9, configuration must complete by Month 6, testing by Month 8
- Establish change control process: any scope change requires CFO approval and timeline impact assessment
- Agree on data migration scope: historical transactions (how many years?), open balances, vendor/customer master
Phase 3: System Configuration (Months 3–6)
Configuration is where the system is set up to match your business processes. This is the longest phase and the most prone to scope creep.
Configuration workstreams:
- Chart of accounts and segment structure: company, department, location, project — define this first, everything else builds on it
- Business unit and entity structure: legal entities, reporting hierarchies, consolidation rules
- Workflow configuration: approval routing for POs, invoices, journal entries, expense reports
- Revenue management: revenue recognition rules, deferred revenue setup
- Integration build: payroll (ADP, Paylocity), banking (Plaid, direct bank feeds), CRM (Salesforce, HubSpot), expense (Concur, Expensify)
- Report and dashboard configuration: P&L by department, cash flow, balance sheet, custom management reports
Configuration principle: build to your documented requirements. When a configuration option exists that wasn't in scope, evaluate against your change control process — don't add it because it's convenient.
Phase 4: Data Migration (Months 5–7)
Data migration runs parallel to configuration and is consistently underestimated.
Tasks:
- Extract: pull data from legacy systems — vendor master, customer master, chart of accounts, open AR, open AP, fixed assets, historical transactions
- Map fields: document how each field in the legacy system maps to the new system (the field mapping document is the most important data migration artifact)
- Cleanse: identify and fix data quality issues before migration — duplicate vendors, inconsistent naming, missing required fields
- Transform: convert data formats to meet new system requirements
- Trial migration: migrate to the test environment, reconcile record counts and balances against legacy
- Fix and repeat: resolve errors found in trial migration, run again until clean
- Final migration: migrate to production as part of cutover
Historical data scope decision: more years of history = longer migration. A practical default is 2 years of transaction history plus all open items (open AR, open AP, open POs). Everything older can be archived in the legacy system or a data warehouse.
Phase 5: Testing (Months 6–8)
Test thoroughly before users touch the production system.
Unit testing: test each module individually — does AP process invoices correctly? Does the GL post journal entries accurately?
Integration testing: test end-to-end processes — does a purchase order flow through approval, receipt, invoice match, and GL posting correctly?
User acceptance testing (UAT): the finance team tests the system using real business scenarios. UAT is not optional — it's the last gate before go-live. Run it with the people who will use the system daily.
Regression testing: after any bug fix, retest all related functionality to confirm the fix didn't break something else.
Parallel processing: run transactions in both old and new systems simultaneously and reconcile results. This is the ultimate confidence test.
Phase 6: Training and Change Management (Months 7–9)
System quality doesn't matter if users revert to spreadsheets. Training is a project phase, not a meeting.
Tasks:
- Develop training materials: process documentation, system walkthrough guides, quick reference cards
- Train super users (power users) first — they become internal support resources
- Conduct role-based training: AP processors get AP training, budget managers get reporting training
- Allow hands-on practice in a training environment (not production)
- Document standard operating procedures (SOPs) in the new system context
Phase 7: Go-Live and Stabilization (Month 9–10)
Cutover weekend tasks:
- Freeze transactions in legacy system at close of business Friday
- Migrate final open balances and open items
- Validate opening balances in new system
- Confirm integrations are active
- Open for transactions Monday morning
Post-go-live:
- Hypercare support: vendor team on-site or available daily for first 2–3 weeks
- Issue log: track and resolve problems in priority order
- Parallel processing period: continue reconciling new system to legacy for first close
Build your full implementation timeline in gantt-chart.io with workstreams for configuration, data migration, testing, and training running in parallel where possible. The visual timeline makes phase overlaps and dependencies explicit — essential for a project where six workstreams are running simultaneously.