Skip to main content

Organizations

Organizations group members into B2B hierarchies: chains, groups, regional delegations. Designed for scenarios where the program participant is not an end consumer but a business entity (a pharmacy, a store, a distributor) that belongs to a larger structure.

Mental model

In IncentIA:

  • Member = the entity that participates in the loyalty program and accumulates points, cashback, or rewards. In a B2B program the member is the business itself (the pharmacy, the store, the partner), not an employee inside it.
  • Organization = a grouping of members (a pharmacy chain, a commercial group, a distributor network), represented internally as a node in ABP's OrganizationUnit tree.
  • Relation = a member can belong to one or more organizations (N..N relationship). The parent-child hierarchy between organizations provides the rest of the context.

Campaigns, by contrast, are independent: the same member can be participating in several campaigns simultaneously, and this does not affect its organizations.

Organization fields

  • Name — legal name.
  • Code — unique identifier within the tenant (e.g. CHAIN-ALPHA).
  • TypeRoot (headquarters), Group (subgroup), Branch (location/delegation), Individual (single-entity organization).
  • Parent organization (optional) — to build hierarchies.
  • Contact data — email, phone, address, tax ID.
  • Active — lets you disable a whole organization.

Create an organization

  1. Admin → LoyaltyOrganizationsCreate new.
  2. Fill name and code (required).
  3. Pick type and (optionally) parent organization.
  4. Fiscal/contact data if applicable.

The main view shows the full tree with search and member counts per level.

Assign members

From an organization's detail view:

  • Assign members → member search, multi-select.
  • View current members → paginated list with option to unassign.

Multiple membership (N..N)

A member can be assigned to several organizations at the same time. Assignments add up; adding a member to another organization does not remove them from the previous one. Real-world examples:

  • A regional consultant can be assigned to multiple pharmacies they manage across their territory.
  • A franchisee can belong to several chains when running stores across different groups.
  • A multi-partner pharmacy may sit in both the commercial group and the purchasing cooperative.

To remove a member from a specific organization, use View current membersRemove. That only breaks that link; the member's other assignments stay untouched.

Typical use cases

Pharma / healthcare

  • Root: pharmacy group (e.g. "Northern Pharmacies").
  • Branch: individual pharmacy (the member participating in the program).
  • Points, cashback and campaigns are associated to the pharmacy (member).
  • Reporting can aggregate up the hierarchy ("total points of Northern Pharmacies" = sum of its pharmacies).

B2B retail

  • Root: store chain.
  • Branch: individual store (the member).
  • Stores earn points or cashback from their purchases to the manufacturer.

Distributors / channel

  • Root: distributor.
  • Group: zone/region.
  • Branch: specific delegation (the member).
  • The main distributor sees aggregated activity; each delegation manages its own.

Why use organizations

  • Aggregated reporting by structure — see points, redemptions and campaigns filtered by an organization and its children.
  • Permission inheritance via OU tree — because organizations ride on ABP's OrganizationUnit tree, permissions granted to an admin on a parent organization propagate to its children automatically. No need to duplicate assignments level by level.
  • Multiple membership per member — the same member can live in several organizations at once (regional consultant, franchisee, multi-partner pharmacy) without duplicating their profile or their points.
  • Granular permissions (roadmap) — an org admin will be able to manage only their members.
  • Targeted campaigns (roadmap) — launch a campaign visible only to members of a specific branch of the tree.
Tip

If you only need attribute-based segmentation (e.g. "VIP members" or "members active in the last 30 days"), use Segments instead of Organizations. Organizations is meant for real hierarchies with parent-child relations.

Current limitations

  • No public API for creating organizations from external systems (admin UI only).
  • Bulk CSV import not implemented.