Create a payout

Creates a Hyperswitch payout for the authenticated organization via the engine SDK (`POST /v1/payouts`) and upserts a `settlementExtension` sidecar keyed by the returned `payout_id` with `approvalStatus: "PENDING"` (the MVS platform approval gate before funds move). Pass an `Idempotency-Key` header to make retries safe; a deterministic one (`mvspay_<orgId>_<uuid>`) is generated server-side if omitted. Unknown body fields are forwarded verbatim to the engine. Returns **201** with the created payout and its sidecar; a payout created without a `payout_id` cannot be persisted and yields a 502.

Authentication

x-api-keystring

A scoped MvsPayApiKey, e.g. mvspay_live_…. Mint and scope keys from the dashboard (Settings → API Keys).

Headers

Idempotency-KeystringOptional

Client-supplied idempotency key; a deterministic one is generated server-side if omitted.

Request

This endpoint expects an object.
amountintegerRequired

Minor units (cents).

currencystringRequired
customer_idstringOptional
payout_method_datamap from strings to anyOptional

Tokenized / saved payout-method data forwarded to the engine.

auto_fulfillbooleanOptional
Fulfill the payout immediately after confirmation.
confirmbooleanOptional
Confirm the payout on creation.
descriptionstringOptional
metadatamap from strings to anyOptional

Response

The created payout and its persisted settlement-extension sidecar.

payoutobject

Hyperswitch payout response. Loosely typed; extra Hyperswitch fields pass through.

extensionobject

Org-scoped sidecar persisted alongside the Hyperswitch payout. Carries the MVS platform approval workflow (the gate before payout funds move).

Errors

401
Unauthorized Error
403
Forbidden Error
500
Internal Server Error
502
Bad Gateway Error