Skip to main content

Merchants and Merchant Details

Merchants are the central entity of the XRM module. A merchant represents a marketplace participant or external business that offers goods or services through the platform. Every merchant is linked to a party profile, inheriting foundational identity data while adding merchant-specific attributes.

Why merchants extend parties

The platform uses a party model (PRM module) as the universal representation of any person or organisation. A merchant is a specialisation of a party — it has all the attributes of a party (name, contacts, addresses via party sites) plus merchant-specific concerns like logo images, type codes, and approval workflows.

This separation means:

  • Contact details, addresses, and relationships are managed at the party level
  • Merchant-specific attributes include branding, classification, and approval details
  • A single party can potentially have multiple merchant records across tenants

Merchant profile attributes

FieldPurpose
party_idLink to the underlying party record
merchant_nameFormal business name
merchant_name_i18nInternationalised name translations
merchant_common_nameTrading or display name
merchant_common_name_i18nInternationalised common name translations
merchant_descriptionFree-text description of the merchant
merchant_description_i18nInternationalised description translations
merchant_image_url_logoURL to the merchant's logo image
merchant_image_url_thumbnailURL to a smaller thumbnail image

Internationalisation

The internationalisation fields store translated versions of merchant names and descriptions. The base field holds the default value, while the internationalised field holds locale-keyed translations, enabling multi-language merchant profiles.

Status and classification codes

FieldPurpose
merchant_type_codeHigh-level merchant type (lookup value)
merchant_class_codeBusiness class within the type (lookup value)
merchant_status_codeOperational status (e.g. active, suspended)
merchant_approval_status_codeOnboarding approval workflow status

These code columns reference lookup values and enable filtering merchants by type, class, and lifecycle state. The merchant_approval_status_code tracks where a merchant is in the onboarding or re-approval process, separate from the operational merchant_status_code.

External references

FieldPurpose
merchant_external_sourceName of the external system the merchant was imported from
merchant_external_referenceIdentifier in the external system

These columns support data migration and integration scenarios where merchants originate from external platforms.

Authorisation model

Merchant access is tenant-scoped and permission-controlled. Merchant owners can access their own merchant records, and other users can view or modify merchant records only when they have the appropriate permissions.