Important: This reference is provided as a guide and may not reflect every field imported for your specific configuration. Certain import sections, such as User Defined Fields, Price Lists, and Discount matrices, may not be fully represented here. As the integration is updated over time, this document may become out of date. If you notice any missing fields, inaccuracies, or discrepancies between this document and the data in your system, please raise this with our support team so that we can review and update this article accordingly.
VAT rate fields
The following table shows the VAT rate fields imported from your Katana system.
CRM Field | Katana Source | Description |
Tax Code | tax_rates.id | Unique identifier for the tax rate, used to link tax to order lines |
Description | tax_rates.display_name | Human-readable name of the tax rate for display in the CRM |
Rate | tax_rates.rate | The actual tax percentage, used to calculate tax on transactions |
Warehouse fields
The following table shows the warehouse fields imported from your Katana system.
CRM Field | Katana Source | Description |
Warehouse Code | locations.id | Unique identifier for the warehouse/location |
Description | locations.name | Name of the warehouse for display in the CRM |
Import Stock Levels | Hard-coded to 1 | Indicates this warehouse should have its stock levels imported |
Obsolete | locations.deleted_at | Marks deleted Katana locations as obsolete in the CRM so they are no longer active |
Product fields
The Products import creates two CRM entity types: Product Categories and Product Items.
Product category fields
The following table shows the product category fields imported from your Katana system.
CRM Field | Katana Source | Description |
Category ID | products.category_name (or “NONE” if blank) | Groups products into categories for organisation in the CRM |
Description | products.category_name (or “None” if blank) | Display name for the category |
Product item fields
The following table shows the product item fields imported from your Katana system. One product item is created per variant.
CRM Field | Katana Source | Description |
Product Item ID | variants.sku | Primary key for the product in the CRM, matches the SKU |
Accounts ID | variants.id | Links the CRM product back to the specific variant in Katana |
SKU | variants.sku | The product’s stock keeping unit code |
Category | products.category_name | Associates the product with its category |
Product Family | products.id | Associates the product item with its parent product family |
Description | products.name + variants.config_attributes | Human-readable name; variant attributes are appended with ” / ” separators |
Internal Notes | products.additional_info | Stores supplementary product information from Katana |
Unit of Measure | products.uom | The unit this product is measured/sold in (e.g. “kg”, “pcs”) |
Sellable | Hard-coded to true | All imported items are assumed to be sellable |
Obsolete | Hard-coded to 0 (not obsolete) | Imported products are treated as active |
Selling Price | variants.sales_price | The standard sales price for this variant |
Cost Price | variants.purchase_price | The purchase/cost price for margin and profitability tracking |
Stocked | Hard-coded to 1 | Indicates this product tracks stock levels |
Is Assembly | products.is_producible (if BOM feature enabled) | Flags the item as an assembled product when it can be manufactured |
Sales ledger
The Sales Ledger import creates two CRM entity types: Sales Ledgers and Delivery Locations.
Sales ledger fields
The following table shows the customer account fields imported from your Katana system.
CRM Field | Katana Source | Description |
Sales Ledger ID | customers.id | Primary identifier linking the CRM account to Katana |
Accounts ID | customers.id | Cross-reference back to the Katana customer record |
customers.email | Primary email address for communications | |
Currency Code | customers.currency | The customer’s trading currency for pricing and invoicing |
Telephone | customers.phone | Contact phone number |
Name | customers.company (falls back to customers.name) | The display name of the account; prefers company name over individual name |
Display Description | customers.company (falls back to customers.name) | Shown as the account label in the CRM UI |
Address Line 1 | customers.addresses[default].line_1 | Default billing address line 1 |
Address Line 2 | customers.addresses[default].line_2 | Default billing address line 2 |
Address Line 3 (City) | customers.addresses[default].city | City from the default billing address |
Address Line 4 (State) | customers.addresses[default].state | State/region from the default billing address |
Postcode | customers.addresses[default].zip | Postal code from the default billing address |
Country | customers.addresses[default].country | Country name from the default billing address |
Country Code | Looked up from CRM by country name | ISO country code, resolved by matching the country name against the CRM’s country list |
Is B2C | Derived from ledger + contacts | Flags whether this is a business-to-consumer account (no company name) |
Note: The “default” address is the first address with entity_type == “billing”, or failing that, the first address in the list.
Delivery location fields
Delivery locations are created for each customer address that is not the default billing address.
CRM Field | Katana Source | Description |
Accounts ID | customers.addresses[].id | Links this location back to the Katana address record |
Name | customers.addresses[].company (falls back to entity_type) | Display name for the delivery location |
Address Line 1 | customers.addresses[].line_1 | Delivery address line 1 |
Address Line 2 | customers.addresses[].line_2 | Delivery address line 2 |
Address Line 3 (City) | customers.addresses[].city | City of the delivery address |
Address Line 4 (State) | customers.addresses[].state | State/region of the delivery address |
Postcode | customers.addresses[].zip | Postal code of the delivery address |
Country | customers.addresses[].country | Country of the delivery address |
Contact fields
Contacts are created from the Katana customer and each of their addresses. Only contacts with at least a first name or last name are imported.
CRM Field | Katana Source | Description |
Forename | customers.first_name / addresses[].first_name | Contact’s first name |
Surname | customers.last_name / addresses[].last_name | Contact’s last name |
customers.email / addresses[].email | Contact’s email address (lowercased and trimmed) | |
Phone Number | customers.phone / addresses[].phone | Contact’s telephone number |
Role Code | Set by base class (ContactRole) | Assigns a default role to all imported contacts |
Sales orders
The Sales Order import creates two CRM entity types: Sales Order Headers and Sales Transactions (one per order line).
Sales order header fields
The following table shows the sales order header fields imported from your Katana system.
CRM Field | Katana Source | Description |
Order Number | sales_orders.order_no | The human-readable order reference number |
Sales Ledger ID | sales_orders.customer_id | Links the order to the customer’s Sales Ledger record |
Order Date | sales_orders.order_created_date | Date the order was placed |
Accounts ID | sales_orders.id | Links the CRM order back to the Katana sales order |
Platform | Hard-coded to “Katana” | Identifies the source system of this order |
Status Flag | Hard-coded to “A” (Active) | Marks the order as active in the CRM |
Net Value | Calculated from order rows (price x qty - discount) | Total value before tax |
Tax Value | Calculated using CRM VAT rates | Total tax amount for the order |
Gross Value | Net + Tax | Total value including tax |
Base Net Value | Net value converted using conversion_rate | Net value in the base currency for reporting |
Base Tax Value | Tax value converted using conversion_rate | Tax value in base currency |
Base Gross Value | Gross value converted using conversion_rate | Gross value in base currency |
Currency Code | sales_orders.currency | The currency the order was placed in |
Due Date | sales_orders.delivery_date | Expected delivery date |
Order Status | sales_orders.status (title-cased) | Current fulfilment status (e.g. “In Progress”, “Delivered”) |
Sales transaction (order line) fields
The following table shows the sales transaction fields imported from your Katana system.
CRM Field | Katana Source | Description |
Document ID | sales_orders.id | Links the line back to its parent order in Katana |
Line Number | Sequential index (1-based) | Identifies the line’s position within the order |
Order Number | sales_orders.order_no | Associates the line with its order reference |
Product Item ID | variants.sku (looked up from sales_order_rows.variant_id) | Identifies which product was ordered |
Unit Price | sales_order_rows.price_per_unit | The price charged per unit for this line |
Order Quantity | sales_order_rows.quantity | Number of units ordered |
Line Value | Calculated (price x qty - discount) | Net monetary value of this line |
Gross Value | Line value + calculated tax | Total line value including tax |
Due Date | sales_orders.delivery_date | Delivery date for this line |
Account / Ledger | sales_orders.customer_id | Links the transaction to the customer |
Transaction Type | Derived from sales_orders.invoicing_status | “U” (uninvoiced) or “I” (invoiced), controls financial processing |
Currency Code | sales_orders.currency | Currency of the transaction |
Base Value | Line value converted using conversion_rate | Line value in base currency for reporting |
Quantity Delivered | sales_orders.status (full qty if “DELIVERED”, else 0) | Tracks fulfilment progress |
Accounts ID | sales_orders.id | Cross-reference to the Katana order |
Order Date | sales_orders.order_created_date | When the order was created |
Invoice Number | sales_orders.order_no (if invoiced) | Invoice reference, populated once invoiced |
Invoice Date | sales_orders.picked_date or order_created_date (if invoiced) | Date the invoice was raised |
Invoice Quantity | Order quantity (if invoiced, else 0) | Quantity that has been invoiced |
Discount Rate | Calculated from sales_order_rows.total_discount | Percentage discount applied to this line |
Stock by warehouse (inventory) fields
The following table shows the inventory fields imported from your Katana system.
CRM Field | Katana Source | Description |
Product Item ID | variants.sku (looked up from inventory.variant_id) | Identifies which product the stock record is for |
Warehouse Code | inventory.location_id | Identifies which warehouse holds the stock |
Free Stock | inventory.quantity_in_stock minus inventory.quantity_committed | Available stock that is not allocated to orders |
On Order | inventory.quantity_expected | Stock that has been ordered from suppliers but not yet received |
Sales Orders | inventory.quantity_committed | Stock reserved/committed against sales orders |
Physical Stock | inventory.quantity_in_stock | Total physical stock currently in the warehouse |
Bill of materials (BOM recipe) fields
The following table shows the BOM recipe fields imported from your Katana system.
CRM Field | Katana Source | Description |
Product Item ID | variants.sku (looked up from recipes.product_variant_id) | The assembled/parent product |
Component Product Item ID | variants.sku (looked up from recipes.ingredient_variant_id) | The component/ingredient used in the assembly |
Component Quantity | recipes.quantity | How many units of the component are needed per assembly |
