Split every order between sellers, fees and your platform, to the unit
A marketplace collects a payment once and owes it to several parties. LedgerForge splits one amount across many legs with allocation that conserves every unit, and records each leg as its own balanced transaction.
- Seller balancedistribution: "90%"90.00
- Platform feesdistribution: "left"10.00
Where this usually goes wrong
Percentage splits leak cents
Rounding each leg on its own leaves a remainder that belongs to nobody. Across thousands of orders it becomes a reconciliation line item.
Balances live in different systems
Seller earnings, platform fees and pending payouts are tracked in separate tables and spreadsheets, and they drift apart.
Refunds unwind the wrong legs
When an order is refunded, the reversal has to mirror the original split exactly, not a best guess reconstructed from logs.
Primitives in the open-source core, not patterns you rebuild
Split transfers
Send one amount to several destinations, or draw it from several sources, using percentage, fixed or "left" distributions.
Deterministic allocation
Allocation conserves every unit and leftover attribution never depends on floating-point sums. Mixed or malformed distributions are rejected.
Seller holds
Hold seller proceeds as inflight until delivery is confirmed, then commit, partially commit or void.
Fund lineage
Balances can track where their funds came from, with lineage queries for balances and transactions.
Reconciliation
Upload external records, define matching rules and run batch or instant reconciliation against ledger data.
Linked refunds
A refund reverses an APPLIED original for its exact units, and a durable claim stops concurrent retries from refunding twice.
One 100.00 USD order, split between seller and platform
{ "source": "bln_<buyer_wallet>", "destinations": [ { "identifier": "bln_<seller_balance>", "distribution": "90%" }, { "identifier": "bln_<platform_fees>", "distribution": "left" } ], "currency": "USD", "precise_amount": 10000, "precision": 100, "reference": "order-5531", "description": "Order 5531"}Request shape from the v1.0.0 API. IDs in angle brackets are placeholders.
Put a provable ledger under your money movement
Start with the open-source core, or let the LedgerForge team run it for you on dedicated infrastructure.