| core8 field name | Label | core8 | hubspot | salesforce | pipedrive | quickbooks | stripe | greenInvoice | 
|---|---|---|---|---|---|---|---|---|
| Object Name | product | product | Product2 | - | Item | product | Item | |
| name | Name * | name | name | Name | - | Name | name(maxLen=250?)(1) | name | 
| productType (enum) | Type | productType | - | - | - | Type -> NonInventory/Service(2) | - | - | 
| price | Price | price | - | - | - | UnitPrice | - (Stripe has separate Price obj) | price | 
| percentageBasedFees | Percentage Based Price | percentageBasedFees | - | - | - | - | - | - | 
| percentageFees | Percentage Fees | percentageFees | - | - | - | - | - | - | 
| currency (enum) | Currency | currency | - | - | - | - (QBO can store multi?) | (handled in Price object) | currency(some default) | 
| SKU | SKU | SKU | hs_sku | ProductCode | - | Sku | metadata.sku | - | 
| URL (2) | URL | URL | hs_url(2) | DisplayUrl(2) | - | - | - | - | 
| description | Description | description | description | Description | - | Description | partial (or null) | description(1) maybe | 
| notes | Notes | notes | - | - | - | - | - | - | 
| base_product | Base Product | base_product | - | - | - | - | - | - | 
| business_unit | Business Unit | business_unit | - | - | - | - | - | - | 
| deletedAt | (none) | deletedAt | archived(maybe) | IsDeleted(maybe) | - | Active(inverse) | active(inverse) | active(inverse) | 
(2) QuickBooks “Type” can be
NonInventory, Service, etc.; mapped from productType. Also see URL custom compare(2).