What breaks when HubSpot company address fields don't match Salesforce?
HubSpot stores a company's address as flat properties (city, state) while Salesforce prefixes the same concept (BillingCity, BillingState). A workflow or mapping built against one and pointed at the other silently writes to nonexistent fields or leaves AR remittance addresses blank — there's no error, because both systems accept the write and simply don't have a field by that name to reject.
Part of the finance integrations guide.
| Symptom | AR remittance address is blank or stale after a CRM migration or dual-write setup |
|---|---|
| Root cause | Field-name mismatch: HubSpot uses flat properties, Salesforce uses Billing*-prefixed fields |
| Why it's silent | Writing to a property name that doesn't exist on the target object doesn't error — it's simply ignored or creates an unused custom property |
| Where to check | Compare the exact property/field names configured in the integration mapping against each system's actual schema, not assumed names |
Why this happens during migrations and dual-CRM setups
Companies migrating from Salesforce to HubSpot (or running both during a transition) often carry over an existing field mapping without re-deriving it. Salesforce's Account object prefixes billing-address fields as BillingStreet, BillingCity, BillingState, BillingPostalCode, and BillingCountry. HubSpot's Company object uses flat, unprefixed properties for the same data — address, city, state, zip, country, confirmed directly in HubSpot's own API documentation. A mapping written for Salesforce's field names, pointed at a HubSpot company object, references properties that simply don't exist there.
Why it doesn't throw an error
Both HubSpot's and Salesforce's APIs generally accept writes to custom or unrecognized property names rather than rejecting them outright — HubSpot in particular will silently create a new custom property if one doesn't exist under the name you're writing to, rather than failing the request. The practical effect: the write "succeeds," the AR system's designated address field stays empty or shows a prior value, and nothing in the integration's logs flags it as a failure.
Next step
Map the finance workflow with the most exposure and prove the automation path.
Bring the invoice, contract, payment reconciliation, or customer finance workflow you have to defend at audit. Loopfour can map the trigger, controls, integrations, and approval loop.
Field mapping
Salesforce vs. HubSpot billing-address field names
| Concept | Salesforce Account field | HubSpot Company property |
|---|---|---|
| Street | BillingStreet | address |
| City | BillingCity | city |
| State | BillingState | state |
| Postal code | BillingPostalCode | zip |
Frequently Asked Questions
Sources
Related
Topic
AR & Collections
Accounts receivable is the money customers owe a business for goods or services already delivered on credit — a current asset on the balance sheet until it's collected. AR and collections, as a practi…
Read moreDefinition
What is an AR aging report and how do I read it?
An AR aging report lists every open invoice grouped by how long it's been outstanding — current, 1-30, 31-60, 61-90, and 90+ days past due. Read it by tracking the bucket distribution over time, not just the total; a shrinking current bucket and growing 90+ bucket signal a collections problem before it shows up in a blended DSO figure.
Read moreTopic
Integrations
Every finance automation vendor publishes an integrations page: a grid of logos, a claim of "seamless" connectivity, and not much else. That page answers a marketing question — does this vendor touch…
Read moreHow-to
How do I sync HubSpot company address fields for AR?
HubSpot stores a company's billing address as flat, unprefixed properties — address, city, state, zip, country — not nested under a Billing* namespace the way Salesforce does. Map those five properties directly to your AR remittance-address fields, then subscribe to company.propertyChange webhooks so an address edit in HubSpot reaches AR in real time instead of on the next poll.
Read more