Skip to content

CSV Import Guide

  1. Download the CSV template for the entity type you want to import
  2. Fill in your data following the format conventions below
  3. Upload the file through the Adva web UI or the batch API
ConventionFormatExample
DatesISO 8601: YYYY-MM-DD2026-03-15
Times24-hour: HH:MM08:00
Booleanstrue / falsetrue
CurrencyPlain number, no $ or commas1234.56
Arrays (tags)Pipe-delimitedvip|repeat|commercial
Empty cellsTreated as null / not provided
Header rowRequired, must use exact snake_case names

Download and fill in the template for each entity type you need to import. Import them in tier order.


File: products.csv

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s product ID
namestringYesProduct name
descriptionstringNoProduct description
categorystringNoProduct category
unit_pricenumberNoPrice per unit
unit_typestringNoUnit of measure (sqft, lb, ea)
product_codestringNoInternal product code / SKU
is_activebooleanNotrue, false (default: true)Whether product is active

File: territories.csv

ColumnTypeRequiredDescription
external_idstringNoYour system’s territory ID
namestringYesTerritory name
regionstringNoRegion or district

File: brands.csv

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s brand ID
namestringYesBrand name
channel_typestringNodirect, reseller, franchise, marketplace, referralChannel type
is_activebooleanNotrue, false (default: true)Whether brand is active

File: customers.csv

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s customer ID
first_namestringNoFirst name
last_namestringNoLast name
emailstringNoValid email formatEmail address
phonestringNoPhone number
company_namestringNoCompany name (commercial)
lifecycle_statusstringNolead, prospect, customer, former_customer, inactive (default: lead)Customer lifecycle stage
customer_typestringNoresidential, commercialCustomer type
territory_external_idstringNoReferences territory external_id
assigned_rep_external_idstringNoReferences team member external_id
lead_sourcestringNoHow the lead was acquired
customer_numberstringNoDisplay customer number
notesstringNoFree-text notes
tagsstringNoPipe-delimited: tag1|tag2Tags for categorization

File: team_members.csv

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s team member ID
emailstringYesValid email formatEmail address (must be unique)
first_namestringNoFirst name
last_namestringNoLast name
phonestringNoPhone number
rolestringYesadmin, manager, sales_rep, production, financeTeam role
commission_tierstringNoCommission tier identifier
display_titlestringNoDisplay title (e.g., “Senior Rep”)
primary_territory_external_idstringNoReferences territory external_id
headshot_urlstringNoValid URLProfile photo URL

File: crews.csv

ColumnTypeRequiredDescription
external_idstringNoYour system’s crew ID
namestringYesCrew name
statusstringNoCrew status
notesstringNoNotes
territory_external_idstringNoReferences territory external_id
primary_contact_external_idstringNoReferences team member external_id

File: opportunities.csv

An opportunity is the primary unit of business — a residential or commercial project that links proposals, jobs, invoices, and commissions together.

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s opportunity ID
customer_external_idstringNoReferences customer external_id
assigned_rep_external_idstringNoReferences team member external_id
deal_numberstringNoDisplay opportunity number
namestringNoOpportunity name / title
deal_typestringNoproject, service_call, service_agreement, order (default: project)Opportunity type
stagestringNolead, appointment, proposal, sold, in_progress, completed, closed_lost (default: lead)Pipeline stage
sub_statusstringNoSub-status within stage
lead_datedateNoYYYY-MM-DDDate lead was created
sold_datedateNoYYYY-MM-DDDate opportunity was sold
completed_datedateNoYYYY-MM-DDDate opportunity was completed
lead_sourcestringNoLead acquisition source
is_self_genbooleanNotrue, falseWhether lead was self-generated

Column-name note. The on-disk DB columns deal_number and deal_type were intentionally NOT renamed by migration 20260424184344 — only the table (core.dealscore.opportunities) and the FK columns (*.deal_id*.opportunity_id) moved. CSV headers must match the actual column names.

File: locations.csv

ColumnTypeRequiredDescription
external_idstringNoYour system’s location ID
customer_external_idstringNoReferences customer external_id
street_line_1stringNoStreet address line 1
street_line_2stringNoStreet address line 2
citystringNoCity
statestringNoState / province
postal_codestringNoZIP / postal code
countrystringNoCountry code (e.g., US)
location_typestringNoLocation type (residential, commercial)
notesstringNoNotes

File: proposals.csv

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s proposal ID
customer_external_idstringYesReferences customer external_id
opportunity_external_idstringNoReferences opportunity external_id
proposal_numberstringYesDisplay proposal number
project_typestringNoType of project
statusstringNodraft, sent, viewed, approved, rejected, expired (default: draft)Proposal status
submit_datedateNoYYYY-MM-DDDate sent to customer
expires_datedateNoYYYY-MM-DDExpiration date
final_pricenumberNoFinal proposal price
project_notesstringNoProject notes

File: proposal_items.csv

ColumnTypeRequiredDescription
external_idstringNoYour system’s line item ID
proposal_external_idstringYesReferences proposal external_id
product_external_idstringNoReferences product external_id
descriptionstringNoLine item description
quantitynumberNoQuantity
unit_pricenumberNoPrice per unit
is_optionalbooleanNotrue, false (default: false)
is_selectedbooleanNotrue, false (default: true)
sort_ordernumberNoDisplay order

