Module

Customers

Use the Customers module to manage customer companies/people, addresses, contacts, and to quickly view customer-related invoices.

Why this module exists

Customers are the foundation of invoicing. A customer record is where you keep the recipient’s identity (company/person), contact people, addresses, and default currency. When you create an invoice or estimate, you select a customer so the system can:

  • Auto-fill billing/shipping details
  • Associate invoices and payments with the correct customer
  • Track balances, overdue amounts, and available credits
  • Make sending invoices easier (correct emails + phone numbers)

Customers list (Manage)

The Customers list is your customer directory. Use it to find a customer quickly, review their balance/overdue/credit at a glance, and open the customer profile.

Table columns
  • Company Name
  • Default Currency
  • Contact
  • Email
  • Phone
  • Balance
  • Overdue
  • Credit
  • Actions

Use the search input to find customers by display name, primary contact name/email, or phone number.

What Balance / Overdue / Credit mean
  • Balance: total amount the customer owes (open/unpaid amount).
  • Overdue: portion of the balance that is past the invoice due date.
  • Credit: funds available to apply to invoices (for example, overpayments or credits).

Create / Edit customer (tabs)

When creating or editing a customer, the form is organized into two main tabs so you can manage identity/addresses separately from additional people at the customer.

  • Customer Information — customer details, billing address, shipping address, and primary contact details.
  • Contacts — add additional contacts (secondary contacts).
How to think about contacts

Use the Primary Contact for the main person you send invoices to. Use Contacts for additional people (accounts payable, finance manager, procurement, etc.).

  • If the primary contact changes, update it so future invoice emails go to the correct person.
  • Keep contact emails unique (the backend enforces distinct emails in the contact list).
Billing vs Shipping address
  • Billing Address: where invoices/bills are addressed.
  • Shipping Address: where goods/services are delivered (if applicable).
  • Use Same as Billing if shipping is identical to billing—this helps keep data consistent.

Validation rules (from backend)

These validations are enforced when saving a customer. If a field is required or has a format constraint, the app will show an error message and prevent saving until fixed.

Customer details
  • Company Name: required, max 100 characters, must be unique per business
  • Display name as: required, max 100 characters
  • Phone: optional, max 30 characters, validated by country phone format (based on Billing Country; fallback CA)
  • Other: optional, max 20 characters
  • Website: optional, must be a valid website URL
  • Default Currency: required, must be an existing currency value
  • Notes: optional, max 150 characters
Primary Contact
  • First name: optional, max 50 characters (name validation rule applies)
  • Last name: optional, max 50 characters (name validation rule applies)
  • Email: optional, max 100 characters, must be valid email, cannot be disposable, must be distinct
  • Mobile: optional, max 30 characters, validated by country phone format (based on Billing Country; fallback CA)
Billing Address
  • Address Line 1: optional, max 100 characters
  • Address Line 2: optional, max 100 characters
  • City: optional, max 50 characters (city validation rule applies)
  • State/Province/Region: optional, must exist
  • Postal Code: optional, max 10 characters (postal code validation rule applies)
  • Country: optional, must exist
Shipping Address
  • Address Line 1: optional, max 100 characters
  • Address Line 2: optional, max 100 characters
  • City: optional, max 50 characters (city validation rule applies)
  • State/Province/Region: optional, must exist
  • Postal Code: optional, max 10 characters (postal code validation rule applies)
  • Country: optional, must exist
  • Same as Billing Address: required boolean toggle
Additional Contacts (Contacts tab)
  • First name: optional, max 50 characters
  • Last name: optional, max 50 characters
  • Email: optional, max 100 characters, must be valid email, cannot be disposable, must be distinct
  • Mobile: optional, max 30 characters, validated by country phone format (based on Billing Country; fallback CA)

Customer profile (Show)

The customer profile is the “single source of truth” for that customer. Use it when you want to confirm details before sending an invoice, review contacts, or check recent invoicing activity.

  • Basic Information (company name, display name, currency, phone, website, notes)
  • Contacts (primary and secondary)
  • Billing Address
  • Shipping Address
  • Recent Invoices (with filters and search)

Use the Edit Customer button to change details.

Recommended workflow

  1. Create the customer with correct company name and currency.
  2. Add at least one primary contact email (for invoice sending).
  3. Add billing address (and shipping if needed).
  4. Create an invoice/estimate and select this customer.
  5. Keep contacts updated as the customer’s team changes.

Deleting a customer

If a customer has invoices, the app prevents deletion. You must first remove/resolve invoices linked to that customer before you can delete the customer record.