Customer Management
Create, update, and manage customer records with multi-entity support, custom pricing, and tax profiles
ON THIS PAGE · 27
Manage your entire customer lifecycle through natural conversation. Create customers, set up custom pricing tiers, manage tax exemptions, and maintain complete audit trails -- all without navigating complex forms.
Overview
Customer management in the AI-Native ERP covers the full lifecycle of customer records:
- Create new customers with addresses, pricing, and tax profiles in a single operation
- Update any customer detail -- from basic info to complex pricing tiers
- Deactivate customers while preserving historical transaction data
- Import customers in bulk from CRM systems, CSV files, or legacy platforms
Every customer change is tracked through the workflow system with full traceability: who submitted it, who approved it, and when.
Multi-Entity Architecture
Customers follow the Master + Entity Override pattern, giving you the best of both worlds:
- Master customers are defined once at the organization level -- name, email, tax ID
- Entity-specific overrides let each legal entity customize credit limits, payment terms, and addresses without duplicating data
- Effective views automatically resolve what each entity sees, merging master data with any overrides
This means a customer like "Acme Corporation" exists as a single record, but your US entity can set a $100K credit limit while your EU entity sets a EUR 80K limit -- independently.
Data Efficiency
| Approach | Records Stored | Records Visible |
|---|---|---|
| Traditional (duplicate per entity) | 6 copies per customer | 6 |
| Master + Overrides | 1 master + only the overrides needed | 6 (auto-resolved) |
Creating Customers
Required Information
| Field | Description |
|---|---|
| Customer name | Display name (1-255 characters) |
| Valid email address (RFC 5322) | |
| Legal entity | Which entity owns this customer |
Optional Information
You can include any of the following when creating a customer:
- Contact details: phone, website, billing email
- Business classification: customer type (retail, wholesale, distributor, enterprise, government, nonprofit)
- Credit terms: credit limit, payment terms
- Defaults: currency, tax code, default revenue account
- Addresses: billing and shipping addresses
- Custom pricing: customer-specific pricing tiers for items
- Tax profiles: tax exemptions with certificate numbers
- Dimensions: department and location tagging
- Custom metadata: any additional JSON fields
Addresses
Each customer can have multiple addresses with different types:
| Address Type | Purpose |
|---|---|
| billing | Invoice delivery address |
| shipping | Product delivery address |
Addresses include street lines, city, state/province, postal code, and country.
Customer-Specific Pricing
Set custom prices for specific items on a per-customer basis:
- Assign pricing tiers by item
- Set minimum and maximum quantity thresholds
- Define effective dates for pricing periods
- Override standard item prices for preferred customers
Tax Profiles
Manage tax exemptions and special tax treatments:
- Assign exempt tax codes with certificate numbers
- Set effective date ranges for exemptions
- Track exemption certificate expiration
Dimension Tagging
Tag customers with analytical dimensions for reporting:
- Department -- which department manages this customer relationship
- Location -- geographic classification for regional analysis
Use dimension type names (e.g., "department") and value codes (e.g., "SALES") when assigning dimensions.
Updating Customers
Customer updates support partial updates -- you only need to specify the fields you want to change. All other fields remain unchanged.
Updatable Fields
- Master fields: customer name, email, phone, website, tax ID, billing email, notes, customer type, credit limit, payment terms, currency, tax code, metadata
- Addresses: add new, update existing, or remove old addresses
- Pricing tiers: add, update, or delete customer-specific item pricing
- Tax profiles: add exemptions, update certificates, or remove profiles
- Dimensions: update department or location assignments
Action-Based Changes for Related Records
When updating addresses, pricing, tax profiles, or dimensions, each record uses an action field:
| Action | What It Does | When to Use |
|---|---|---|
| add | Creates a new record | Adding a new shipping address |
| update | Modifies an existing record | Changing a pricing tier's price |
| delete | Removes an existing record | Removing an expired tax exemption |
This lets you make multiple changes to different related records in a single operation.
Deactivating Customers
Customers are never hard-deleted by default -- they are deactivated. This preserves:
- Historical invoice and payment data
- Audit trail integrity
- Compliance with financial record-keeping requirements
- Accuracy of historical financial statements
Soft Delete (Default)
- Customer is marked as inactive
- Hidden from active customer lists
- All historical data remains accessible
- Requires Manager and Controller approval
Hard Delete (Exceptional)
- Permanently removes all customer data
- Requires CFO-level approval (3-step workflow)
- Only appropriate for test records or data entry errors
- Not recommended for customers with any transaction history
Bulk Import
Import customers from external sources with built-in validation and duplicate detection.
Supported Sources
- CRM systems (Salesforce, HubSpot)
- CSV file exports
- Legacy ERP migrations
- Partner data feeds
Import Process
- Data validation (automatic) -- field types, lengths, formats, foreign key checks, business rules
- Duplicate detection -- matches on tax ID or email (case-insensitive)
- Manager review -- summary of validation results before execution
Import Options
| Option | Description | Default |
|---|---|---|
| On duplicate | Skip, update existing, or raise error | Skip |
| Batch size | Records per batch (1-1000) | 100 |
| Stop on error | Halt on first error vs. continue | Continue |
| Validate only | Dry run without creating records | No |
Validation Levels
- Field validation: data types, string lengths, email format, currency codes
- Foreign key validation: payment terms, accounts, and entities exist
- Business rules: credit limits are non-negative, valid customer types, duplicate checking
- Warnings (non-blocking): unusually large credit limits, similar customer names
Approval Workflows
All customer operations go through risk-based approval routing:
| Operation | Approval Steps | Typical Lane |
|---|---|---|
| Create customer | AR Manager, then Controller | Yellow (requires approval) |
| Update customer | AR Manager, then Controller | Yellow |
| Deactivate (soft) | Manager, then Controller | Yellow |
| Delete (hard) | Manager, Controller, then CFO | Red (multi-level) |
| Bulk import | Validation, then Manager review | Yellow |
Audit Trail
Every customer operation generates a complete audit record including:
- Who submitted the change
- What was changed (before and after values)
- Who approved or rejected it
- Timestamps for each step
Key Concepts
Customer Types
| Type | Description |
|---|---|
| retail | Individual end consumers |
| wholesale | Bulk buyers for resale |
| distributor | Channel distribution partners |
| enterprise | Large corporate accounts |
| government | Government agencies |
| nonprofit | Tax-exempt organizations |
| other | Custom classification |
Payment Terms
Payment terms (e.g., NET30, NET45, NET60) control when invoices are due. These must reference existing payment terms configured in your organization.
Credit Limits
Credit limits are non-negative decimal values that represent the maximum outstanding balance allowed for a customer. The system can warn when credit limits are unusually large (over $1,000,000).