Payouts
The payout job runs every five minutes, and right away when an order is fulfilled or canceled or a payment is captured. For each order it asks core’screateOrderPayoutsWorkflow to decide:
The Transfer uses the order’s charge as
source_transaction, so it doesn’t wait for the funds to become available on your platform balance.
A seller with no payout account yet gets no payout row. When their account becomes active, their orders are queued and the next run pays them.
Orders of a store you ignore are skipped until you stop ignoring it.
The backlog
Every run first re-decides payouts that are failed or on hold, then looks for newly fulfilled orders since its checkpoint. A payout held because the order wasn’t fulfilled is paid on the first run after fulfillment. One held because the account wasn’t ready is paid on the first run after Stripe activates it. Payout statuses and their reasons are listed in the reference.Reversals
A refund on an order that was already paid out writes apayout_reversal of the seller’s share of the refund: the refund amount minus its proportional share of commission. Stripe reverses that much of the order’s Transfer, which moves it back from the seller’s balance to yours.
The reversal job runs every five minutes, and right away when a refund is created. A refund that lands before the payout is sent never needs a reversal. The payout is simply smaller.
Adjustments
Adjustments are amounts that don’t belong to an order: a monthly subscription fee, an extra invoice for a service, or a goodwill credit. Create one under Integrations → Stripe → Adjustments → Create. Pick the store, the type, the amount and currency, and an optional reason.
The settlement job sends pending adjustments at the start of every run, as Transfers in the right direction, and includes them in that run’s settlements. An adjustment for a store whose account isn’t ready waits, with the reason, and is retried every run.
Settlements
The settlement job runs every night at 01:03 UTC. For every seller and currency it builds one settlement covering the time since that seller’s previous settlement in that currency, or since the account was created. A settlement nets every line that reached the seller’s balance in that period and isn’t in another settlement yet:The bank payout
Inplugin mode the job then pays each settlement to the seller’s bank as a Stripe Payout:
- It checks the connected account’s available balance in the settlement currency.
- If the balance covers the amount, it creates the Payout, and the settlement waits for Stripe’s
payout.paidwebhook to become Paid out. - If the balance is short, usually because funds from recent captures aren’t available yet, the bank payout is held with
insufficient_available_balanceand retried on the next run.
provider mode the job records each settlement as Paid out right away, and Stripe’s automatic schedule moves the money. Use the settlement as the seller’s statement.
Settlement statuses
A negative period, where refunds and fees exceed sales, is aborted rather than charged. Its lines still appear on the seller’s statement.