Chart of Accounts Design
Your Chart of Accounts is the backbone of financial reporting. A well-designed COA provides clear visibility into business performance while remaining flexible enough to accommodate growth.
Design Principles
Before diving into account numbers, establish guiding principles that will drive consistency across your chart of accounts.
| Principle | What It Means | Why It Matters |
|---|---|---|
| Simplicity | Fewer accounts, more segments | Easier maintenance; flexible reporting |
| Consistency | Same structure across all entities | Enables consolidation; comparable reports |
| Scalability | Room to grow without restructuring | Accommodates new products, locations, entities |
| Alignment | Matches external reporting requirements | Simplifies audits; regulatory compliance |
Account Numbering Strategy
A logical numbering scheme makes the COA intuitive and enables smart reporting. NetSuite supports alphanumeric account numbers up to 20 characters.
Common Numbering Patterns
| Range | Account Type | Examples |
|---|---|---|
| 1000-1999 | Assets | 1000 Cash, 1200 AR, 1500 Inventory |
| 2000-2999 | Liabilities | 2000 AP, 2500 Accrued Expenses |
| 3000-3999 | Equity | 3000 Common Stock, 3500 Retained Earnings |
| 4000-4999 | Revenue | 4000 Product Sales, 4500 Service Revenue |
| 5000-5999 | Cost of Goods Sold | 5000 Product COGS, 5500 Service Costs |
| 6000-6999 | Operating Expenses | 6000 Salaries, 6500 Rent |
| 7000-7999 | Other Income | 7000 Interest Income |
| 8000-8999 | Other Expense | 8000 Interest Expense |
Account Types vs. Account Categories
NetSuite distinguishes between Account Types (system-defined, controls behavior) and Account Categories (user-defined, reporting only).
Account Types
Account Type is mandatory and determines fundamental behavior:
- Bank: Cash and cash equivalents; bank reconciliation enabled
- Accounts Receivable: Controlled by system; linked to customers
- Other Current Asset: Short-term assets not fitting other categories
- Fixed Asset: Long-term tangible assets
- Accounts Payable: Controlled by system; linked to vendors
- Income: Revenue accounts
- Cost of Goods Sold: Direct costs of products/services sold
- Expense: Operating expenses
Multi-Subsidiary Considerations
For OneWorld implementations (multiple subsidiaries), COA design requires additional planning.
Shared vs. Non-Shared Accounts
- Shared accounts: Same account across all subsidiaries; simplifies consolidation
- Non-shared accounts: Subsidiary-specific accounts; for unique local requirements
Intercompany Accounts
OneWorld automatically creates intercompany accounts, but you'll need additional accounts for specific intercompany activities:
- Due to/from accounts: Track intercompany receivables and payables
- Intercompany revenue/expense: Transactions between entities
- Elimination accounts: For consolidation adjustments
Account Hierarchy
NetSuite allows parent-child account relationships, creating roll-up hierarchies for reporting.
Segmentation Strategy
Segments add dimensions to your financial data without multiplying your chart of accounts. NetSuite provides four standard segments plus the ability to create custom segments.
The Four Standard Segments
NetSuite includes four built-in classification segments, each with specific behaviors and use cases.
| Segment | Typical Use | Special Behaviors |
|---|---|---|
| Subsidiary | Legal entities | Drives intercompany, consolidation, multi-currency (OneWorld only) |
| Location | Physical or logical locations | Inventory tracking, nexus determination |
| Department | Organizational units | Can restrict user access by department |
| Class | Flexible classification | No special behaviors—pure analysis dimension |
Location Design
Location is the most versatile segment. It can represent physical places, regions, or logical groupings.
Common Location Structures
- Physical locations: Warehouses, stores, offices
- Geographic regions: North, South, East, West
- Logical divisions: E-commerce, Retail, Wholesale
Location Hierarchy
Locations support parent-child relationships. Design your hierarchy carefully:
- Top level: Regions or countries
- Second level: States or major markets
- Third level: Individual locations
Location Hierarchy Decision
Department Design
Department typically mirrors your organizational structure. It's the most natural segment for P&L responsibility.
Department Hierarchy Patterns
Department Structure
Department Restrictions
Departments can be used for access control. Users can be restricted to see only transactions and reports for their department(s). Consider this when designing hierarchy—too granular may create permission management overhead.
Class Design
Class is the most flexible segment—it has no built-in behavior, making it a blank canvas for whatever dimension you need.
Common Class Uses
- Product Line: Hardware, Software, Services
- Sales Channel: Direct, Partner, E-commerce
- Customer Segment: Enterprise, Mid-Market, SMB
- Project/Contract: For project-based businesses
- Campaign: For marketing expense tracking
Custom Segments
When the four standard segments aren't enough, NetSuite allows custom segments that behave just like the standard ones.
When to Create Custom Segments
- Nonprofits: Fund, Grant, Restriction
- Services: Project, Contract, Engagement
- Healthcare: Program, Service Line
- Construction: Job, Phase, Cost Code
Custom Segment Configuration
When creating a custom segment, you'll configure:
- Label: What users see (e.g., "Grant")
- Record Type: Where it appears (transactions, entities, items)
- Filtering: Whether it appears on filters in searches and reports
- Mandatory: Whether a value is required
Segment Strategy Decision Matrix
| If You Need To Track... | Use This Segment | Because... |
|---|---|---|
| Legal entities with separate financials | Subsidiary | Drives consolidation and intercompany |
| Where inventory is stored | Location | Inventory quantities tracked by location |
| Geographic regions (no inventory) | Location | Natural fit for geographic analysis |
| Organizational cost centers | Department | Designed for org structure |
| Product lines or business units | Class | Flexible, no special behavior |
| Sales channels | Class | Flexible, no special behavior |
| Grants or restricted funds | Custom Segment | Unique dimension not covered by standard |
| Projects (beyond SuiteProjects) | Custom Segment | Unique dimension not covered by standard |
Entity Strategy
Entities are the people and organizations you do business with. Smart entity design prevents duplicate records, enables relationship tracking, and supports sophisticated CRM capabilities.
Entity Types in NetSuite
NetSuite has distinct entity types with different capabilities and purposes.
| Entity Type | Purpose | Key Capabilities |
|---|---|---|
| Lead | Prospective customer (early stage) | Marketing campaigns, lead scoring, nurturing |
| Prospect | Qualified lead (sales engaged) | Opportunities, quotes, sales pipeline |
| Customer | Paying customer | Orders, invoices, payments, support cases |
| Vendor | Supplier of goods/services | Purchase orders, bills, payments |
| Employee | Internal staff | Time tracking, expenses, payroll, approvals |
| Partner | Resellers, referral partners | Partner commissions, portal access |
| Contact | Individuals at companies | Associated with other entities, email, roles |
Customer Hierarchy Design
NetSuite supports parent-child customer relationships, enabling enterprise account structures.
When to Use Customer Hierarchy
- Corporate accounts: Parent company with multiple divisions or locations
- Franchise relationships: Franchisor as parent, individual franchisees as children
- Ship-to / Bill-to separation: Parent for billing, children for shipping
- Consolidated reporting: Total revenue across related entities
Hierarchy vs. Multiple Addresses
Don't confuse customer hierarchy with address management:
- Multiple addresses: Same customer, different locations → Use address book
- Multiple contacts: Same customer, different people → Use contact records
- Separate legal entities: Different customers → Use parent-child hierarchy
flowchart TB
P["Acme Corporation
Parent Customer"]
P --> E["Acme East Division
Child Customer"]
P --> W["Acme West Division
Child Customer"]
P --> C["Acme Canada
Child Customer"]
style P fill:#a855f7,stroke:#7c3aed,color:#ffffff
style E fill:#faf5ff,stroke:#a855f7,color:#1a1d23
style W fill:#faf5ff,stroke:#a855f7,color:#1a1d23
style C fill:#faf5ff,stroke:#a855f7,color:#1a1d23
Customer-Vendor Relationship
Sometimes you buy from and sell to the same company. NetSuite handles this with linked records.
Options for Customer-Vendors
- Separate records (linked): One customer record, one vendor record, linked together. Keeps AR/AP separate but shows the relationship.
- Single record: Enable "Customer" and "Vendor" roles on the same entity. Simpler but can be confusing in searches and reports.
Contact Strategy
Contacts represent individuals at companies. Good contact management is essential for CRM and communication.
Contact Design Decisions
- Primary contact: Who is the main contact for each company?
- Role tracking: What roles do contacts play (Decision Maker, Influencer, User)?
- Communication preferences: Email opt-in, preferred contact method
- Portal access: Which contacts can log into customer/vendor portals?
Contact vs. Customer
A common question: should an individual person be a Contact or a Customer?
- Contact: Person associated with a company; doesn't transact directly
- Customer (Individual): Person who buys from you directly (B2C or sole proprietor)
Duplicate Prevention
Duplicate entity records are one of the most common data quality issues. Design prevention into your processes.
Prevention Strategies
- Duplicate detection rules: Configure NetSuite's built-in duplicate detection on email, phone, company name
- Required fields: Make email or phone required to have something to match on
- Entry workflows: Train users to search before creating new records
- Periodic cleanup: Schedule duplicate detection reports and merge procedures
Merge Considerations
When duplicates occur, NetSuite can merge records. Decide in advance:
- Which record becomes the master (usually older or more complete)
- How transaction history is preserved
- What happens to custom field data
- Who has authority to perform merges
Item Strategy
Items are what you sell, buy, and make. Your item architecture affects inventory management, costing, pricing, and revenue recognition.
Item Types Overview
NetSuite offers numerous item types, each with specific behaviors.
| Item Type | Tracks Inventory? | Use For |
|---|---|---|
| Inventory Item | Yes | Physical products you stock and sell |
| Non-Inventory Item (Sale) | No | Products sold but not tracked in inventory (drop ship, special order) |
| Non-Inventory Item (Purchase) | No | Goods purchased but not inventoried (supplies, consumables) |
| Service Item (Sale) | No | Services you provide to customers |
| Service Item (Purchase) | No | Services you purchase from vendors |
| Assembly/BOM | Yes | Manufactured items built from components |
| Kit/Package | Components | Bundle of items sold together |
| Item Group | Members | Shortcut for entering multiple items |
| Discount | No | Line-level discounts |
| Markup | No | Line-level markups |
| Subtotal | No | Subtotals for grouped items |
| Description | No | Text-only lines on transactions |
Item Naming and Numbering
Item naming conventions affect searchability, sorting, and user experience.
Item Name/Number Strategies
- SKU-based: Use vendor or internal SKU as the item name. Best for wholesale/distribution.
- Descriptive: Human-readable names. Best for services and low-SKU-count businesses.
- Hierarchical: Category codes embedded in name (ELEC-TV-SAM-55). Best for large catalogs.
- Hybrid: SKU as Name/Number, description in Display Name. Balances both needs.
Matrix Items
Matrix items handle products with variants—different sizes, colors, or options of the same base product.
Matrix Structure
- Matrix Parent: The base product (e.g., "Classic T-Shirt")
- Matrix Children: Individual variants (e.g., "Classic T-Shirt - Blue - Large")
- Option Lists: Define the dimensions (Color, Size)
Matrix Design Decisions
- Option dimensions: What attributes create variants? (Size, Color, Material)
- Pricing: Same price for all variants or variant-specific pricing?
- Inventory: Track separately for each variant (yes) or aggregate (no)
- Images: Unique images per variant or shared images?
Assembly and BOM Items
Assemblies represent manufactured items built from components via a bill of materials.
BOM Design Considerations
- BOM levels: How deep is your component hierarchy? (Single level vs. multi-level)
- Phantom assemblies: Intermediate assemblies that aren't stocked separately
- Revision control: Do BOMs change over time? How do you track revisions?
- Effectivity dates: When do BOM changes take effect?
Assembly vs. Kit Decision
Costing Methods
Inventory costing determines how cost of goods sold is calculated. This is an accounting policy decision with significant implications.
| Method | Description | Best For | Considerations |
|---|---|---|---|
| Average | Running weighted average of all receipts | High-volume, fungible goods | Simple; smooths cost fluctuations |
| FIFO | First in, first out | Perishables, dated goods | Better reflects current costs; more complex |
| LIFO | Last in, first out | Tax strategy (US only) | Not allowed under IFRS; uncommon |
| Standard | Predetermined fixed cost | Manufacturing | Requires variance analysis; budget-friendly |
| Lot | Actual cost per lot | High-value, unique items | Most accurate; most effort |
| Group Average | Average within location | Multi-location distribution | Location-specific costs |
Pricing Configuration
NetSuite's pricing capabilities range from simple to highly sophisticated.
Pricing Options
- Base Price: Default selling price on the item record
- Price Levels: Named price tiers (Retail, Wholesale, VIP)
- Quantity Pricing: Discounts based on quantity ordered
- Customer-Specific Pricing: Unique prices per customer
- Quantity Pricing Schedules: Volume discount tiers
- Promotional Pricing: Time-limited promotional prices
Pricing Strategy Questions
- How many distinct price levels do you need?
- Do customers have negotiated contract prices?
- Do you offer quantity breaks?
- How are promotions managed?
- Do prices vary by currency or region?
Transaction Flow Design
Transaction flows define how business processes move through NetSuite. Smart flow design minimizes data entry, enforces controls, and provides visibility.
Order-to-Cash Flow Options
The sales cycle can follow different paths depending on your business model.
Standard Flow
Quote-Based Flow
Cash Sale Flow
Subscription Flow
Flow Design Questions
- Do orders require approval before fulfillment?
- Is credit checking required?
- Can partial fulfillments occur?
- When does invoicing happen—at shipment or on schedule?
- How are returns and credits handled?
Procure-to-Pay Flow Options
Purchasing flows vary based on control requirements and vendor relationships.
Full PO Flow
Direct Bill Flow
Expense Report Flow
Three-Way Matching
For controlled purchasing environments, three-way matching ensures:
- Bill quantity ≤ PO quantity
- Bill quantity ≤ received quantity
- Bill price ≤ PO price (with tolerance)
Approval Routing Design
Approval workflows are one of the most common customizations. Design them carefully.
Approval Architecture Options
- Role-based: Specific roles (e.g., CFO) approve
- Hierarchy-based: Route to supervisor, then their supervisor
- Amount-based: Different approvers at different dollar thresholds
- Department-based: Route to department manager
- Matrix: Combination of above factors
Approval Design Questions
- What transactions require approval?
- What are the approval thresholds?
- Who are the backup approvers?
- What's the escalation path for delayed approvals?
- Can approvers delegate authority?
Security Model
Security design protects data, enforces separation of duties, and ensures compliance. Get it right during design—retrofitting security is painful.
NetSuite Security Layers
Security in NetSuite operates at multiple levels, each serving different purposes.
| Layer | Controls | Scope |
|---|---|---|
| Role | What can user do? | Permissions for transactions, reports, setup |
| Subsidiary Restrictions | Which subsidiaries can user access? | Limits data to specific legal entities |
| Department Restrictions | Which departments can user see? | Limits data to organizational units |
| Location Restrictions | Which locations can user access? | Limits data to physical/logical locations |
| Custom Record Access | Who can see custom records? | Record-level access control |
Role Design Strategy
Roles define what users can do. Design roles around job functions, not individuals.
Role Design Principles
- Principle of least privilege: Give only the access needed to do the job
- Separation of duties: No one person should control an entire process end-to-end
- Job-based, not person-based: Name roles "AP Clerk," not "John's Role"
- Minimize custom roles: Start with standard roles, customize only when necessary
Standard Role Starting Points
NetSuite includes many standard roles. Start with these and customize:
- Administrator: Full access (limit to 1-2 people)
- A/P Clerk: Vendor bills, payments
- A/R Clerk: Invoices, customer payments
- Accountant: Journal entries, reports
- Sales Representative: Orders, customers, opportunities
- Warehouse Manager: Fulfillment, receiving, inventory
- Employee Center: Basic employee self-service
Separation of Duties
Internal controls require that certain functions be separated to prevent fraud.
Classic Separation of Duties
| Process | Should Be Separated | Why |
|---|---|---|
| Purchasing | Creating PO ≠ Approving PO ≠ Receiving | Prevent fictitious vendor payments |
| Payables | Creating Bill ≠ Approving Payment ≠ Processing Payment | Prevent unauthorized disbursements |
| Receivables | Creating Invoice ≠ Applying Payment ≠ Making Deposits | Prevent payment diversion |
| Inventory | Warehouse Access ≠ Inventory Adjustment Authority | Prevent theft concealment |
| Journal Entries | Creating JE ≠ Approving JE | Prevent unauthorized entries |
Security Documentation
Document your security model for audit and training purposes.
Security Documentation Checklist
Integration Architecture
Most NetSuite implementations involve integrations with other systems. Design integration architecture early—it affects data model, security, and project timeline.
Integration Inventory
Start by documenting every system that needs to connect to NetSuite.
| System | Data Flow | Direction | Frequency | Priority |
|---|---|---|---|---|
| E-commerce (Shopify) | Orders, Inventory | Bidirectional | Real-time | Critical |
| CRM (Salesforce) | Customers, Opportunities | Bidirectional | Near real-time | High |
| Payroll (ADP) | Payroll Journal | Inbound | Bi-weekly | High |
| Bank (Chase) | Transactions, Statements | Inbound | Daily | High |
| EDI (SPS Commerce) | Orders, ASNs, Invoices | Bidirectional | Hourly | Critical |
Integration Methods
NetSuite offers multiple integration approaches. Choose based on requirements.
| Method | Best For | Complexity | Notes |
|---|---|---|---|
| CSV Import | One-time loads, simple recurring imports | Low | Manual or scheduled; limited error handling |
| SuiteTalk REST | Modern integrations, mobile apps | Medium | RESTful API; recommended for new integrations |
| SuiteTalk SOAP | Legacy integrations | Medium-High | Still supported but REST preferred |
| RESTlets | Custom API endpoints | High | Full SuiteScript power; custom logic |
| Integration Platform (Celigo, Boomi) | Multi-system orchestration | Medium | Pre-built connectors; faster deployment |
| SuiteApp Connectors | Popular applications | Low-Medium | Pre-built for Shopify, Salesforce, etc. |
Integration Method Decision
Integration Design Considerations
Data Mapping
For each integration, document:
- Source system fields → NetSuite fields
- Data transformations required
- Default values for missing data
- Unique identifier for matching records
Error Handling
- What happens when a record fails to import?
- Who is notified of errors?
- How are failed records retried?
- Is there an error queue for manual review?
Timing and Sequencing
- What's the frequency requirement? (Real-time, hourly, daily)
- Is order of operations important? (Master data before transactions)
- What are the peak volumes?
- Are there blackout periods (month-end close)?
Industry Design Patterns
Each industry has proven design patterns that address common requirements. Apply these patterns to accelerate your design phase.
Manufacturing Design Patterns
Chart of Accounts
- Separate COGS accounts for Material, Labor, and Overhead
- WIP accounts for each production stage
- Variance accounts for standard costing
Segmentation
- Class: Product Line or Product Family
- Location: Plants and warehouses
- Department: Production, Quality, Shipping
Item Strategy
- Multi-level BOMs with phantom assemblies for sub-assemblies
- Standard costing with variance analysis
- Lot or serial tracking for traceability
Wholesale/Distribution Design Patterns
Chart of Accounts
- Inventory accounts by category or warehouse
- Freight income and expense accounts
- Rebate liability accounts
Segmentation
- Class: Product Category or Vendor Line
- Location: Warehouses (critical for inventory)
- Department: Sales, Purchasing, Warehouse, Admin
Item Strategy
- Average or FIFO costing
- Multiple vendor support per item
- Advanced pricing with volume discounts
Software/SaaS Design Patterns
Chart of Accounts
- Deferred Revenue accounts by product type
- Revenue accounts by revenue stream (Subscription, Services, Usage)
- Contract Asset/Liability for ASC 606
Segmentation
- Class: Product Line or Revenue Type
- Department: R&D, S&M, G&A (for SaaS metrics)
- Custom Segment: Contract or Subscription
Item Strategy
- Subscription items with billing schedules
- Service items for professional services
- Usage-based items for metered billing
Professional Services Design Patterns
Chart of Accounts
- Revenue accounts by service type or practice area
- Unbilled receivables for WIP
- Direct labor cost accounts
Segmentation
- Class: Practice Area or Service Line
- Department: Delivery teams, Partners
- Custom Segment: Client or Engagement
Item Strategy
- Service items by billing type (T&M, Fixed Fee)
- Expense items for reimbursable expenses
- Rate tables for billing rates by role
Nonprofit Design Patterns
Chart of Accounts
- Natural accounts (GAAP) with functional expense allocation
- Net Asset accounts by restriction type
- Grant-specific revenue and expense accounts (if many grants)
Segmentation
- Class: Program or Functional Area
- Department: Programs, Fundraising, Admin
- Custom Segment: Fund, Grant, or Restriction
Special Considerations
- Statement of Functional Expenses reporting
- Fund accounting with restriction tracking
- Grant budget vs. actual tracking
