ApproveAll | Approve All | Boolean | | Bulk shortcut read by ClaimLineService.MarkAllClaimLines: when true, every claim line's approved quantity is set to its claimed quantity and its rejected quantity to zero. It is checked before RejectAll in the same if/else, so if both flags are on, approval wins and the rejection is ignored. |
AsOndate | As On Date | Date | | Cut-off date used when populating lines without a specific source document: service-order and credit-note lines are only pulled in when their document date is on or before this date. When the claim already names a service order or credit note, that link wins and this date is only a tie-breaker. |
BillReturnId | Bill Return | Lookup → BillReturn | | |
BranchId | Branch | Lookup → Branch | | |
ClaimBatchId | Claim Batch | Lookup → ClaimBatch | | |
ClaimType | Claim Type | PickList | | Steers which source documents PerformPopulateLines will pull from: Service reads service-order lines, while Purchase, Damaged, Shortage and Excess all read CreditNoteLine rows (Purchase takes any return type, the others must match the credit note's ReturnType). Values: Scheme, Marketing, Damaged, Sale, Service, Purchase, Shortage, Excess, Transport, Part To Part. |
CreatedById | Created By | Lookup → UserAccount | Yes | |
CreatedDateTime | Created Date | DateAndTime | Yes | |
DocumentDate | Document Date | Date | | |
ExternalId | External | Text, unique | | |
GenerationKey | Generation Key | Text | | Idempotency key for engine-generated claims, composed as claim type, group key and period joined by pipes (for example the year-month '2026-07' as the period). Before writing, claims.generate looks up existing claims by this key and skips any candidate whose key already exists, so re-running a setup within the same period cannot duplicate a claim. Manually created claims leave it blank. |
GoodsReceiptId | Goods Receipt | Lookup → GoodsReceipt | | |
Id | Id | Guid | Yes | |
InvoiceGroup | Invoice Group | PickList | | Copied from the originating ServiceOrderLine's own invoice group and used as part of the claim's identity: service-order claim creation keys one claim per invoice group, item service contract and service order, and line population only attaches service-order lines whose invoice group matches the claim's. |
InvoiceId | Sale Invoice | Lookup → Invoice | | |
IsLinePopulated | Line Populated | Boolean | Yes | Intended as the 'lines have been built' marker, but no code path on Claim ever sets it — line population leaves it untouched. Do not rely on it to tell whether a claim has been populated; check for ClaimLine rows instead. |
IsReconciled | Reconciled | Boolean | Yes | Set to true by ClaimService.MarkClaimToReconciled at the end of the reconcile action, in the same step that clears PerformReconciliation. It records that the adjustment/invoice follow-ups were attempted; it does not assert that credit was actually received from the supplier. |
ItemServiceContractId | Service Contract | Lookup → ItemServiceContract | | The warranty or service contract this claim recovers against. It is part of the claim's identity for service claims — one claim is created per contract per service order per invoice group — and line population only attaches a service-order line when the line's contract, or one of its second/third weightage contracts, matches this one. |
ModifiedById | Modified By | Lookup → UserAccount | Yes | |
Name | Name | Text | Yes | |
OwnerId | Owner | Lookup → UserAccount | Yes | |
PartnerAccountId | Partner Account | Lookup → Account | | |
PerformPopulateLines | Perform Populate Lines | Boolean | Yes | Trigger flag whose matching server action builds the claim's lines from the eligible source documents for its claim type. Unlike the ClaimBatch equivalent, neither this flag nor IsLinePopulated is reset or set by the code that runs, so it stays as the user left it and repeated runs are possible. |
PerformReconciliation | Perform Reconciliation | Boolean | Yes | Trigger flag for the reconcile action, which creates an inventory adjustment from the claim's Part-to-Part lines, raises a sale invoice from its Reimbursment lines with approved quantity, and then marks the claim reconciled. The service that finishes the run clears this flag back to false. |
PurchaseReturnId | Purchase Return | Lookup → PurchaseReturn | | Legacy link to a PurchaseReturn document. |
RecordTypeId | Record Type | Guid, hidden | | |
RejectAll | Reject All | Boolean | Yes | Bulk shortcut that sets every claim line's rejected quantity to its claimed quantity and zeroes the approved quantity. It only takes effect when ApproveAll is false, and neither flag is cleared afterwards. |
Remarks | Remarks | Text | | |
SchemeId | Scheme | Lookup → Scheme | | Link to the trade scheme a claim originates from. |
ServiceInvoiceAsOnDate | Service Invoice As On Date | Date | | |
ServiceOrderAsonDate | Service Order As on Date | Date | | |
ServiceOrderId | Service Order | Lookup → ServiceOrder | | |
Status | Status | PickList | | Free-text status column backed by a picklist of Draft, Pending Approval, Claim Approved, Claim Rejected and Reconcile. Code writes two values that are not in that list: the generation engine stamps 'Draft' on every claim it creates, and claims.settle sets 'Settled' after the settlement document is written — so a filter or rule built only from the picklist will miss settled claims. Values: Draft, Pending Approval, Approved, Rejected, Settled. |
SupplierAccountId | Supplier Account | Lookup → Account | | The party the claim is made against (the manufacturer, principal or supplier who owes the credit), as distinct from PartnerAccountId, which is the company or dealer entity raising it. The generation engine copies it from the setup's own supplier, and settlement carries it onto the credit note. |
TotalAmount | Total Amount | Calculated | | |
TotalApprovedAmount | Total Approved Amount | Calculated | | The figure claims.settle settles on: it is used as the settlement document's amount and, when zero or null with no lines present, the job concludes there is nothing to settle. No first-party code computes or rolls it up from the claim lines — the settlement service falls back to summing unit price times approved quantity across lines when it is null, so a stale non-null value here overrides the lines. |
TotalApprovedQuantity | Total Approved Quantity | Calculated | | |
TotalQuantity | Total Quantity | Calculated | | |
TotalRejectedAmount | Total Rejected Amount | Calculated | | Header total for rejected value. No first-party code path writes it, and nothing reads it; it is populated only if a tenant business rule or integration sets it. |
TotalRejectedQuantity | Total Rejected Quantity | Calculated | | |
UIProps | UI Props | Text | | |
UpdatedDateTime | Modified Date | DateAndTime | Yes | |