Skip to main content

Item Actions (CTAs)

Item actions define the call-to-action (CTA) buttons displayed in the marketplace for each item — for example "Compare", "Get a Quote", or "Book Now". Actions can be defined directly on a leaf item or on a category ancestor and inherited downward, so that an entire category of items shares the same CTAs without duplication.

Action definitions

Each action is attached to a specific item and identified by an action code (e.g. COMPARE, QUOTE, BOOK) from the configured action list. An item can have at most one action per code.

Actions carry:

  • Display name — the button label, with internationalised translations
  • Description — tooltip or help text
  • Primary flag — whether this is the default action for the item
  • Display order — sort position when multiple actions are shown
  • Icon code — identifier for the UI icon

Action examples

DomainItemsActions
Insurance7 category items (Home, Vehicle, Health, ...)COMPARE + QUOTE on each
Radiology4 procedure itemsBOOK + COMPARE on each
Beauty4 service itemsBOOK on each

These domains and actions are examples. Additional domains can define the actions that make sense for their own marketplace workflows.

CTA inheritance

When the marketplace needs to display CTAs for an item, it uses nearest-ancestor inheritance:

  1. Start at the requested item.
  2. Walk upward through BELONGS_TO_CATEGORY ancestors.
  3. At each level, check for active actions.
  4. Stop at the nearest depth that has at least one action.
  5. Return all actions from that depth.

This means:

  • If an item has its own actions, those are returned (not inherited).
  • If an item has no actions, the resolver checks its parent category, then grandparent, and so on.
  • Inheritance stops at the first ancestor that defines actions — it does not merge actions from multiple levels.

Example: insurance CTA resolution

CAT-INS (no actions)
└── CAT-INS-HOME (has COMPARE + QUOTE actions)
└── Product X (no own actions)

When actions are resolved for Product X:

  1. Product X has no actions — walk up.
  2. CAT-INS-HOME has COMPARE and QUOTE — stop here.
  3. Both actions are returned, marked as inherited, with Product X as the target item.

Target vs. definition item

The resolver exposes both where the CTA is defined (the ancestor category) and which item the user is viewing (the target). When executing the action — creating a booking, starting a comparison — the target item must be used, not the ancestor where the CTA was originally defined.

Access control

Action definitions are reference data that can be shown on public catalogue pages where the related item is public.