Builds a requestPayout operation: opens a seller's cash out. It debits the seller's earned
account into PAYOUT_RESERVE and opens a payout saga in RESERVED, storing the USD quote at
the request-time CREDIT-to-USD payout rate; the background worker later submits exactly that
quote to the rail. No USD moves here and the credits never become spendable — only matured
earned credit is payable. Rejects with BELOW_MINIMUM, PAYOUT_TOO_SOON (carries
retryAfter), PAYEE_UNVERIFIED (when a payee directory is composed in),
INSUFFICIENT_FUNDS, FUNDS_IMMATURE (the matured portion alone must cover the amount;
carries availableAt), or ECONOMY_PAUSED for a user actor. A user may request only
their own payout. The idempotencyKey makes a double-tapped cash out open one saga, not two;
the committed transaction's meta.sagaId names the saga it opened.
Builds a
requestPayoutoperation: opens a seller's cash out. It debits the seller'searnedaccount intoPAYOUT_RESERVEand opens a payout saga inRESERVED, storing the USD quote at the request-time CREDIT-to-USD payout rate; the background worker later submits exactly that quote to the rail. No USD moves here and the credits never become spendable — only matured earned credit is payable. Rejects withBELOW_MINIMUM,PAYOUT_TOO_SOON(carriesretryAfter),PAYEE_UNVERIFIED(when a payee directory is composed in),INSUFFICIENT_FUNDS,FUNDS_IMMATURE(the matured portion alone must cover the amount; carriesavailableAt), orECONOMY_PAUSEDfor auseractor. Ausermay request only their own payout. TheidempotencyKeymakes a double-tapped cash out open one saga, not two; the committed transaction'smeta.sagaIdnames the saga it opened.