Skip to content

Custom fields glossary

Every custom field the plugin reads or writes, grouped by Shopware entity. There are three groups:

  1. Registered custom-field sets — created on plugin activation and visible/editable in the Shopware admin.
  2. Plugin-managed technical fields — written directly into the entity's customFields JSON; not shown as labelled admin fields.
  3. Pricing API runtime fields — provided to the storefront per product/position at request time; not persisted.

"Direction" indicates how the value gets there: Abacus → SW (written by sync), manual (filled by the integrator), or SW → Abacus (read during order export).

Registered custom-field sets

Product (abacus_custom_product)

FieldTypeDirectionPurpose
abacus_product_idNumberAbacus → SWAbacus product ID. Written during product sync; used to identify the product on order export and price lookups.
abacus_product_variant_idNumberAbacus → SWAbacus variant ID. Used together with the product ID for the correct variant.

Tax (abacus_custom_tax)

FieldTypeDirectionPurpose
abacus_tax_tax_idTextManualAbacus tax code ID. Filled by the integrator to map Shopware tax rates to Abacus; read during order export.

Customer (abacus_custom_customer)

FieldTypeDirectionPurpose
abacus_customer_subject_idTextAbacus → SWAbacus customer subject ID. Written by shopper sync.
abacus_shopper_idTextAbacus → SWAbacus shopper ID. Primary key for matching a Shopware customer to an Abacus shopper.
abacus_debtor_numberTextAbacus → SWAbacus debtor number. Used for logged-in pricing (customer-specific prices) and on order export.

Salutation (abacus_custom_salutation)

FieldTypeDirectionPurpose
abacus_salutation_idTextManualAbacus salutation ID. Filled by the integrator (language-aware in Shopware); used during customer import and order export.

Sales unit (abacus_custom_unit)

FieldTypeDirectionPurpose
abacus_unit_idTextManual / mappingMaps a Shopware unit to an Abacus sales unit code; matched during product sync.

Order (abacus_custom_order)

FieldTypeDirectionPurpose
abacus_order_idTextAbacus → SWAbacus order ID. Written when the Abacus document is processed into an order.
abacus_sales_order_idNumberAbacus → SWAbacus sales order ID. Used to link incoming order-status changes back to the Shopware order.
abacus_order_sentCheckboxSW → AbacusSet to true after the order is successfully exported to Abacus.

Shipping method (abacus_custom_shipping_method)

Used only when "Send shipping costs as line-item" is enabled.

FieldTypeDirectionPurpose
abacus_shipping_method_idNumberManualAbacus product ID representing the shipping method.
abacus_shipping_method_variant_idNumberManualAbacus variant ID for the shipping product.
abacus_shipping_method_tax_idTextManualAbacus tax code ID for shipping.
abacus_shipping_method_designationTextManualDesignation/name of the shipping line item in Abacus.

Sales channel (abacus_sales_channel, added via migration)

FieldTypeDirectionPurpose
abacus_sales_channel_is_used_for_abacus_syncBooleanManualActivates Abacus sync for a specific sales channel (multi-tenant / per-channel configuration).

Plugin-managed technical fields

These are written directly into the entity customFields JSON and are not registered as labelled admin fields. Integrators should not set them manually.

FieldEntityDirectionPurpose
abacus_address_idcustomer_addressAbacus → SWAbacus address (subject) ID stored on each billing/shipping address. Essential for mapping addresses on order export; written by shopper sync.
abacus_product_fallback_price_<salesChannelId>productAbacus → SWGross fallback price written during product sync (per sales channel). Used by the price-cache warmup to select products that have an Abacus price (> 0).
abacus_product_fallback_net_price_<salesChannelId>productAbacus → SWNet fallback price written during product sync. Currently not consumed by any plugin logic.

Pricing API runtime fields

Provided by the Pricing API to the storefront for each product/position at request time. These are part of the API response payload, not persisted custom fields.

FieldDirectionPurpose
abacus_price_typeAbacus → storefrontWhich Abacus price type the price came from: List (Standard), Graduation, Special or Action.
abacus_discount_detailsAbacus → storefrontRebate details for the position: type (percentage/amount), value, and discountType (price type the rebate came from).
abacus_default_guest_priceAbacus → storefrontThe guest (not-logged-in) price, included when a logged-in customer has a special price set.