# Nexa Systems Inc — Chart of Accounts & Accounting Setup Design **Date**: 2026-05-12 **Target**: odoo-nexa production instance, database `nexamain` **Status**: Design — pending implementation plan ## 1. Context Nexa Systems Inc is a Canadian CCPC providing IT services: custom software development, custom ERP, business apps, hosting, custom websites, and custom web apps. Operations are Canada-wide with planned global expansion. Workforce: solo founder today (Gurpreet, Canadian), hiring plan favours Canadian T4/T4A with occasional India contractors for burst capacity. Nexa will pursue SR&ED tax credits. **Current state (as of 2026-05-12)**: - Odoo 19 Enterprise, l10n_ca localization loaded - 426 GL accounts (most unused — generic Canadian template bloat) - 49 active taxes with duplicates - 14 journals incl. 7 bank accounts (overprovisioned) - 776 journal entries, 125 invoices, data 2020-01-01 to 2026-05-04 - **Historical Odoo data is NOT authoritative** — accountant has filed externally on Excel-based records. Past will be reconciled later. - All prior years filed with CRA. Fiscal year-end Dec 31. **CRA registration & filing cadence**: - **Business Number / HST account**: `741224877` (currently stored as 9-digit BN root only on company record; needs to be updated to full 15-char format `741224877 RT0001` for Odoo's Canadian tax reports to validate cleanly). - **GST/HST filing**: annual. Return due **3 months after fiscal year-end** (March 31). - **T2 corporate income tax filing**: annual. Return due **6 months after fiscal year-end** (June 30). Balance owing due 3 months after year-end (March 31) for CCPCs eligible for SBD; 2 months otherwise. - **HST instalments**: annual filers must remit quarterly instalments if their net tax for the prior year was ≥ $3,000. Track via account 118200 GST/HST Instalments Paid. - **T2 instalments**: monthly or quarterly instalments required if Part I tax owing in prior year ≥ $3,000. **Goals**: 1. **CRA compliance** — clean tax handling, T2 Schedule 125 alignment, audit-ready 2. **Tax savings** — SR&ED claim infrastructure from day 1, zero-rated export handling, CCA structure 3. **Automation** — fiscal positions, default accounts, bank feeds, subscription billing 4. **Ease of use** — invoicing is one-click after customer/product selection **Scope**: Chart of accounts structure + tax/fiscal-position setup + analytic plans + automation hooks. **Out of scope**: bank feed onboarding (separate sub-project), CCA custom module (defer until volume warrants), historical data reconciliation (separate sub-project when accountant records arrive). ## 2. Approach **Approach #2 — Hybrid**: keep l10n_ca's 6-digit code scheme (Canadian accountants recognize it), aggressively curate (~370 unused accounts archived, ~20 renamed, ~70 added), supplement with three analytic plans for finer reporting without GL proliferation. **Rejected alternatives**: - *Surgical* — keep all 426 accounts unchanged. Rejected: bookkeeping burden, no IT-services shape. - *Clean slate (custom 4-digit)* — toss l10n_ca. Rejected: accountants would have to learn it; loses pre-mapped CRA tax structure. ## 3. Code Skeleton ``` 1xxxxx ASSETS 111xxx Cash & cash equivalents 112xxx Accounts receivable 113xxx Prepaid expenses 114xxx Other current assets 115xxx Due from shareholder / related parties 118xxx Tax assets (HST ITC, instalments) 151xxx Capital assets — cost 154xxx Accumulated depreciation (contra) 2xxxxx LIABILITIES 211xxx Accounts payable 213xxx HST/GST/QST collected 214xxx Net tax payable 215xxx Source deductions payable 216xxx Corporate income tax payable 221xxx Due to shareholder 222xxx Due to related parties 251xxx Long-term debt 3xxxxx EQUITY 311xxx Share capital + contributed surplus 321xxx Retained earnings + dividends 4xxxxx REVENUE (by service line — jurisdiction handled by tax codes, not by account) 411xxx Recurring revenue (SaaS, hosting, support) 412xxx Project revenue (custom dev, web app, website, ERP) 413xxx Services (consulting, training, support hourly) 414xxx Reseller revenue (third-party software/hardware) 419xxx Sales adjustments (discounts, returns, bad debt recovery) 5xxxxx DIRECT COSTS (COGS) 511xxx Infrastructure & hosting costs 512xxx Project direct costs (subcontractors, project software, project travel) 513xxx Cost of resold goods 519xxx COGS adjustments 6xxxxx OPERATING EXPENSES 611xxx Personnel — internal staff (T4) 612xxx Personnel — contract (T4A non-project) 621xxx Office & facilities 631xxx Technology — operating (internal SaaS subs) 641xxx Marketing & sales 651xxx Professional fees 661xxx Insurance 671xxx Travel & entertainment 681xxx Training & development 691xxx Banking & finance charges 699xxx Other (bad debt, donations, fines, FX losses, depreciation) 7xxxxx Other income (interest, FX gains) 8xxxxx Other expenses (rare; mostly absorbed in 691/699) ``` **Three analytic plans** (orthogonal tagging, applied per journal line): | Plan | Required On | Purpose | |---|---|---| | **Project** | revenue, COGS, project costs | Project P&L, customer profitability, WIP, billable-hour realization | | **Department** | payroll, OpEx | Departmental P&L, overhead allocation | | **SR&ED Tag** | labour, contractors, materials (R&D) | T661 SR&ED claim — eligibility classification | ## 4. Revenue Accounts (4xxxxx) ``` Recurring Revenue 411100 SaaS Subscription Revenue 411200 Hosting & Infrastructure Revenue 411300 Support & Maintenance Contracts 411400 Domain/SSL/Renewal Pass-through Revenue 411500 Setup / Onboarding Fees Project Revenue (one-time, milestone-billed) 412100 Custom Software Development 412200 Custom Web Application Development 412300 Custom Website Development 412400 ERP Implementation & Customization 412500 Mobile App Development ← reserved for future 412600 Business App / Integration Work Services (hourly, retainer) 413100 Consulting & Advisory 413200 Training & Workshops 413300 Technical Support — Per-incident / Hourly Reseller / Pass-through 414100 Third-party Software Resale (M365, Adobe) 414200 Hardware Resale Adjustments (contra-revenue) 419100 Sales Discounts 419200 Sales Returns & Refunds 419300 Bad Debt Recovery ``` **Design rule**: one revenue account per service line. Jurisdiction (ON/Atlantic/QC/export/etc.) tracked entirely through tax codes and fiscal positions, NOT duplicate accounts. ## 5. Direct Costs / COGS (5xxxxx) ``` Infrastructure & Hosting 511100 Cloud Infrastructure (AWS, Hetzner, OVH, DigitalOcean, Linode) 511110 CDN & Edge Services (Cloudflare, Fastly) 511120 Backup & Storage Services 511130 Database & Backend Services (Supabase, hosted Postgres, Redis) 511140 Monitoring & Observability (customer-facing only) 511150 SSL Certificates & Domains (wholesale for resale) 511160 DNS & Email Hosting (wholesale) Third-party APIs & Per-transaction Costs 511200 Third-party API Costs (Twilio, SendGrid, OpenAI) 511210 Per-customer Licensing & Royalties Note: 511100–511160 are shared between SaaS revenue (411100) and Hosting revenue (411200). Allocation to specific revenue line happens via the Project analytic plan, not separate accounts. Project Direct Costs 512100 Subcontracted Labour — Canadian (T4A) ← SR&ED-eligible 512110 Subcontracted Labour — Foreign ← NOT SR&ED-eligible 512200 Project-specific Software & Licenses 512300 Project Travel & Onsite (rebilled) 512400 Project Hardware (passed through) Resold Goods & Services 513100 Cost of Software Resold 513200 Cost of Hardware Resold Adjustments 519100 COGS Adjustments / Write-offs ``` **Design choices**: - **Salaries in OpEx, not COGS** — keeps SR&ED tracking clean; allocation to projects via Project analytic plan. - **Stripe/merchant fees in OpEx (691200)** — re-class to COGS later if SaaS revenue dominates. - **Canadian vs Foreign subcontractor split** — critical for SR&ED (80% × 35% = 28% credit on CA arm's length; 0% on foreign). ## 6. Operating Expenses (6xxxxx) ``` Personnel — Internal Staff (T4) 611100 Salaries & Wages — Development ← SR&ED-eligible base 611200 Salaries & Wages — Sales & Marketing 611300 Salaries & Wages — Admin & Operations 611400 Salary — Shareholder/Officer (Gurpreet) ← 75% SR&ED cap (specified employee) 611500 Employer CPP / QPP Contributions 611600 Employer EI Premiums 611700 Employer Health Tax (EHT/QHST) 611800 WCB / WSIB Premiums 611900 Employee Benefits (health, dental, group) 611950 Bonuses & Incentives 611960 Vacation Pay Accrual Personnel — Contract (non-project) 612100 Contract Labour — Canadian (admin/marketing/freelance) 612200 Contract Labour — Foreign Office & Facilities 621100 Rent — Commercial Office 621200 Home Office — Business Portion ← own account; allocated % 621300 Utilities — Commercial 621400 Internet & Phone — Business 621500 Office Supplies & Consumables 621600 Cleaning & Maintenance 621700 Office Snacks & Refreshments Technology — Operating 631100 Software — Productivity (M365, Slack, Notion, Linear, GitHub) 631200 Software — Development Tools (Cursor, Figma, IDEs) 631300 Software — Internal Infrastructure 631400 Software — Security & IT 631500 Software — Sales & Marketing Marketing & Sales 641100 Advertising — Digital Ads 641200 Advertising — Content / SEO 641300 Trade Shows & Conferences 641400 Promotional Items / Branded Swag 641500 Website — Own (nexasystems.ca) Professional Fees 651100 Legal Fees — General 651200 Accounting & Bookkeeping 651300 Tax Preparation (T2, T1, GST/HST) 651400 Business Consulting Insurance 661100 Commercial General Liability 661200 Professional Liability / E&O 661300 Cyber Liability 661400 Property Insurance 661500 Directors & Officers Insurance Travel & Entertainment 671100 Travel — Flights, Hotels, Ground Transport 671200 Meals & Entertainment — 50% Deductible ← own account; 50% adjustment at year-end 671300 Vehicle — Operating 671400 Mileage Reimbursement — Personal Vehicle Training & Development 681100 Conferences & Seminars 681200 Courses & Certifications 681300 Books & Publications 681400 Professional Memberships & Dues Banking & Finance 691100 Bank Service Charges 691200 Merchant Processing Fees (Stripe, PayPal, Square) 691300 Wire Transfer & FX Fees 691400 Interest Expense — Bank Loans / LOC 691500 Interest Expense — Credit Cards 691600 Late Payment Penalties — Non-deductible Other 699100 Bad Debt Expense 699200 Donations & Sponsorships 699300 Penalties & Fines — Non-deductible 699400 Realized FX Losses 699500 Depreciation / CCA Expense ``` **Notable design decisions**: - Salaries split by function (dev/sales/admin) — so SR&ED proxy applies cleanly to dev only. - Owner/Shareholder salary isolated (611400) — for T2 Schedule 11 (Compensation of Officers) and CRA reasonableness defence. - Non-deductible items isolated (691600, 699300) — prevents accidental deduction. - Meals & Entertainment own account (671200) — accountant applies the 50% adjustment cleanly. - Home office own account (621200) — business-use % applied to the whole account. ## 7. Capital Assets & CCA (1xxxxx + asset module) ``` Capital Assets — Cost 151100 Computer Hardware & Equipment (CCA Class 50, 55% DB) 151200 Office Furniture & Equipment (CCA Class 8, 20% DB) 151300 Vehicles (CCA Class 10 / 10.1) 151400 Leasehold Improvements (CCA Class 13, SL) 151500 Acquired Software/Intangibles (CCA Class 14.1, 5% DB) 151600 Tools & Small Equipment <$500 (CCA Class 12, 100% Y1) Accumulated Depreciation (contra) 154100 Acc. Dep — Computer Hardware 154200 Acc. Dep — Office Furniture 154300 Acc. Dep — Vehicles 154400 Acc. Dep — Leasehold Improvements 154500 Acc. Dep — Acquired Software ``` **Asset model approach**: book straight-line depreciation in Odoo for financial reporting (clean monthly journal); maintain CCA schedule separately for T2 filing. CCA rates: Class 50 effective 82.5% Y1 (with AccII through 2027); Class 14.1 software 100% Y1; Class 12 small tools 100% Y1. ## 8. Tax Accounts (1xxxxx + 2xxxxx) ``` Tax Assets 118100 HST/GST Input Tax Credit (ITC) Receivable 118200 HST/GST Instalments Paid 118300 QST Input Tax Refund Receivable Tax Liabilities 213100 HST/GST Collected on Sales ← single bucket; tax report breaks down by code 213500 QST Collected 214100 Net HST/GST Payable 215100 Source Deductions Payable — Federal Tax 215200 Source Deductions Payable — CPP 215300 Source Deductions Payable — EI 216100 Corporate Income Tax — Federal Payable 216200 Corporate Income Tax — Provincial Payable 216300 Corporate Tax Instalments Paid (contra) ``` ## 9. Shareholder, Associated Corporations & Equity **Associated corporations** (Gurpreet >25% owner of each → ITA s.256 associated group): - Nexa Systems Inc (this company) - Westin Healthcare Inc - Divine Mobility Inc **Treatment**: Westin and Divine are **regular Customers and Vendors of Nexa**, NOT slush accounts. Their transactions flow through normal AR/AP. They get partner records tagged `Related Party — Associated Corporation` for disclosure tracking. The "Due To/From Related Party" GL buckets exist only for true intercompany loans (cash moved between the corps' bank accounts without an invoice). ``` Due From — Assets 115100 Due From Shareholder — Gurpreet 115900 Due From Associated Corporations (intercompany loans only — NOT customer AR) Due To — Liabilities 221100 Due To Shareholder — Gurpreet (short-term, <1 year) 221200 Shareholder Loan — Gurpreet (long-term, with commercial terms) 222900 Due To Associated Corporations (intercompany loans only — NOT vendor AP) Equity 311100 Share Capital — Common Shares 311200 Share Capital — Preferred Shares (placeholder) 311300 Contributed Surplus 321100 Retained Earnings — Current Year 321200 Retained Earnings — Prior Years 321900 Dividends Declared (contra) ``` **Partner setup** (under Contacts, not GL accounts): - `Westin Healthcare Inc` → partner with both Customer and Vendor flags; tagged `RP-Associated` - `Divine Mobility Inc` → partner with both Customer and Vendor flags; tagged `RP-Associated` - Nexa invoices Westin/Divine like any client → AR in 112xxx, revenue in 4xxxxx, HST 13% (Ontario) - Westin/Divine bill Nexa → AP in 211xxx, expense in 6xxxxx / COGS in 5xxxxx **Intercompany compliance flags (CRITICAL — drives major tax decisions)**: 1. **Small Business Deduction (SBD) sharing — ITA s.125(5.1)**: The $500k federal SBD limit is **shared across all associated corporations**. If Nexa, Westin, and Divine are each profitable, they collectively get **one** $500k pool, not three. The corps must file Schedule 23 (T2) allocating the limit. Strategy: allocate the limit to whichever corp has the highest taxable income each year. 2. **SR&ED expenditure limit shared — ITA s.127(10.2)**: The $3M expenditure limit for the 35% refundable ITC is also shared across the associated group. Same Schedule 23 mechanism. Nexa being the dev shop probably consumes most/all of it. 3. **Transfer pricing — ITA s.247**: Services between related corps must be priced at fair market value. Nexa invoicing Westin at $50/hr while billing arm's-length clients $150/hr will be scrutinized. Document the rate methodology. Penalty for non-compliance is 10% of the adjustment. 4. **Subsection 15(2) shareholder loans**: outstanding >1 year past FY end → taxable to Gurpreet personally. 5. **T2 Schedule 9** (Related and Associated Corporations) must be filed by Nexa listing Westin and Divine. 6. **GAAR risk**: aggressive intercompany pricing or loan arrangements designed primarily for tax benefit can be challenged under general anti-avoidance rules. ## 10. Analytic Plans ### 10.1 Project Plan - One analytic account per customer engagement - Naming: `PRJ-{YYYY}-{CUST}-{SHORTNAME}` (e.g., `PRJ-2026-WESTIN-ERP`) - Required on revenue, COGS, project costs - Linked to Odoo Project module for time tracking → automatic GL posting ### 10.2 Department Plan - `DEPT-DEV` — Development - `DEPT-SALES` — Sales & Marketing - `DEPT-ADMIN` — Admin & Operations - `DEPT-HOSTING` — Hosting Operations (optional future split) - Required on payroll, OpEx ### 10.3 SR&ED Tag Plan - `SRED-T4-DEV-SALARY` — T4 dev employees on R&D (full proxy 55%) - `SRED-SPECIFIED-EMPLOYEE` — Gurpreet/officers (75% basic salary cap) - `SRED-CONTRACTOR-CA-ARM-LENGTH` — Canadian arm's length (80% eligible) - `SRED-CONTRACTOR-CA-NON-ARM-LENGTH` — affiliated CA contractors - `SRED-MATERIALS-CONSUMED` — R&D materials - `SRED-OVERHEAD-PROXY-BASIS` — direct labour basis - `NOT-ELIGIBLE` — default **T661 generation at year-end**: filter analytic report on SR&ED tag → eligible salaries + 55% proxy + 80% contractor + materials = total qualified expenditures × 35% refundable ITC. ## 11. Tax Setup & Fiscal Positions **Consolidated active taxes** (~14, down from 49): | Tax | Rate | Sale / Purchase | Applies | |---|---|---|---| | HST 13% Ontario | 13% | Both | ON | | HST 15% Atlantic | 15% | Both | NB, NS, PE, NL | | GST 5% | 5% | Both | AB, MB, SK, BC, YT, NT, NU | | GST 5% + PST 7% BC | 12% group | Both | BC (goods, rare for services) | | GST 5% + PST 7% MB | 12% group | Both | MB | | GST 5% + PST 6% SK | 11% group | Both | SK | | GST 5% + QST 9.975% QC | 14.975% group | Both | QC | | Zero-rated Export | 0% | Sale | US, EU, ROW | | Tax Exempt | 0% | Sale | Cert-holders | **Fiscal Positions** (auto-applied based on customer billing address): | Position | Customer Location | Auto-Substitute Default Tax | |---|---|---| | CA — Ontario (default) | ON | HST 13% | | CA — Atlantic | NB/NS/PE/NL | HST 15% | | CA — Quebec | QC | GST 5% + QST 9.975% | | CA — BC | BC | GST 5% (PST per-product) | | CA — Prairies / Territories | AB/MB/SK/YT/NT/NU | GST 5% | | Export — US | United States | 0% Zero-rated | | Export — International | Outside CA/US | 0% Zero-rated | | Tax Exempt | Tagged customers | 0% | **Invoice flow**: customer → fiscal position auto-applies → product picks default tax → fiscal position substitutes → no manual tax decisions. **Export advantage**: zero-rated sales charge no HST but retain ITC claims on all related inputs. For a small shop with 30% US revenue, this is ~$5–15k/year in recovered HST. ## 12. Cleanup Plan ### Phase 1 — Archive (~370 accounts) - Every l10n_ca account NOT in the keep-list (built from Sections 4–9). - Constraint: Odoo blocks archiving accounts with postings. Archive zero-history only. - Accounts with history we no longer want: stop posting; they go to $0 going forward. ### Phase 2 — Rename (~20 accounts) | Old | New | |---|---| | 1400 Transferred to Gurpreet | 221100 Due To Shareholder — Gurpreet | | 1505 Sent to India | 612200 Contract Labour — Foreign | | 1580 Transferred to Westin | ARCHIVE — Westin is an associated corp, future transactions go through normal AR/AP via partner record `Westin Healthcare Inc` | | 1590 Transferred to Divine | ARCHIVE — Divine is an associated corp, future transactions go through normal AR/AP via partner record `Divine Mobility Inc` | | 1600 Transferred to Manpreet | ARCHIVE — Manpreet is an employee of another company, not a related party of Nexa; historical transactions to be re-classified by accountant during reconciliation | | 1500 Food & Entertainment | 671200 Meals & Entertainment — 50% Deductible | | 1501 Office Expenses | 621500 Office Supplies & Consumables | | 411000 Inside Sales | ARCHIVE (replaced by 412xxx) | | 412000 Harmonized Provinces Sales | ARCHIVE (jurisdiction = tax codes) | | 413000 Non-Harmonized Provinces Sales | ARCHIVE | | 414000 International Sales | ARCHIVE | | 12000 Abdul & Future Mobility | ARCHIVE (use partner subledger) | | 12001 MSI Account | ARCHIVE | | 110010 Bank Fee | 691100 Bank Service Charges | | 511100 Inside Purchases | ARCHIVE | ### Phase 3 — Add (~70 new accounts) All per Sections 4–9. ### Phase 4 — Bank Consolidation Current 8 bank journals (BMO, RBC, RBC VISA, Scotia ×3, Bank, Cash). Audit; archive inactive. Target: ≤5 active (primary operating, USD for future global, LOC, 1–2 credit cards). ### Phase 5 — Lock Prior Periods Set `fiscalyear_lock_date = 2025-12-31`. Blocks postings to closed periods. Forces all 2026 work into new structure. ## 13. Automation Hooks ### Product Categories with Default Accounts | Product Category | Default Income | Default COGS | Default Tax | |---|---|---|---| | Services / SaaS Subscription | 411100 | — | per fiscal position | | Services / Hosting | 411200 | — | per fiscal position | | Services / Support Contract | 411300 | — | per fiscal position | | Services / Custom Software Dev | 412100 | — | per fiscal position | | Services / Web App Dev | 412200 | — | per fiscal position | | Services / Website Dev | 412300 | — | per fiscal position | | Services / ERP Implementation | 412400 | — | per fiscal position | | Services / Consulting | 413100 | — | per fiscal position | | Services / Training | 413200 | — | per fiscal position | | Services / Setup Fee | 411500 | — | per fiscal position | | Resale / Software | 414100 | 513100 | per fiscal position | | Resale / Hardware | 414200 | 513200 | per fiscal position | ### Bank Reconciliation Rules | Pattern (description contains) | Auto-categorize To | Tax | |---|---|---| | `AMAZON WEB SERVICES`, `AWS` | 511100 Cloud Infrastructure | HST 13% ITC | | `HETZNER`, `OVH`, `DIGITALOCEAN`, `LINODE` | 511100 | 0% foreign | | `CLOUDFLARE`, `FASTLY` | 511110 CDN | mixed | | `GITHUB`, `JETBRAINS`, `CURSOR` | 631200 Software — Dev Tools | HST 13% ITC | | `MICROSOFT`, `SLACK`, `NOTION`, `LINEAR` | 631100 Software — Productivity | HST 13% ITC | | `STRIPE PAYOUT` | AR receipts journal | — | | `STRIPE FEE` | 691200 Merchant Processing | exempt | | `GOOGLE ADS`, `LINKEDIN ADS` | 641100 Advertising | HST 13% ITC | ### Bank Feeds (Plaid via Odoo Enterprise) Daily auto-import → bank reconciliation rules → ~70% of transactions auto-categorized. ### Subscription Module Already installed. Use for SaaS/Hosting/Support contracts: recurring invoices, Stripe auto-charge, MRR/ARR/churn dashboards. ### Default Journals - Customer Invoices → `INV` - Vendor Bills → `BILL` - Bank feeds → respective bank journals - HR Expenses → `EXP` (add if missing) - Misc → `MISC` - Exchange Difference → `EXCH` ## 14. Out-of-Scope (Future Sub-Projects) - **Historical reconciliation** — load accountant's Excel records into new structure (requires accountant docs). - **Custom CCA module** — only if asset count grows; until then, accountant maintains CCA schedule separately. - **Multi-currency setup** — add USD bank + currency-rate-live config when first US client signs. - **Payroll system** — when first T4 employee is hired; integrate with Wagepoint/Payworks/ADP or Odoo Payroll. - **Approval workflows** — purchase approval, expense approval limits. - **Inventory** — N/A unless reselling hardware regularly. ## 15. Tax-Saving Opportunities Enabled | Opportunity | Mechanism | Estimated Annual Value | Notes | |---|---|---|---| | SR&ED ITC | Analytic SR&ED tag + T661 filing | $30k–$100k (refundable) | **$3M expenditure limit SHARED across Nexa/Westin/Divine — allocate to Nexa via S23** | | Zero-rated exports | Fiscal position for US/international | $5–15k recovered HST on inputs | Per-company | | Small Business Deduction (SBD) | Federal 9% on first $500k taxable income | ~$30k/yr if hitting threshold | **$500k limit SHARED across associated group — allocate to highest-income corp via S23** | | CCA Class 50 + AccII | 82.5% Y1 deduction on computers/servers | Time-value, front-loads deductions | Per-company | | Quick Method GST/HST | If <$400k sales, simpler method | $500–2k/yr cash if eligible | **LIKELY UNAVAILABLE — Quick Method $400k threshold applies to associated-group totals; Nexa + Westin + Divine combined revenue probably exceeds limit. Re-verify with accountant.** | | OIDMTC (Ontario Interactive Digital Media) | If building interactive media products | 35–40% of eligible labour | Strict eligibility test; need to verify product fits | | Apprenticeship Job Creation TC | 10% of eligible apprentice wages, max $2k/yr per apprentice | Per apprentice hired | Activates when first apprentice T4 employee hired | | Intercompany cost recovery | Bill associated corps for shared services (back-office, hosting, IT) | Allocates expenses to highest-tax-rate corp | Requires arm's-length pricing documentation | ## 16. Risks & Open Questions 1. **Associated corporation tax planning** — Westin Healthcare Inc, Divine Mobility Inc, and Nexa Systems Inc share the $500k SBD limit and the $3M SR&ED expenditure limit. Yearly Schedule 23 allocation decision needs accountant input. Recommendation: allocate SR&ED limit primarily to Nexa (dev shop); allocate SBD to whichever corp has highest taxable income each year. 2. **Transfer pricing on intercompany services** — Nexa billing Westin/Divine must be at fair market value. Document hourly rate methodology and apply consistently across all clients. Penalty: 10% of any adjustment. 3. **Past data backposting** — once accountant records arrive, mapping old transactions into new structure requires care to avoid breaking the post-2025-12-31 lock. 4. **BC PST on software services** — BC PST exempts custom software developed for a specific customer; off-the-shelf software and certain SaaS subscriptions ARE taxable. For Nexa's mix (most work is custom dev = exempt; SaaS sold off-the-shelf to BC customers = taxable at 7%), each BC customer/product combo needs review. Default to "GST only" for custom dev; flag SaaS-to-BC for review at first sale. 5. **Quebec QST registration** — required if Nexa has QC customers and revenue >$30k. Confirm registration status. If not yet registered and you start taking QC clients, registration with Revenu Québec is separate from CRA. 8. **HST filing cadence review** — currently annual. Once revenue clears $1.5M (combined Nexa-only, not associated group), CRA may auto-move you to **quarterly** filing. Monitor and update filing cadence in tax report config when it happens. 6. **Specified employee SR&ED math** — Gurpreet's salary cap is 75%, no bonus inclusion. Accountant must apply at T661 time. 7. **Multi-company Odoo (future sub-project)** — Westin and Divine currently run on separate Odoo databases (odoo-westin, odoo-mobility). Future option: migrate all three into one multi-company nexamain database to enable auto-mirrored intercompany invoices (Nexa invoices Westin → auto-creates Bill in Westin's books). Major data-migration effort; only worth it once intercompany volume justifies the effort. ## 17. Acceptance Criteria - [ ] All 11 sections of CoA approved and present in odoo-nexa nexamain DB - [ ] ≥370 unused accounts archived - [ ] 14 active taxes (down from 49) - [ ] 8 fiscal positions configured with auto-detection - [ ] 3 analytic plans created (Project, Department, SR&ED Tag) with seed analytic accounts - [ ] Product categories created with default accounts - [ ] Bank reconciliation rules created - [ ] Fiscal year locked at 2025-12-31 - [ ] Company HST/BN number stored in full 15-char form (`741224877 RT0001`) - [ ] HST report config set to **annual filer**, fiscal-year-end Dec 31, deadline March 31 - [ ] Westin Healthcare Inc and Divine Mobility Inc partner records created with Customer + Vendor flags, tagged `RP-Associated` - [ ] Test invoice flows through correctly for: ON customer (HST 13%), US customer (Zero-rated), QC customer (GST+QST) - [ ] Test vendor bill creates correct ITC for: Canadian vendor (HST ITC), foreign vendor (no ITC) - [ ] Test intercompany invoice: Nexa → Westin generates proper AR + 13% HST collected (Westin is Ontario-based) - [ ] Bank consolidation complete; ≤5 active bank journals