Govern
Better Data SCM uses a three-tier customization model that balances system stability with tenant flexibility. Understanding this model helps you configure your organization effectively.
Definition: Core system values that cannot be changed by tenants.
Characteristics:
Examples:
ShipmentStatus: DRAFT, CREATED, PENDING, SHIPPED, RECEIVED, etc.RoleScope: SYSTEM, TENANT, LOCATIONPlanTier: FREE, PRO, ENTERPRISEAuditAction: CREATE, UPDATE, DELETE, APPROVE, REJECTWhy Fixed:
What You Can Do:
Definition: Industry pack provides defaults, but tenants can override or extend.
Characteristics:
How It Works:
Pack Defaults: Industry pack seeds default values
Tenant Override: You can override pack defaults
Template Models: Many configurations use template + tenant pattern
PaymentTermTemplateSimple (pack) → PaymentTermSimple (tenant)LocationTypeTemplate (pack) → LocationType (tenant)BudgetCodeTemplate (pack) → BudgetCode (tenant)Examples:
Safe Customization:
Definition: No system defaults; tenants define all values.
Characteristics:
Examples:
How It Works:
Many configurations use a template pattern:
Template (Pack Level):
PaymentTermTemplateSimple, LocationTypeTemplateTenant Instance:
PaymentTermSimple, LocationTypePack Seeding: Industry pack seeds templates
1"cmt">// Pack provides template2PaymentTermTemplateSimple {3 code: "NET_30",4 name: "Net 30 Days",5 days: 306}Tenant Override: Tenant can use template or override
1"cmt">// Tenant uses template as-is2PaymentTermSimple {3 templateId: "template_123",4 "cmt">// Uses template defaults5}6 7"cmt">// Tenant overrides template8PaymentTermSimple {9 templateId: "template_123",10 days: 45, "cmt">// Override: changed from 30 to 4511}12 13"cmt">// Tenant creates custom (no template)14PaymentTermSimple {15 code: "CUSTOM_TERM",16 name: "Custom Payment Term",17 days: 6018}Resolution: System resolves template + override
✅ Safe to Do:
❌ Avoid:
See Configuration Map for a complete index of all configuration areas and their customization tiers.
Many enums include a "CUSTOM" or "OTHER" value:
1enum IdentifierType {2 GTIN,3 UPC,4 EAN,5 CUSTOM "cmt">// ← Allows custom identifier types6}Usage:
Template provides defaults, tenant overrides:
1"cmt">// Template (pack)2PaymentTermTemplateSimple {3 code: "NET_30",4 name: "Net 30 Days"5}6 7"cmt">// Tenant instance8PaymentTermSimple {9 templateId: "template_123",10 "cmt">// Can override template values11 days: 45 "cmt">// Override12}No templates, tenant defines all:
1"cmt">// No templates, tenant creates all2BudgetCode {3 organizationId: "org_123",4 code: "BUDGET_001",5 name: "Operating Budget"6}Industry packs affect customization:
Example:
Understanding the customization model is essential for safe configuration. Incorrect customization can break system functionality. Contact support if you're unsure about customizing a configuration.
