docs.vin

totalLoss

The totalLoss noun — identity, lifecycle, events, and every capability as an anchored section: 10 capabilities, 0 live, 10 sandbox, 0 declared.

totalLoss is one of the estate's 317 automotive nouns — a job a car needs done. It carries 10 capabilities: 0 live, 10 sandbox, 0 declared · doors aggregator.vin.

Identity

NountotalLoss
PillarServices (facets: 3 data · 4 services · 3 commerce)
Capabilities10 — 0 live · 10 sandbox · 0 declared
EntitiesTotalLoss
Doorsaggregator.vin
SDKVin.totalLoss.* from apis.vin
Address/catalog/totalLoss#{action} — the anchor IS the wire name minus totalLoss.

Lifecycle

TotalLossTotalLossSalvageFSM: 7 states, 6 transitions — ClaimOpened · AcvDetermined · TotalLossConfirmed · Repairable · SalvageAssigned · SalvageSold · Subrogation. Each transition is a past-tense event on the record.

Events

The vocabulary this noun can append to the record — 10 past-tense, versioned event types, each linked to the capability that emits it:

Pay & settle

taxRefund

totalLoss.taxRefund · POST /total-loss/tax-refund · gate offer · sandbox · answers TotalLossTaxRefund@1

FieldTypeRequiredNotes
vinstringno

The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

EmitsTotalLoss.failed@1 · TotalLoss.taxRefunded@1.

the SDK — totalLoss.taxRefund
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.taxRefund({"vin":"5N1DR3DJ3RC307990"})
POST /total-loss/tax-refund
curl -X POST https://apis.vin/total-loss/tax-refund \
  -H 'content-type: application/json' \
  -d '{"vin":"5N1DR3DJ3RC307990"}'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-17T12:42:18.390Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossTaxRefund@1",
  "value": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "5N1DR3DJ3RC307990",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "evidence": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "5N1DR3DJ3RC307990",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "total-loss-desk-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

More actions

acv

totalLoss.acv · POST /total-loss/acv · gate key · sandbox · answers TotalLossAcv@1

No input — this capability takes no request body.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

EmitsTotalLoss.acvDetermined@1 · TotalLoss.failed@1.

