docs: nexa systems CoA + accounting setup design spec

Comprehensive chart-of-accounts redesign for odoo-nexa nexamain DB:
hybrid approach over l10n_ca, three analytic plans (Project/Department/SR&ED
Tag), fiscal positions for auto tax handling, cleanup plan for the
~370 unused accounts and 49 messy taxes, automation hooks via product
categories and bank reconciliation rules.

Goals: CRA compliance, SR&ED claim infrastructure, zero-rated export
handling, one-click invoicing.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
gsinghpal
2026-05-12 13:08:40 -04:00
parent fd9d4e775b
commit 6e67fc5ce3

View File

@@ -0,0 +1,517 @@
# 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.
**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: 511100511160 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 & Related Party (1xxxxx + 2xxxxx + 3xxxxx)
```
Due From — Assets
115100 Due From Shareholder — Gurpreet
115200 Due From Related Party — Westin Healthcare
115900 Due From Related Parties — Other
Due To — Liabilities
221100 Due To Shareholder — Gurpreet (short-term)
221200 Shareholder Loan — Gurpreet (long-term)
222100 Due To Related Party — Westin Healthcare
222900 Due To Related Parties — Other
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)
```
**Compliance flags**:
- Subsection 15(2): shareholder loans >1 year past fiscal year-end → taxable to shareholder.
- Related-party transactions must be at arm's length pricing (transfer-pricing rules).
- T2 Schedule 50 lists all >10% shareholders.
## 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 ~$515k/year in recovered HST.
## 12. Cleanup Plan
### Phase 1 — Archive (~370 accounts)
- Every l10n_ca account NOT in the keep-list (built from Sections 49).
- 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 | 222100 Due To Related Party — Westin Healthcare |
| 1590 Transferred to Divine | If shareholder: 221xxx Due To Shareholder — Divine; if related party: 222xxx (requires Gurpreet to confirm relationship before cleanup) |
| 1600 Transferred to Manpreet | If shareholder: 221xxx Due To Shareholder — Manpreet; if related party: 222xxx (requires Gurpreet to confirm relationship before cleanup) |
| 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 49.
### 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, 12 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 |
|---|---|---|
| SR&ED ITC | Analytic SR&ED tag + T661 filing | $30k$100k (refundable, depends on dev spend) |
| Zero-rated exports | Fiscal position for US/international | $515k recovered HST on inputs |
| Small Business Deduction (SBD) | Federal 9% on first $500k taxable income | ~$30k/yr if hitting threshold |
| CCA Class 50 + AccII | 82.5% Y1 deduction on computers/servers | Time-value, but front-loads deductions |
| Quick Method GST/HST | If <$400k sales, simpler method | $5002k/yr cash if eligible |
| OIDMTC (Ontario Interactive Digital Media) | If building interactive media products | 3540% of eligible labour |
## 16. Risks & Open Questions
1. **The "Transferred to Divine/Manpreet" accounts** — relationship unconfirmed. Need user input before final mapping.
2. **Westin Healthcare relationship** — common-ownership? Same shareholder? Drives transfer-pricing compliance.
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.
6. **Specified employee SR&ED math** — Gurpreet's salary cap is 75%, no bonus inclusion. Accountant must apply at T661 time.
## 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
- [ ] 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)
- [ ] Bank consolidation complete; ≤5 active bank journals