Skip to content
River

Sheet RP-05The platform in detail

Structure and policies

How does the company’s structure steer its payments?

The company is kept as a tree of units: legal entities, regions, stores and online channels. Policies apply downwards, and each unit sees the payments of the units under it.

§ 1

In brief

policies
  • Group

    Retail group

    enforces that the banks settle to its accounts; sets a limit per payment

    enforced
    • Legal entity

      Stores

      • Region

        A region

        chooses its own terminal bank

        • A store asks for a higher limit

          ignored: a unit below cannot loosen it

    • Legal entity

      Online

      • Website and app

        capture after picking: applied

flows
Fig. 5.1 — policies pass down the tree, and limits may only be tightened below; flows are seen up the tree.
Units
Each unit has a parent; a unit sees and steers the units under it.
How settings meet
Most settings override the ones above; limits may only be lowered; allowed lists may only be narrowed.
Enforced
An enforced policy holds for every unit below, for example that the banks settle to the group.
Visible upwards
A parent sees the payments of its children; access to a unit reaches the units under it.

§ 2

In detail

2.1

The company as a tree

The platform keeps everyone who accepts payments in a tree of units, the way a directory keeps an organisation: the group, its legal entities, regions, stores and online channels. In the demo one legal entity runs the stores by region; another runs online trade with a website, an app, payment on delivery and corporate orders.

Demo scene 1

The structure of the demo group

The units, the money of each subtree over 30 days, and the units that enforce policies; the stores at the tills are folded into their regions.

Yarmarok Retail G…₴554.60M2Yarmarok Retail₴552.45MYarmarok Online₴2.15MKyiv and region₴155.32MWest₴132.15MEast₴130.52MCentre and south₴134.46Myarmarok.example₴888.69KYarmarok app₴837.63KPay on delivery (…₴149.63KCorporate orders₴273.86K↑ money of the subtree, 30 days↓ policies apply belowenforcesblocks inheritance

2.2

How a setting meets the ones above

Each policy declares how a lower setting meets the one resolved above it:

  • Most settings override: the lowest one wins.
  • Limits narrow: a lower unit may lower a maximum, never raise it.
  • Allowed instruments are a subset: a channel may take one away, never add one the group does not allow.
  • Blocked countries are a union: anyone may add one, nobody may remove one.
  • Any unit may enforce a setting; after that nothing below it counts.

Demo scene 2

How a setting is resolved

From the default down to the unit, for three settings of the demo group; each step says what happened to its value.

Yarmarok · Kyiv, Pozniaky · Who holds the money = banks settle to the merchant directlyYarmarok Retail Group

  1. default: the platform holds the money
  2. →Yarmarok Retail Group banks settle to the merchant directly applied

yarmarok.example · Capture = later: after picking or at shipment

  1. default: at once
  2. →yarmarok.example later: after picking or at shipment applied

Pay on delivery (QR) · Allowed instruments = QR transfer (NBU), Card

  1. default: Card, Apple Pay, Google Pay, Pay by bank, Bank transfer, QR transfer (NBU), Pay in parts, Pay later, E-wallet, Stablecoin (USDC), Cash at a kiosk, SEPA Direct Debit, Bonus points
  2. →Yarmarok Retail Group Card, Apple Pay, Google Pay, QR transfer (NBU), Pay by bank, Bank transfer, Pay in parts, Bonus points applied
  3. →Pay on delivery (QR) QR transfer (NBU), Card narrowed

2.3

Rules accumulate

Risk rules — a condition and an action: block, hold for review, route or notify — accumulate down the tree. A payment on the website meets the rules of every unit above it, lowest priority first; an enforced rule cannot be switched off below.

Demo scene 3

The rules a payment on the website meets

Every rule in force for the website, with the unit that set it.

RuleSet at
Five attempts in a day by one payer are reviewedYarmarok Online
Online baskets above UAH 40,000 with elevated risk are reviewedYarmarok Online
Foreign cards above UAH 10,000 are reviewedYarmarok Online

2.4

Visible upwards

Visibility is one test: is the payment’s unit within the subtree of the unit where the person holds a role? So a legal entity sees the payments of all its channels, and a region sees those of its stores.

Demo scene 4

What the online legal entity sees, last 30 days

Its channels, with the payments captured in each and their amount.

ChannelPaymentsCaptured
yarmarok.example524₴888,692.80
Yarmarok app488₴837,633.02
Pay on delivery (QR)124₴149,625.65
Corporate orders7₴273,863.00

2.5

Access and duties

Access is one role at one unit, reaching its whole subtree. Within the same units some duties are kept apart: whoever moves money does not clear its checks. In the demo the roles are given in the cabinet; the portal article describes access in detail.

§ 3

Read next