Marketing · Fidcard

Embeds the external Fidcard loyalty-card platform, using the URL from the centre’s fidcard module.

AreaMarketing
Routesmarketing.fidcard · marketing.fidcard.index
Centre modulesfidcard
Staff levelsroot · admin
Modelsmodule-fidcard
UI labelmenu.navbar.marketing.fidcard
Coverage2 use cases · 1 happy · 3 failure

How it works

The most tightly restricted marketing feature — root and admin only. Related MOF button types exist for the app side: fidcard, fidcard_manager and fidcard_client, and the app-button manager enforces that only one fidcard-type button can exist (cms.mofs.only-one-fidcard-type). The centre form validates the Fidcard URL (configuration.center.fidcard-url.error).

Use cases

Why someone opens this (2)

  • Administering physical/virtual loyalty cards issued through Fidcard.
  • Exposing the customer-facing Fidcard view as an app button.

Path map

flowchart LR
    F(["Fidcard"]):::feat
    F --> H1["Fidcard console opened"]:::ok
    F -.-> X1["Module off or role insufficient"]:::bad
    F -.-> X2["Invalid configured URL"]:::bad
    F -.-> X3["Duplicate fidcard app button"]:::bad
    classDef feat fill:#b0432c,stroke:#b0432c,color:#ffffff,font-weight:bold
    classDef ok fill:#e3f1ea,stroke:#0d6b42,color:#0d4a2e
    classDef bad fill:#f7e6e2,stroke:#9a2d1c,color:#6e1f13

Happy paths

Fidcard console opened

  1. Centre has the fidcard module with a valid URL.
  2. An admin opens Marketing → Fidcard.
  3. fidcardURL resolves and the console loads in the frame.

Failure paths

QA checklist

Tick these off while regression-testing this feature. The boxes are plain Markdown, so progress is visible in git diffs.

  • ✅ Fidcard console opened
  • ⛔ Module off or role insufficient
  • ⛔ Invalid configured URL
  • ⛔ Duplicate fidcard app button

Implementation


Generated from doc/feature-inventory.json · id marketing-fidcard · commit 276788ca6