File: jobs.csv

A job is a work order — the actual field work that gets scheduled and completed.

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s job ID
customer_external_idstringYesReferences customer external_id
opportunity_external_idstringNoReferences opportunity external_id
proposal_external_idstringNoReferences proposal external_id
crew_external_idstringNoReferences crew external_id
lead_tech_external_idstringNoReferences team member external_id
job_numberstringYesDisplay job number
namestringNoJob name
job_typestringNoType of job
statusstringNopending, scheduled, in_progress, completed, cancelled (default: pending)Job status
scheduled_datedateNoYYYY-MM-DDScheduled date
scheduled_start_timestringNoHH:MMStart time
scheduled_end_timestringNoHH:MMEnd time
estimated_hoursnumberNoEstimated hours
production_start_datedateNoYYYY-MM-DDActual start date
production_end_datedateNoYYYY-MM-DDActual end date
total_costnumberNoTotal cost
total_revenuenumberNoTotal revenue

File: job_items.csv

ColumnTypeRequiredDescription
external_idstringNoYour system’s job item ID
job_external_idstringYesReferences job external_id
product_external_idstringNoReferences product external_id
namestringNoItem name
descriptionstringNoItem description
categorystringNoItem category
quantitynumberNoQuantity (default: 1)
unit_typestringNoUnit of measure
unit_costnumberNoCost per unit
labor_unit_costnumberNoLabor cost per unit
unit_pricenumberNoPrice per unit
sort_ordernumberNoDisplay order
notesstringNoNotes

File: invoices.csv

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s invoice ID
customer_external_idstringYesReferences customer external_id
opportunity_external_idstringNoReferences opportunity external_id
job_external_idstringNoReferences job external_id
invoice_numberstringYesDisplay invoice number
invoice_typestringNodeposit, progress, final, serviceInvoice type
statusstringNodraft, sent, paid, partial, overdue, cancelled, refunded (default: draft)Invoice status
subtotalnumberNoSubtotal before tax
tax_amountnumberNoTax amount
total_amountnumberNoTotal including tax
issue_datedateNoYYYY-MM-DDDate issued
due_datedateNoYYYY-MM-DDPayment due date
discountnumberNoDiscount amount
notesstringNoNotes

File: warranties.csv

ColumnTypeRequiredDescription
external_idstringNoYour system’s warranty ID
opportunity_external_idstringNoReferences opportunity external_id
job_external_idstringNoReferences job external_id
crew_external_idstringNoReferences crew external_id
customer_external_idstringNoReferences customer external_id
tech_external_idstringNoReferences team member external_id
proposal_external_idstringNoReferences proposal external_id
territory_external_idstringNoReferences territory external_id
warranty_statusstringNoWarranty status
urgencystringNoUrgency level
project_typestringNoProject type
production_startdateNoProduction start date
production_enddateNoProduction end date
warranty_completedateNoCompletion date
initial_reportstringNoInitial warranty report

File: transactions.csv

ColumnTypeRequiredDescription
external_idstringNoYour system’s transaction ID
opportunity_external_idstringNoReferences opportunity external_id
job_external_idstringNoReferences job external_id
employee_external_idstringNoReferences team member external_id
crew_external_idstringNoReferences crew external_id
warranty_external_idstringNoReferences warranty external_id
invoice_external_idstringNoReferences invoice external_id
territory_external_idstringNoReferences territory external_id
vendor_external_idstringNoReferences customer external_id (vendor)
transaction_datedateNoTransaction date
amountnumberNoTransaction amount
transaction_typestringNoTransaction type
payment_typestringNoPayment method
expense_typestringNoExpense category
check_numberintegerNoCheck number
sales_taxnumberNoSales tax amount
vendor_invoicestringNoVendor invoice number
notesstringNoNotes
review_statusstringNoReview status
categorystringNoCategory
is_approvedbooleanNotrue, false (default: false)

File: commissions.csv

Commissions are calculated per opportunity. Each record represents one team member’s commission on one opportunity.

ColumnTypeRequiredAllowed ValuesDescription
external_idstringNoYour system’s commission ID
opportunity_external_idstringYesReferences opportunity external_id
team_member_external_idstringYesReferences team member external_id
base_amountnumberYesBase revenue amount
commission_ratenumberYesCommission rate (decimal, e.g., 0.25 = 25%)
commission_amountnumberYesCalculated commission in USD
bonus_amountnumberNoAdditional bonus amount (default: 0)
statusstringNopending, payable, paid, cancelled (default: pending)Commission status
pay_period_startdateNoYYYY-MM-DDPay period start date
pay_period_enddateNoYYYY-MM-DDPay period end date
paid_atstringNoISO 8601 datetimeDate/time commission was paid

total_amount is automatically calculated as commission_amount + bonus_amount and cannot be set directly.


If your business has an activated industry solution pack (e.g., turf & landscaping), additional fields are available in the specifications, capabilities, or details JSONB columns on certain entity types.

For CSV import, include these as a JSON string in the appropriate column. For example:

specifications
"{""project_type"":""turf_installation"",""is_self_gen"":true}"

Contact your Adva administrator for the full list of industry pack fields available for your business.