Create a settlement rule
A standing instruction on a customer’s incoming payments. When a
payment into one of the customer’s internal accounts completes and
matches the rule, Grid splits it by the rule’s shares and pays each
share from the account the payment credited, through a payout run.
Each share sends the usual OUTGOING_PAYMENT.* webhooks.
Matching: a payment matches when it is in the rule’s currency and
any selector in match matches it. A customer’s rules are tried in
ascending priority, which is unique among its rules that are not
DELETED. The first ACTIVE rule that matches wins, so a payment
pays out under at most one rule.
Shares: a PERCENT share is the payment times basisPoints over
10,000, rounded down. A FIXED share is amount. A REMAINDER share
is what every other share leaves, wherever its row is; there is at
most one. Without one, the customer keeps the rest. Shares are paid,
and listed, in row order. The percentages add
up to at most 10,000, and to less than 10,000 with a REMAINDER
share. When a payment is smaller than its fixed and percentage shares
together, nothing is paid.
Destinations: the payout run row destinations. An ACTIVE
external account of the platform or of one of its customers. A
contact, held for a claim as on a payout run. An internal account of
the platform (GRID_CUSTOMER), paid as a transfer between internal
accounts under the rules of a quote between them.
Limits: a customer has at most 50 rules that are not DELETED,
and a rule has at most 20 shares.
Requires an API token with the UMA_TRANSACT permission. The rule’s
shares are paid as that token. Once the token is deleted, expires or
loses the permission, the rule pays nothing more and is paused.
Authorizations
API token authentication using format <api token id>:<api client secret>
Headers
Unique identifier for this rule. A retry with the same key and body returns the stored rule; the same key with a different body is rejected.
255"glossier-split"
Body
The customer whose incoming payments the rule splits.
"Customer:019542f5-b3e7-1d02-0000-000000000001"
What the platform calls the rule. It is the description of each payment the rule sends.
1 - 255"Glossier deal"
ISO 4217 code of the payments the rule splits. A payment in another currency never matches.
"USD"
A payment matches when any selector matches it. [{}] matches every payment in the rule's currency.
1 - 20 elementsThe shares, in the order they are paid. At most 20.
1Rules are tried in ascending priority. Unique among the customer's rules that are not DELETED. Omit it to try the rule after the customer's others, at one more than their highest priority, or 1 when the customer has none.
0 <= x <= 21474836471
How long after a payment completes the rule waits to pay it, for payments on rails other than ACH.
0 <= x <= 864000
How long after an ACH payment completes the rule waits to pay it. An ACH payment can be returned after it completes; a return that arrives while the execution is held skips it.
0 <= x <= 8640086400
Caps on what the rule pays, in the smallest unit of its currency. An execution that would go over a cap is skipped with LIMIT_EXCEEDED, and the customer keeps the payment.
Response
The rule this Idempotency-Key already created
System-generated unique settlement rule identifier
"SettlementRule:019542f5-b3e7-1d02-0000-000000000001"
"Customer:019542f5-b3e7-1d02-0000-000000000001"
"Glossier deal"
Status of a settlement rule.
PENDING_APPROVAL, ACTIVE, PAUSED, DELETED 1
"USD"
0
86400
Caps on what the rule pays, in the smallest unit of its currency. An execution that would go over a cap is skipped with LIMIT_EXCEEDED, and the customer keeps the payment.
"2026-11-06T18:00:00Z"
"2026-11-06T18:00:00Z"