Documentation Index
Fetch the complete documentation index at: https://docs.flexprice.io/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Customer synchronization in Flexprice ensures that customers exist in Nomod before invoice sync and payment link. Customers are synced to Nomod when invoices are being synced, ensuring proper invoice-to-customer association in Nomod.Key Concepts
- Invoice- and Payment-Link-Triggered Sync: Customers are synced only when invoice sync or payment link is triggered
- On-Demand Sync: Sync happens automatically during invoice sync
- One-Way Sync: Customers are synced from Flexprice to Nomod only (not bidirectional)
- Entity Integration Mapping: Links Flexprice customers to Nomod customer IDs
- Metadata Storage: Customer metadata stores cross-platform references
- Duplicate Prevention: Intelligent checks prevent duplicate customer creation in Nomod
Synchronization Flow
Customer sync is invoice- or payment-link-triggered and happens automatically:When Customer Sync Happens
Customer sync is triggered only when:- An invoice is being synced to Nomod
- A payment link is requested for an invoice
- Invoice outbound sync is enabled in the Nomod connection (
invoice_sync.outbound = true) when syncing invoices - Invoice status changes from
DRAFTtoFINALIZED(for invoice sync)
- Manual customer operations
- Other flows that do not involve invoice sync or payment link
Customer Data Model
Flexprice Customer Structure
Sync Configuration
Required Fields for Sync
| Field | Flexprice → Nomod | Notes |
|---|---|---|
name | ✅ | Customer full name (required for Nomod customer creation) |
email | ✅ | Primary email address (required for Nomod customer creation) |
Optional Fields
| Field | Description |
|---|---|
phone | Phone number (E.164 format) |
address | Customer address information |
external_id | Your internal customer ID |
metadata | Custom key-value pairs |
Sync Process Details
Invoice Sync and Payment Link Flow (Customer-Triggered)
Customer Linking
Metadata Storage
Customer linking is maintained through metadata fields: In Flexprice Customer:Link Verification
You can verify customer links using the API: Endpoint:GET /api/v1/customers/{customer_id}/integrations
Headers:
Error Handling
Common Sync Errors
| Error | Cause | Resolution |
|---|---|---|
| ”Customer not found” | Invalid customer ID | Verify customer exists in Flexprice |
| ”Email already exists” | Duplicate email in Nomod | Check for existing customer in Nomod dashboard |
| ”Invalid email format” | Malformed email address | Fix email format in Flexprice customer |
| ”Missing required fields” | Name or email missing | Ensure customer has name and email in Flexprice |
| ”Nomod API error” | Nomod connection issue | Check Nomod connection credentials and status |
Testing Customer Sync
Test Environment Setup
Invoice Sync Testing Flow
Create and Finalize Invoice
Create an invoice for the customer and finalize it (status changes to
FINALIZED)Verify Auto-Sync
Customer should now exist in Nomod with linked metadata (
nomod_customer_id in Flexprice customer metadata)
