Skip to content
Marketplaces

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.

Split transfersFund lineageReconciliationRefunds
order-5531 · split10000 units
  • Seller balancedistribution: "90%"90.00
  • Platform feesdistribution: "left"10.00
legs9000 + 1000 = 10000
Illustration using the values in the API example below.
The problem

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.

API example

One 100.00 USD order, split between seller and platform

The seller receives 90% and the platform fee balance takes whatever is left, so the legs always sum to the 10000 units collected.
POST /transactions (split)Request shape
{  "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.