Integration Brief — Compatibility & Technical Overview
ScaleDMS × CarGurus
ScaleDMS by Enscale Systems is a CarGurus-compatible dealer management platform. Dealerships using ScaleDMS publish inventory to CarGurus, receive CarGurus leads directly into their CRM workflow, and surface CarGurus Deal Rating badges on their public storefronts — all without manual data re-entry.
This document is intended for the CarGurus integrations and dealer-success teams. It outlines exactly how ScaleDMS interoperates with CarGurus services, the data formats and transport mechanisms used, and the operational guarantees we provide to dealers running both systems together.
At a glance.
Four surfaces where ScaleDMS interoperates with CarGurus — built, shipped, and running for active dealers today.
Inventory syndication
Daily CSV feed conforming to the CarGurus Inventory Import specification, delivered via FTP to ftp.cargurus.com.
Lead ingestion
CarGurus lead emails are auto-parsed into structured leads inside the dealership's CRM, preserving Transaction ID, IMV, deal rating, and listing URL.
Deal Rating Badge
The official CarGurus Deal Rating Badge is embedded on every ScaleDMS-hosted dealer storefront and refreshes live.
Operational guardrails
Pre-flight validation, encrypted credentials, structured upload logging, and zero-vehicle protection prevent silent feed failures.
Inventory feed.
ScaleDMS produces a CarGurus-formatted CSV from each dealership's live inventory and uploads it on a daily schedule. The feed is fully compliant with the dealer-info-on-every-row format documented in the CarGurus Inventory Import specification.
Source
ScaleDMS
Tenant database
Destination
CarGurus
ftp.cargurus.com
CSV · UTF-8 · Daily
Transport
| Protocol | FTP |
|---|---|
| Host | ftp.cargurus.com |
| Authentication | Per-dealer username and password issued by CarGurus, stored encrypted at rest in ScaleDMS using authenticated symmetric encryption. |
| Filename convention | <DealerID>-YYYYMMDD.csv |
| Encoding | UTF-8, CRLF line endings |
| Cadence | Daily automated run, plus on-demand manual upload from the operations console. |
CSV column layout
Every row contains the dealer identity block followed by the vehicle block, exactly as CarGurus expects:
| Column | Type | Source |
|---|---|---|
DealerID | Required | CarGurus-assigned dealer identifier (CompanyId) |
DealerName | Required | Dealership profile |
DealerStreetAddressDealerCityDealerStateDealerZIP | Required | Dealership profile — validated by pre-flight |
DealerPhone | Optional | Dealership profile |
DealerWebsite | Optional | Dealership profile |
DealerCRMEmail | Required | Auto-generated inbound CRM address (preferred), with operator override |
VINStockNumberYearMakeModelTrim | Required | Vehicle record |
PriceMileage | Required | Vehicle record (asking price; mileage emitted blank, never zero, when unknown) |
ExteriorColorInteriorColorTransmissionTypeEngine | Optional | Vehicle record, normalized to CarGurus values |
InstalledOptions | Optional | Vehicle features list, comma-joined |
DealerComments | Optional | Vehicle description (HTML stripped, entities decoded) |
MainImage | Optional | First accepted gallery image URL |
ImageURLs | Optional | Pipe-delimited list of accepted image URLs (JPEG / PNG / GIF only) |
Certified | Derived | Y / N from CPO flag |
IsNew | Derived | Always N — ScaleDMS is a used-vehicle DMS |
Image handling
Photos are filtered to formats CarGurus accepts before they reach the feed, so a single non-conforming upload (HEIC, WebP, etc.) cannot demote a listing to “no photo” status on cargurus.com. ScaleDMS prefers a pre-sized marketplace gallery variant when available, falling back to the original asset so freshly-uploaded vehicles still appear in the same-day feed.
Inventory scope
The feed includes only vehicles that satisfy all of the following: not soft-deleted; owner type of DEALER_INVENTORY or CONSIGNMENT; status of AVAILABLE or RESERVED. Sold and archived vehicles are omitted by construction so a dealer's CarGurus storefront mirrors their live lot.
Lead ingestion.
CarGurus lead delivery uses email. ScaleDMS provisions a unique inbound email address for every dealership and registers it as the dealer's DealerCRMEmail in the inventory feed. Every CarGurus lead notification is captured, parsed, and materialized as a structured lead record — no human re-keying, no copy-paste from inbox to CRM.
Source
CarGurus
Lead email notification
Destination
ScaleDMS
Structured lead record
Parse · Normalize · Route
What gets parsed
| Captured field | Source in CarGurus email |
|---|---|
| First name, last name, email, phone, postal code | Standard contact block |
| VIN, stock number, vehicle description, listed price | Vehicle block |
| CarGurus deal rating | Great Deal / Good Deal / Fair Price / … badge text |
| CarGurus Instant Market Value (IMV) | “$X Below CarGurus IMV of $Y” line — both deltas captured |
| Listing URL | “View Listing on CarGurus” anchor |
| Customer comments | Comments section, HTML normalized |
| Lead timestamp (timezone-aware) | “Sent by CarGurus on …” line |
| CarGurus Transaction ID | Email metadata — preserved for downstream reconciliation |
| Reply-To email | Email headers — lets dealer staff reply directly to the shopper |
Quoted-printable encoding, HTML entities, and Unicode smart quotes are all normalized so the parsed payload is clean, structured data inside the dealer's leads workspace.
Why this matters for CarGurus
Dealers do not lose CarGurus-attributed lead context when the lead enters their DMS. The Transaction ID, IMV delta, deal rating, and direct listing back-link travel with the lead through the entire sales pipeline, which preserves attribution accuracy for both the dealer and CarGurus reporting.
Deal Rating Badge.
Dealer storefronts hosted by ScaleDMS embed the official CarGurus Deal Rating Badge on every vehicle detail page. The badge is loaded via the public CarGurus badge script and configured per the platform's published options:
var CarGurus = window.CarGurus || {};
window.CarGurus = CarGurus;
CarGurus.DealRatingBadge = CarGurus.DealRatingBadge || {};
CarGurus.DealRatingBadge.options = {
style: "STYLE2",
minRating: "FAIR_PRICE",
live: true,
liveInterval: 60000,
debug: false
};
// Loader script:
// https://static.cargurus.com/js/api/en_CA/1.0/dealratingbadge.js
Because the badge runs against the same VIN that ScaleDMS publishes to the CarGurus feed, the rating shown on a dealer's site stays consistent with the rating shown on cargurus.com.
Operational reliability.
ScaleDMS treats CarGurus integration as a first-class operational surface, with safeguards designed to prevent the most common silent-failure modes that affect inventory feeds in this category.
- 01
Pre-flight validation
Every upload — scheduled or manual — is gated behind a structured validator that checks dealer name, full street address, postal code, and a working CRM email before a single byte hits the FTP server. Issues are surfaced to operators with field-level messages instead of being deferred to a CarGurus support ticket later.
- 02
Zero-vehicle guard
A feed that would resolve to zero vehicles is rejected at the source. This prevents the “deletion-by-omission” failure mode where a misconfigured query silently removes a dealer's entire CarGurus storefront.
- 03
Encrypted credentials
CarGurus FTP passwords are stored using authenticated symmetric encryption. They are decrypted only at the moment of upload, in memory, and are never written to logs.
- 04
Structured upload log
Every upload attempt — success or failure — produces a durable audit record with vehicle count, file size, duration, trigger source (cron vs. operator-initiated), and the precise error message on failure. This gives both Enscale operations and the dealership a single source of truth for feed health.
- 05
Differentiated error reporting
Transient FTP errors, malformed dealer profiles, and upstream CarGurus rejections are reported as distinct conditions rather than collapsed into a generic “upload failed” status.
Onboarding a CarGurus dealership.
Activating the CarGurus integration on a ScaleDMS tenant is a self-serve flow inside the Enscale operations console. The dealer-success path looks like this:
- 01
Receive CarGurus FTP credentials
The dealer (or CarGurus on their behalf) provides the assigned CompanyId, FTP username, and FTP password.
- 02
Configure the connection
Enscale ops enters the credentials in the Inventory Feeds tab. The host defaults to ftp.cargurus.com; credentials are encrypted on save.
- 03
Run a preview
A preview upload generates the CSV and surfaces the row count, file size, and any pre-flight warnings. No data is sent to CarGurus during a preview.
- 04
Send the first live feed
A manual upload promotes the dealership into the daily schedule. Subsequent uploads run automatically.
- 05
Verify lead routing
The dealer's auto-generated CRM inbound address is registered with CarGurus so leads flow back into the platform from day one.
Compliance & data handling.
How dealer and shopper data is segregated, secured, and audited within the ScaleDMS ? CarGurus pipeline.
Tenant isolation
Each dealership's data, credentials, and feed configuration live in a strictly tenant-scoped data layer. Cross-tenant access is impossible by construction.
PII handling
Lead PII (name, email, phone, postal code) is stored under the dealer's tenant only, encrypted in transit, and access-controlled at the application layer.
Auditability
Every feed upload and every lead ingestion produces an immutable audit row. Dealer principals can review feed health and lead activity directly from the ScaleDMS dashboard.
Data minimization
The feed transmits only the fields the CarGurus specification requires; no unnecessary dealer or shopper PII is sent.
Partnership & validation
Talk to our integrations team.
For technical questions about this integration, partnership inquiries, or to validate a dealer's ScaleDMS ? CarGurus configuration, reach the Enscale Systems integrations team.
CarGurus and the CarGurus Deal Rating Badge are trademarks of CarGurus, Inc. ScaleDMS is a product of Enscale Systems Inc.