Technical Reference
Object and Field Reference
Technical reference for major objects, field groups, system-maintained fields, and object-contract best practices
This page is a field-oriented companion to the object model. It does not list every field in the org. It explains the object contracts and the field families that developers, admins, and operators need to understand before changing data, automation, reports, or integrations.
Object Size Snapshot
The repo extends several objects heavily. Field count is a signal that the object is an operational contract, not a simple form.
| Object | Custom field count in source | Primary contract |
|---|---|---|
Sales_Order__c | 206 | Order, payment, fulfillment, tracking, finance, commission, RMA correlation, reporting. |
Quote__c | 117 | Customer offer, approval, PDF, payment-readiness, margin/commission, conversion. |
Payment_Order__c | 108 | Collection intent, billing/shipping snapshot, route, token, invoice/order links. |
Item__c | 108 | Catalog, inventory, quote/order eligibility, BOM/cost, GL, fulfillment routing. |
Payment_Transaction__c | 104 | Processor/accounting evidence, settlement, refunds, voids, disputes. |
Sales_Order_Line__c | 101 | Revenue, fulfillment quantity, commission, cost/margin, line audit. |
Quote_Line__c | 81 | Quoted products, credits, margin, commission, conversion line source. |
Purchase_Order__c | 80 | Supply pipeline, vendor, receiving, phase status, open supply reporting. |
Opportunity | 76 | Pipeline rollups from Quotes, Sales Orders, Invoices, and Payments. |
Activity | 29 | Structured Task/Event data for lead activity quality. |
Field Family Conventions
| Field family | Meaning | Best practice |
|---|---|---|
External_Source_* | Imported or migrated source-system lineage. | Preserve it for traceability; do not use it as the primary operational field unless a migration/integration explicitly owns it. |
Metrics_Last_Calculated_At__c, Metrics_Version__c | Rollup/version evidence. | Treat as system-maintained. If stale, rerun the owning metrics job/service rather than hand-editing. |
*_Status__c, Lifecycle_Status__c, Collection_Status__c, Fulfillment_Status__c | Operational state. | Find the owning service/action before changing. Status fields often drive dashboards and mutability. |
*_Count__c, *_Amount__c, *_Total__c, *_Percent__c | Rollups, totals, derived metrics. | Assume calculated unless the field is clearly user-entered. |
Idempotency_Key__c, Raw_Payload_Hash__c, Execution_Key__c | Integration dedupe/evidence. | Never overwrite to "retry"; use the supported retry/requeue path. |
Last_*_Error__c, Last_*_Message__c, Last_*_At__c | Last runtime evidence. | Use for diagnosis, not for workflow control by hand. |
Billing_*, Shipping_*, Delivery_* snapshots | Denormalized customer address/contact snapshot. | Preserve historical snapshots after order/payment creation. Correct source Account/Address records for future work. |
*_Gateway__c, Route_Key__c, Vault_Gateway_Key__c | Payment route/token context. | Treat as payment infrastructure fields. Gateway changes require lifecycle/migration handling. |
ThreePL_*, Fulfillment_*, Tracking_* | Provider sync and fulfillment state. | Use runtime/admin tools and provider refresh before manual edits. |
CRM and Activity
| Object/fields | Contract |
|---|---|
Lead activity summary fields | Last_Sales_Touch_Date__c, Last_Sales_Touch_By__c, Last_Sales_Touch_Disposition__c, Last_Sales_Touch_Quality__c, Next_Follow_Up_Date__c, Open_Follow_Up_Task_Count__c, and Lead_Activity_Compliance_Status__c are maintained from Tasks. |
Activity custom fields | Shared Task/Event field metadata for call, follow-up, buyer, product, compliance, and quality data. |
Task validation/list views | Save-time enforcement and work queues for structured Lead activity. |
Record_Ownership_Transfer__c | Audited ownership movement for Leads, Accounts, Quotes, and Sales Orders. |
Duplicate_Match__c | Stored duplicate evidence and review state. |
Best practices:
- Use Task/Activity for sales touch data; do not create a parallel custom activity object.
- Keep Lead rollup fields system-owned.
- Add fields only when they support reporting, automation, or handoff. Do not use free-text notes for data that managers need to measure.
- If a field is required in validation, put it on the quick action/layout where users enter the data.
Quotes and Quote Lines
| Area | Key fields | Contract |
|---|---|---|
| Header relationships | Account__c, Contact__c, Opportunity__c, Address_Tracker__c, Shipping_Address_Tracker__c | Parent context for customer, pipeline, addresses, and conversion. |
| Approval | Approval_Status__c, Approval_Submitted_Date__c, Approval_Decision_Date__c, Approval_Decision_By__c, Approval_Rejection_Reason__c, Approval_Age_Days__c, Approval_SLA_Status__c | Approval state and SLA reporting. |
| Email/PDF | Approval_Email_Status__c, Approval_Email_Sent_Count__c, Last_Approval_Email_* | Evidence of approval communication. |
| Totals | Product_Total__c, Shipping_Total__c, Total_Credits_Amount__c, Final_Total__c, Total_Quote_Line_Items__c, Total_Units__c | Quote totals and summary cards. |
| Margin/cost | Total_Quote_Cost__c, Quote_Gross_Margin__c, Quote_Margin_Percent__c, Has_Negative_Margin__c, BOM_Cost_Coverage_Percent__c | Profitability review and approval context. |
| Commission | Total_Commission_Amount__c, Average_Commission_Rate__c, Commission_to_Margin_Ratio__c | Commission preview before conversion. |
| Conversion | Converted_Sales_Order__c, Status__c | Link to downstream order and lock/converted behavior. |
Quote line contract:
| Area | Key fields |
|---|---|
| Item and pricing | Item__c, Quantity__c, Unit_Price__c, Discount_Percent__c, Line_Total__c, Line_Category__c. |
| Credits/revenue | Is_Credit_Line__c, Is_Revenue_Generating_Line__c. |
| Margin/BOM | Uses_BOM_Cost__c, Std_Calculated_COGS_Total__c, Total_Line_Cost__c, Line_Net_Margin__c, Has_Negative_Margin__c. |
| Commission | Commission_*, Commission_Group__c, Commission_Tier__c, Commission_Status__c. |
Best practices:
- Create and edit lines through the Line Items editor, not raw related-list creation.
- Do not manually change approval fields to skip approval.
- Clone/revise quotes instead of overwriting submitted or rejected history.
- Treat quote-line margin and commission fields as calculated evidence unless the commission override workflow explicitly owns the change.
Sales Orders and Sales Order Lines
| Area | Key fields | Contract |
|---|---|---|
| Header relationships | Account__c, Contact__c, Quote__c, Opportunity__c, Invoice_Count__c, Payment_Order_Count__c | Links the order to customer, pipeline, quote, invoices, and payment work. |
| Status/mutability | Status__c, Stage__c, Has_Payment_Activity__c, Has_Posted_Payment__c, Has_Fulfillment_Activity__c, Has_Tracking__c | Determines whether line changes are safe or locked. |
| Payment/AR | Payment_Status__c, Balance_Due_Amount__c, Total_Collected_Amount__c, Latest_Payment_Transaction_At__c, AR_Status__c, Collections_Date__c | AR, payment follow-up, and collection dashboards. |
| Fulfillment | Fulfillment_Status__c, Fulfillment_Percent__c, Fulfillment_Sync_Status__c, Fulfillment_Required_Qty__c, Fulfillment_Fulfilled_Qty__c, ThreePL_Runtime_Sync_Status__c | Warehouse/provider progress. |
| Tracking | Has_Tracking__c, Tracking_Count__c, Tracking_Code__c, First_Tracking_Received_At__c, All_Items_Delivered_At__c | Customer tracking and shipped-state evidence. |
Customer_Email_Status__c, Customer_Email_Sent_Count__c, Last_*_Email_Sent_On__c | Invoice/payment/tracking communication evidence. | |
| Finance/cost | Total_Order_Revenue__c, Final_Total__c, Total_Order_Cost__c, COGS_Sold_Goods__c, Total_COGS_Variance__c | Finance and margin controls. |
| Commission | Total_Commission_Amount__c, Commission_Decay_Percent__c, Average_Commission_Rate__c | Commission reporting and payout readiness. |
| RMA correlation | External_RMA_*, Primary_External_RMA_*, Latest_External_RMA_* | Thin external RMA app linkage, not native Salesforce RMA workflow ownership. |
Sales Order line contract:
| Area | Key fields |
|---|---|
| Item and amount | Item__c, Item_SKU__c, Quantity__c, Unit_Price__c, Line_Total__c, Line_Revenue__c. |
| Fulfillment | Counts_Toward_Fulfillment__c, Fulfilled_Quantity__c, Quantity_Left_To_Ship__c, ThreePL_Source_Line_Ref__c. |
| Margin/cost | Actual_COGS_Line_Total__c, Std_Calculated_COGS_Total__c, Line_Net_Margin__c, Gross_Profit_Actual__c. |
| Commission | Commission_*, Commission_Split_*, Commission_Status__c. |
Best practices:
- Use supported Sales Order actions for invoice, payment, tracking, cancellation, ownership, and recurring plans.
- Do not edit lines casually after payment, invoice, tracking, or fulfillment evidence exists.
- Use credit, reversal, cancellation, or admin repair paths instead of deleting financial history.
- Keep external RMA context on Sales Orders as correlation only.
Payments
| Object | Contract |
|---|---|
Payment_Order__c | Collection intent and customer/order/invoice/payment route context. |
Payment_Order_Line__c | Component amounts and payment order detail. |
Payment_Intent__c | Executable hosted checkout/payment link intent. |
Payment_Attempt__c | Attempt-level evidence. |
Payment_Transaction__c | Processor/accounting evidence: action, amount, gateway, provider refs, fees, settlement, failures, reversals. |
Payment_Receipt__c | Collected-funds evidence. |
Payment_Allocation__c / Receivable_Application__c | Application of receipts to invoices/AR. |
Payment_Method__c, Payment_Profile__c, Payment_Method_Token__c | Saved method and gateway-route token coverage. |
Payment_Gateway__c | Gateway identity, adapter, lifecycle, credential references, and successor/deprecation state. |
Settlement_Batch__c, Settlement_Line__c | Reconciliation and settlement reporting. |
Dispute__c, Processor_Event__c | Dispute and webhook/processor evidence. |
Best practices:
- Do not create fake transactions or receipts to make reports balance.
- Use idempotency and gateway lifecycle fields as evidence, not as retry toggles.
- Gateway changes are migration work. Use successor-backed lifecycle changes, token coverage checks, and historical transaction preservation.
- Billing/shipping snapshots on payment records are historical evidence. Correct the source customer/address for future payments instead of overwriting old snapshots.
3PL and Fulfillment
| Object | Contract |
|---|---|
ThreePL_Provider_Account__c | Reusable provider account identity and credential grouping. |
ThreePL_Provider_Config__c | Warehouse/provider config, endpoint extensions, sync toggles, runtime windows, lookbacks, poll frequencies. |
ThreePL_Runtime_Request__c | Queue/work item for provider runtime work. |
ThreePL_Transaction__c | Provider request/response evidence. |
ThreePL_Record_Sync_State__c | Source record to remote record mapping, hashes, last sync status/error. |
Fulfillment_Operation__c | Operational fulfillment progress. |
Shipped_Line__c | Shipped quantity and line evidence. |
Sales_Order_Tracking__c | Tracking numbers, provider, carrier, status, notification evidence. |
Fulfillment_Sync_History__c | Visible order-level sync history. |
Best practices:
- Diagnose provider sync using runtime request, transaction, sync state, and history together.
- Missing tracking is not proof of missing fulfillment. Check shipped-line and external fulfillment evidence first.
- Provider warehouse deactivation requires successor-backed handoff and blocker review.
- Provider-owned inventory should be mirrored from provider systems, not manually edited as internal stock.
Items, Inventory, BOM, and Purchasing
| Area | Key objects/fields | Contract |
|---|---|---|
| Catalog identity | Item__c.SKU__c, Item_Group__c, Variant_Family_*, Product_Type__c, Item_Category__c | Search, grouping, eligibility, reporting. |
| Sales eligibility | Can_Quote__c, Can_Sell__c, Not_Available_for_Quotes__c, Not_Available_For_Sale__c, Line_Add_Setup_Blocked__c | Product selector and line editor gating. |
| Fulfillment routing | Default_Warehouse__c, Warehouse__c, Warehouse_Link__c, Exclude_From_Fulfillment__c, Not_Count_In_Inventory__c | Warehouse/provider behavior. |
| Payment routing | Default_Payment_Gateway__c, Payment_Gateway__c, Item_Payment_Gateway__c | Gateway context for quote/order lines. |
| Inventory | Inventory__c, Inventory_Transaction__c, Quantity_On_Hand__c, Available_to_Promise__c, Stock_Status_Rating__c | Stock lookup and inventory history. |
| BOM/cost | Bill_of_Materials__c, BOM_Component__c, Standard_BOM_Cost__c, Std_Cost_*, Cost_Basis__c | Cost intelligence and margin. |
| Purchasing | Purchase_Order__c, Purchase_Order_Line__c, Purchase_Order_Receipt_Line__c, Received_Line__c | Supply pipeline and receiving. |
| GL | Revenue_GL_Account__c, Inventory_GL_Account__c, COGS_GL_Account__c, Expense_GL_Account__c, Item_GL_Account_Default__c | Finance automation and GL controls. |
Best practices:
- Use Item Manager and item creation wizard for setup; raw item creation misses policy and setup warnings.
- Do not sell or quote items with setup blockers just because a line can be forced in.
- Use structured inventory adjustments with reason/reference, not direct quantity edits.
- Treat BOM/cost fields as finance-impacting, not cosmetic product data.
Finance and Commissions
| Area | Objects/fields | Contract |
|---|---|---|
| GL defaults | GL_Account__c, Item_GL_Account_Default__c, item GL fields | Automation-first GL mapping. |
| Financial audit | Sales_Order_Financial_Audit__c, Sales_Order_Audit_Change__c, Sales_Order_Audit_Line__c | Change evidence for finance controls. |
| AR | Invoice__c, Payment_Receipt__c, Receivable_Application__c, balance/aging fields | Collections and receivables reporting. |
| Commission config | Commission_Group__c, Commission_Tier__c, Commission_SKU_Override__c, Commission_User_Override__c, Commission_Decay_Settings__c | Commission rules and payout readiness. |
| Commission results | Sales_Order__c.Total_Commission_Amount__c, line-level Commission_* fields | Reporting and payout confidence. |
Best practices:
- Use GL Intelligence to repair missing defaults rather than hand-maintaining one-off rules.
- Keep financial audit records. They are not disposable logs.
- Commission reports should be read with payment, refund, dispute, cancellation, and margin context.
Change Control Rules
- Before editing a field, identify whether it is user-entered, calculated, imported, integration-owned, or historical snapshot.
- Before adding a new field, identify its owner, entry surface, reporting purpose, permission coverage, and cleanup/retention impact.
- Before changing picklist values, check reports, dashboards, validation rules, Apex services, LWCs, and integrations.
- Before changing statuses, check automation that uses the status as a gate.
- Before changing object relationships, check delete behavior, sharing/access, rollups, and existing historical records.
- Before changing payment, fulfillment, or finance fields, define a migration path and rollback path.
Last updated on