the SDK — totalLoss.acv
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.acv()
POST /total-loss/acv
curl -X POST https://apis.vin/total-loss/acv \
  -H 'content-type: application/json' \
  -d '{}'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-16T14:50:10.071Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossAcv@1",
  "value": {
    "vin": "1HGCM82633A004352",
    "acvRef": "ACV-001O",
    "acv": {
      "amount": "19100.00",
      "currency": "USD"
    },
    "basis": "retail-average",
    "priorDamageOffset": {
      "amount": "0.00",
      "currency": "USD"
    },
    "condition": "average",
    "asOf": "2026-08-10"
  },
  "evidence": {
    "vin": "1HGCM82633A004352",
    "acvRef": "ACV-001O",
    "acv": {
      "amount": "19100.00",
      "currency": "USD"
    },
    "basis": "retail-average",
    "priorDamageOffset": {
      "amount": "0.00",
      "currency": "USD"
    },
    "condition": "average",
    "asOf": "2026-08-10"
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "title-integrity-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

determine

totalLoss.determine · GET /total-loss/determine · gate key · sandbox · answers TotalLossDetermine@1

FieldTypeRequiredNotes
vinstringno

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

EmitsTotalLoss.confirmed@1 · TotalLoss.repairableDetermined@1.

the SDK — totalLoss.determine
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.determine({"vin":"5N1DR3DJ3RC307990"})
GET /total-loss/determine
curl 'https://apis.vin/total-loss/determine?vin=5N1DR3DJ3RC307990'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-17T12:42:18.359Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossDetermine@1",
  "value": {
    "vin": "5N1DR3DJ3RC307990",
    "determinationRef": "TL-000K",
    "acv": {
      "amount": "18400.00",
      "currency": "USD"
    },
    "repairCost": {
      "amount": "4200.00",
      "currency": "USD"
    },
    "thresholdRatio": 0.75,
    "damageRatio": 0.228,
    "totalLoss": false,
    "salvageRouteRequired": false,
    "asOf": "2026-08-10"
  },
  "evidence": {
    "vin": "5N1DR3DJ3RC307990",
    "determinationRef": "TL-000K",
    "acv": {
      "amount": "18400.00",
      "currency": "USD"
    },
    "repairCost": {
      "amount": "4200.00",
      "currency": "USD"
    },
    "thresholdRatio": 0.75,
    "damageRatio": 0.228,
    "totalLoss": false,
    "salvageRouteRequired": false,
    "asOf": "2026-08-10"
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "title-integrity-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

negativeEquityCoordinate

totalLoss.negativeEquityCoordinate · POST /total-loss/negative-equity-coordinate · gate key · sandbox · answers TotalLossNegativeEquityCoordinate@1

No input — this capability takes no request body.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

EmitsTotalLoss.negativeEquityCoordinated@1.

the SDK — totalLoss.negativeEquityCoordinate
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.negativeEquityCoordinate()
POST /total-loss/negative-equity-coordinate
curl -X POST https://apis.vin/total-loss/negative-equity-coordinate \
  -H 'content-type: application/json' \
  -d '{}'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-16T14:50:10.071Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossNegativeEquityCoordinate@1",
  "value": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "1HGCM82633A004352",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "evidence": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "1HGCM82633A004352",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "total-loss-desk-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

ownerRetain

totalLoss.ownerRetain · POST /total-loss/owner-retain · gate offer · sandbox · answers TotalLossOwnerRetain@1

FieldTypeRequiredNotes
vinstringno

The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

EmitsTotalLoss.ownerRetained@1.

the SDK — totalLoss.ownerRetain
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.ownerRetain({"vin":"5N1DR3DJ3RC307990"})
POST /total-loss/owner-retain
curl -X POST https://apis.vin/total-loss/owner-retain \
  -H 'content-type: application/json' \
  -d '{"vin":"5N1DR3DJ3RC307990"}'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-17T12:42:18.361Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossOwnerRetain@1",
  "value": {
    "vin": "5N1DR3DJ3RC307990",
    "retentionRef": "TLR-000K",
    "fsmState": "TotalLossConfirmed",
    "acv": {
      "amount": "8411.00",
      "currency": "USD"
    },
    "ownerRetainedSalvageValue": {
      "amount": "2355.00",
      "currency": "USD"
    },
    "netSettlement": {
      "amount": "5556.00",
      "currency": "USD"
    },
    "salvageBrandRequired": true,
    "brandApplied": "salvage",
    "rebuildInspectionRequired": true,
    "asOf": "2026-08-10"
  },
  "evidence": {
    "vin": "5N1DR3DJ3RC307990",
    "retentionRef": "TLR-000K",
    "fsmState": "TotalLossConfirmed",
    "acv": {
      "amount": "8411.00",
      "currency": "USD"
    },
    "ownerRetainedSalvageValue": {
      "amount": "2355.00",
      "currency": "USD"
    },
    "netSettlement": {
      "amount": "5556.00",
      "currency": "USD"
    },
    "salvageBrandRequired": true,
    "brandApplied": "salvage",
    "rebuildInspectionRequired": true,
    "asOf": "2026-08-10"
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "legal-authority-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

payoffCoordinate

totalLoss.payoffCoordinate · POST /total-loss/payoff-coordinate · gate offer · sandbox · answers TotalLossPayoffCoordinate@1

FieldTypeRequiredNotes
vinstringno

The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

EmitsTotalLoss.payoffCoordinated@1.

the SDK — totalLoss.payoffCoordinate
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.payoffCoordinate({"vin":"5N1DR3DJ3RC307990"})
POST /total-loss/payoff-coordinate
curl -X POST https://apis.vin/total-loss/payoff-coordinate \
  -H 'content-type: application/json' \
  -d '{"vin":"5N1DR3DJ3RC307990"}'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-17T12:42:18.382Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossPayoffCoordinate@1",
  "value": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "5N1DR3DJ3RC307990",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "evidence": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "5N1DR3DJ3RC307990",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "total-loss-desk-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

priorDamageOffset

totalLoss.priorDamageOffset · GET /total-loss/prior-damage-offset · gate none · sandbox · answers TotalLossPriorDamageOffset@1

No input — this capability takes no request body.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

the SDK — totalLoss.priorDamageOffset
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.priorDamageOffset()
GET /total-loss/prior-damage-offset
curl 'https://apis.vin/total-loss/prior-damage-offset'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-16T14:50:10.071Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossPriorDamageOffset@1",
  "value": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "1HGCM82633A004352",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "evidence": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "1HGCM82633A004352",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "total-loss-desk-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

salvage

totalLoss.salvage · POST /total-loss/salvage · gate offer · sandbox · answers TotalLossSalvage@1

FieldTypeRequiredNotes
vinstringno

The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

EmitsTotalLoss.salvageAssigned@1.

the SDK — totalLoss.salvage
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.salvage({"vin":"5N1DR3DJ3RC307990"})
POST /total-loss/salvage
curl -X POST https://apis.vin/total-loss/salvage \
  -H 'content-type: application/json' \
  -d '{"vin":"5N1DR3DJ3RC307990"}'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-17T12:42:18.383Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossSalvage@1",
  "value": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "5N1DR3DJ3RC307990",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "evidence": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "5N1DR3DJ3RC307990",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "total-loss-desk-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

settlement

totalLoss.settlement · POST /total-loss/settlement · gate offer · sandbox · answers TotalLossSettlement@1

FieldTypeRequiredNotes
vinstringno

The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

EmitsTotalLoss.failed@1 · TotalLoss.settled@1.

the SDK — totalLoss.settlement
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.settlement({"vin":"5N1DR3DJ3RC307990"})
POST /total-loss/settlement
curl -X POST https://apis.vin/total-loss/settlement \
  -H 'content-type: application/json' \
  -d '{"vin":"5N1DR3DJ3RC307990"}'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-17T12:42:18.390Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossSettlement@1",
  "value": {
    "vin": "5N1DR3DJ3RC307990",
    "settlementRef": "TLS-000K",
    "fsmState": "TotalLossConfirmed",
    "acv": {
      "amount": "8411.00",
      "currency": "USD"
    },
    "salesTaxReimbursement": {
      "amount": "589.00",
      "currency": "USD"
    },
    "deductible": {
      "amount": "500.00",
      "currency": "USD"
    },
    "settlementAmount": {
      "amount": "8500.00",
      "currency": "USD"
    },
    "salvageRetainedByCarrier": true,
    "asOf": "2026-08-10"
  },
  "evidence": {
    "vin": "5N1DR3DJ3RC307990",
    "settlementRef": "TLS-000K",
    "fsmState": "TotalLossConfirmed",
    "acv": {
      "amount": "8411.00",
      "currency": "USD"
    },
    "salesTaxReimbursement": {
      "amount": "589.00",
      "currency": "USD"
    },
    "deductible": {
      "amount": "500.00",
      "currency": "USD"
    },
    "settlementAmount": {
      "amount": "8500.00",
      "currency": "USD"
    },
    "salvageRetainedByCarrier": true,
    "asOf": "2026-08-10"
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "legal-authority-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

valuation

totalLoss.valuation · GET /total-loss/valuation · gate key · sandbox · answers TotalLossValuation@1

FieldTypeRequiredNotes
vinstringno

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /5N1DR3DJ3RC307990 (the VIN lens).

Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.

the SDK — totalLoss.valuation
import { totalLoss } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await totalLoss.valuation({"vin":"5N1DR3DJ3RC307990"})
GET /total-loss/valuation
curl 'https://apis.vin/total-loss/valuation?vin=5N1DR3DJ3RC307990'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-17T12:42:18.391Z · HTTP 200
{
  "type": "OK",
  "answers": "TotalLossValuation@1",
  "value": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "5N1DR3DJ3RC307990",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "evidence": {
    "noun": "totalLoss",
    "asOf": "2026-08-10",
    "vin": "5N1DR3DJ3RC307990",
    "totalLoss": {
      "status": "no-total-loss-on-file"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "total-loss-desk-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Data model

The record shape behind this noun — one entity, each property an evidence field. See the whole estate model on the data model page.

TotalLoss

Schema

PropertyTypeNotes
ididtl_
claimIdref→Claim
vinstring
acvmoney
salvageIdref→Salvage
statusTotalLossSalvageFSM

Relationships

FromToCardinalityAs
totalLossinsuranceClaim1:1determines

Modeled

The noun drawn out — its record shape, its lifecycle, and how it is exercised end to end. 2 diagrams, rendered from the estate model.

TotalLoss · Class model

TotalLoss · State machine


Generated from the catalog. Every capability, answer, gate, and entity on this page is a rendered descriptor — it cannot drift from the wire.