Edit transfer template · MerchantWeeklyPayoutBatch

← back to Transfer templates
ⓘ Reference

A TransferTemplate is a multi-leg event — several Rail firings that the L1 layer expects to balance to expected_net by completion. Settlement cycles, return-bundle reconciliations, anything that's not just one rail firing on its own.

Required: name, expected_net (often 0 for fully-balanced cycles; fees may sum to a non-zero target), completion (the deadline expression like business_day_end+1d). leg_rails is edited after creation.

Where this sits

Open full diagram →
Identity
Unique template identifier.
Free-form prose.
Conservation
L1 Conservation flags any firing whose legs don't sum to this.
Completion
e.g. business_day_end+1d. Drives L1 Timeliness.
Composition
The Rails this template owns. Type below to add; drag to reorder; × removes. At least one rail required — add a replacement before removing the last, or delete the whole template instead.
Metadata-key field names whose matching values group the leg rails' firings into one shared Transfer (one per line, or comma-separated; e.g. disbursement_id). Each key MUST also be declared in every leg rail's metadata_keys (validator R12) — the library auto-derives them as PostedRequirements. Usually non-empty; blank ⇒ all firings of the leg rails join one Transfer.
Add new XOR group
Groups of Variable-direction leg rails that are mutually exclusive per template firing — exactly ONE member of each group fires per cycle (per-firing pick is deterministic). Each group needs ≥2 members, all members must be in this template's leg_rails, all must be Variable-direction SingleLegRails, and no rail may appear in two groups (validator C1a-d). Uncheck every box in a group to drop it on save.
Soft bounds
Optional soft bound on how many times this template's shared Transfer fires per period (honored when the template is a chain parent). Format: `min, max` (defaults per business day) OR `period: min, max` where period is business_day | pay_period | week | month. Validator W1a-b rejects min>max and negatives. Empty ⇒ one firing per business day when this template is a chain parent.
Cancel