Skip to main content
When a dealer publishes a price breakdown on their website (starting price, dealer cash, OEM incentives, documentation fees, final price), AutosnapAI captures the line items to match the shopper-facing data on the dealer’s website and exposes it as a structured price_components field on each vehicle record.
The breakdown matches the shopper-facing pricing data on the dealer’s website. Structured price breakdowns are available for websites served by the following providers:
  • Dealer.com
  • CarsCommerce (including DealerInspire, which is served via CarsCommerce)
  • DealerOn
  • TeamVelocity
  • Overfuel
  • Jazel
  • DealerFire
  • Remora
Plus conditional support on DEP and OneAudi. Coverage is per-vehicle (~95–98%); a vehicle whose dealer publishes only a single price returns price_components: null while the flat price is always present.See Provider Coverage for the full per-provider list, including platforms that serve a flat price only.

Where it appears

The price_components field is available on every vehicle record returned by the Fetch Inventory endpoint. Top-level convenience fields final_price, total_discounts, and total_fees are also returned as flat fields on the vehicle object. starting_price is only available inside price_components.

Structure

price_components is a native JSON object:
The type field reflects the most specific OEM-program classification we can detect from the dealer’s source data. A line labeled “Bonus Cash” may surface as incentive_bonus_cash (when the dealer’s HTML markup carries that program identifier) or as the more generic dealer_incentive (when it doesn’t). Both belong to category: "discount" — group on category for stable consumer logic.
The five components items are exactly what the dealer’s website displays for this vehicle, in the same order.

Top-level summary fields

For dealers that include Documentation Fees AFTER the Final Price line (a common pattern for GM and Mercedes dealers), final_price represents the price BEFORE Doc Fee. The Doc Fee then appears as a separate dealer_fee line. Out-the-door cost is final_price + total_fees for those dealers. Check the component order in components to confirm — it reflects the order shown on the dealer’s site.

Component fields

Each item in components:

Component types

These are the types currently emitted in production data. Tolerate unknown types — your parser should treat any unrecognized type as category: "other". New providers may add new types over time.
Complementary offers are zero-dollar value-adds the dealer renders as a line item on the website (e.g., “Ewing Edge Program: Free”, “Window Tint: Free”, “First Year Maintenance: Free”). They have no math effect on the total but are surfaced because they appear on the dealer’s price stack. amount is always 0 and label carries the offer name verbatim.
Use category for grouping logic — it’s stable across types. type may add new values as we integrate more providers.

How the breakdown is captured

For CarsCommerce and DealerInspire dealers, AutosnapAI parses the dealer’s CMS-rendered HTML directly from the inventory feed. This means:
  • The components array reflects the dealer’s website pricing display — labels, amounts, and order shoppers see on the dealer’s website
  • No reconstruction or interpretation — we’re reading the dealer’s actual rendered output
  • New incentive programs and rendering patterns are picked up automatically — no per-dealer rule updates needed
For Dealer.com and DealerOn, the breakdown is extracted from each provider’s structured pricing format and normalized into the same shape.

”Maybe-qualify” / conditional offers

Some breakdowns include disclosure-flagged incentives that do NOT auto-apply to the final price (e.g. Military Appreciation, College Graduate, Loyalty offers). These appear in components with "disclosure": "conditional":
These items typically render AFTER the dealer’s Final Price line on the website as “you may also qualify for” line items. They’re informational — only apply when the customer qualifies for the program.
Conditional and informational items are NOT counted in total_discounts. The top-level total_discounts field reflects only auto-applied discounts that contribute to final_price. If your downstream logic enumerates components and re-sums them, exclude any item where disclosure: "conditional" OR disclosure: "informational" to match total_discounts.Note: items flagged disclosure: "finance" (finance-conditional incentives) ARE currently included in total_discounts. They only apply when the customer finances through the dealer’s preferred lender — exclude them yourself if you need a strictly cash-deal total.

Finance-conditional offers

Similar pattern for finance-only incentives (disclosure: "finance") — applies only when the customer finances through the dealer’s preferred lender (e.g. KFA Bonus Cash for Kia financing).

When no breakdown is available

Not every dealer publishes a structured pricing stack. When no breakdown is available — typically for vehicles gated behind “Please call for price” — components will be an empty array and the flat top-level final_price, total_discounts, total_fees will be null:
This is the correct representation: the dealer publishes no breakdown, and we save no breakdown.

Taxes, registration, and title

Some dealers include registration fees, title fees, and other state-specific charges in their pricing breakdown as dealer_fee components (e.g. “Registration Fee”, “Computerized Vehicle Registration Fee”, “TEMPTAG”). Others do not. Sales tax is generally not included. The presence and labeling of these fees varies by dealer and state — check the individual component labels in components to determine what’s included for a given vehicle.

Fetch Inventory

Retrieve vehicle records with pricing breakdowns

Vehicles

The full vehicle object shape

Provider Coverage

Per-provider breakdown coverage status

Webhooks

Event notifications for vehicle/price changes