POST
/
payouts
/
create

Authorizations

api-key
string
headerrequired

Use the API key created under your merchant account from the HyperSwitch dashboard. API key is used to authenticate API requests from your merchant server only. Don't expose this key on a website or embed it in a mobile application.

Body

application/json
amount
integer
required

The payout amount. Amount for the payout in lowest denomination of the currency. (i.e) in cents for USD denomination, in paisa for INR denomination etc.,

Required range: x > 0
currency
enum<string>
required

The three letter ISO currency code in uppercase. Eg: 'USD' for the United States Dollar.

Available options:
AED,
AFN,
ALL,
AMD,
ANG,
AOA,
ARS,
AUD,
AWG,
AZN,
BAM,
BBD,
BDT,
BGN,
BHD,
BIF,
BMD,
BND,
BOB,
BRL,
BSD,
BTN,
BWP,
BYN,
BZD,
CAD,
CDF,
CHF,
CLP,
CNY,
COP,
CRC,
CUP,
CVE,
CZK,
DJF,
DKK,
DOP,
DZD,
EGP,
ERN,
ETB,
EUR,
FJD,
FKP,
GBP,
GEL,
GHS,
GIP,
GMD,
GNF,
GTQ,
GYD,
HKD,
HNL,
HRK,
HTG,
HUF,
IDR,
ILS,
INR,
IQD,
IRR,
ISK,
JMD,
JOD,
JPY,
KES,
KGS,
KHR,
KMF,
KPW,
KRW,
KWD,
KYD,
KZT,
LAK,
LBP,
LKR,
LRD,
LSL,
LYD,
MAD,
MDL,
MGA,
MKD,
MMK,
MNT,
MOP,
MRU,
MUR,
MVR,
MWK,
MXN,
MYR,
MZN,
NAD,
NGN,
NIO,
NOK,
NPR,
NZD,
OMR,
PAB,
PEN,
PGK,
PHP,
PKR,
PLN,
PYG,
QAR,
RON,
RSD,
RUB,
RWF,
SAR,
SBD,
SCR,
SDG,
SEK,
SGD,
SHP,
SLE,
SLL,
SOS,
SRD,
SSP,
STN,
SVC,
SYP,
SZL,
THB,
TJS,
TMT,
TND,
TOP,
TRY,
TTD,
TWD,
TZS,
UAH,
UGX,
USD,
UYU,
UZS,
VES,
VND,
VUV,
WST,
XAF,
XCD,
XOF,
XPF,
YER,
ZAR,
ZMW,
ZWL
routing
object

Routing Algorithm kind

connector
enum<string>[] | null

This field allows the merchant to manually select a connector with which the payout can go through.

Available options:
adyen,
adyenplatform,
cybersource,
ebanx,
payone,
paypal,
stripe,
wise
confirm
boolean | null
default: false

This field is used when merchant wants to confirm the payout, thus useful for the payout Confirm request. Ideally merchants should Create a payout, Update it (if required), then Confirm it.

payout_type
enum<string>

The payout_type of the payout request is a mandatory field for confirming the payouts. It should be specified in the Create request. If not provided, it must be updated in the Payout Update request before it can be confirmed.

Available options:
card,
bank,
wallet
payout_method_data
object

The payout method information required for carrying out a payout

billing
object
auto_fulfill
boolean | null
default: false

Set to true to confirm the payout without review, no further action required

customer_id
string | null
deprecated

The identifier for the customer object. If not provided the customer ID will be autogenerated. Deprecated: Use customer_id instead.

Maximum length: 255
customer
object

Passing this object creates a new customer or attaches an existing customer to the payment

return_url
string | null

The URL to redirect after the completion of the operation

business_country
enum<string>
Available options:
AF,
AX,
AL,
DZ,
AS,
AD,
AO,
AI,
AQ,
AG,
AR,
AM,
AW,
AU,
AT,
AZ,
BS,
BH,
BD,
BB,
BY,
BE,
BZ,
BJ,
BM,
BT,
BO,
BQ,
BA,
BW,
BV,
BR,
IO,
BN,
BG,
BF,
BI,
KH,
CM,
CA,
CV,
KY,
CF,
TD,
CL,
CN,
CX,
CC,
CO,
KM,
CG,
CD,
CK,
CR,
CI,
HR,
CU,
CW,
CY,
CZ,
DK,
DJ,
DM,
DO,
EC,
EG,
SV,
GQ,
ER,
EE,
ET,
FK,
FO,
FJ,
FI,
FR,
GF,
PF,
TF,
GA,
GM,
GE,
DE,
GH,
GI,
GR,
GL,
GD,
GP,
GU,
GT,
GG,
GN,
GW,
GY,
HT,
HM,
VA,
HN,
HK,
HU,
IS,
IN,
ID,
IR,
IQ,
IE,
IM,
IL,
IT,
JM,
JP,
JE,
JO,
KZ,
KE,
KI,
KP,
KR,
KW,
KG,
LA,
LV,
LB,
LS,
LR,
LY,
LI,
LT,
LU,
MO,
MK,
MG,
MW,
MY,
MV,
ML,
MT,
MH,
MQ,
MR,
MU,
YT,
MX,
FM,
MD,
MC,
MN,
ME,
MS,
MA,
MZ,
MM,
NA,
NR,
NP,
NL,
NC,
NZ,
NI,
NE,
NG,
NU,
NF,
MP,
NO,
OM,
PK,
PW,
PS,
PA,
PG,
PY,
PE,
PH,
PN,
PL,
PT,
PR,
QA,
RE,
RO,
RU,
RW,
BL,
SH,
KN,
LC,
MF,
PM,
VC,
WS,
SM,
ST,
SA,
SN,
RS,
SC,
SL,
SG,
SX,
SK,
SI,
SB,
SO,
ZA,
GS,
SS,
ES,
LK,
SD,
SR,
SJ,
SZ,
SE,
CH,
SY,
TW,
TJ,
TZ,
TH,
TL,
TG,
TK,
TO,
TT,
TN,
TR,
TM,
TC,
TV,
UG,
UA,
AE,
GB,
UM,
UY,
UZ,
VU,
VE,
VN,
VG,
VI,
WF,
EH,
YE,
ZM,
ZW,
US
business_label
string | null
deprecated

Business label of the merchant for this payout. Deprecated: Use profile_id instead.

description
string | null

A description of the payout

entity_type
enum<string>

Type of entity to whom the payout is being carried out to, select from the given list of options

Available options:
Individual,
Company,
NonProfit,
PublicSector,
NaturalPerson,
lowercase,
Personal
recurring
boolean | null
default: false

Specifies whether or not the payout request is recurring

metadata
object | null

You can specify up to 50 keys, with key names up to 40 characters long and values up to 500 characters long. Metadata is useful for storing additional, structured information on an object.

payout_token
string | null

Provide a reference to a stored payout method, used to process the payout.

profile_id
string | null

The business profile to use for this payout, especially if there are multiple business profiles associated with the account, otherwise default business profile associated with the merchant account will be used.

priority
enum<string>

The send method which will be required for processing payouts, check options for better understanding.

Available options:
instant,
fast,
regular,
wire,
cross_border,
internal
payout_link
boolean | null
default: false

Whether to get the payout link (if applicable). Merchant need to specify this during the Payout Create, this field can not be updated during Payout Update.

payout_link_config
object

Custom payout link config for the particular payout, if payout link is to be generated.

session_expiry
integer | null

Will be used to expire client secret after certain amount of time to be supplied in seconds (900) for 15 mins

Required range: x > 0
email
string | null
deprecated

Customer's email. Deprecated: Use customer object instead.

Maximum length: 255
name
string | null
deprecated

Customer's name. Deprecated: Use customer object instead.

Maximum length: 255
phone
string | null
deprecated

Customer's phone. Deprecated: Use customer object instead.

Maximum length: 255
phone_country_code
string | null
deprecated

Customer's phone country code. Deprecated: Use customer object instead.

Maximum length: 255

Response

200 - application/json
payout_id
string
required

Unique identifier for the payout. This ensures idempotency for multiple payouts that have been done by a single merchant. This field is auto generated and is returned in the API response.

Required string length: 30
merchant_id
string
required

This is an identifier for the merchant account. This is inferred from the API key provided during the request

Maximum length: 255
amount
integer
required

The payout amount. Amount for the payout in lowest denomination of the currency. (i.e) in cents for USD denomination, in paisa for INR denomination etc.,

currency
enum<string>
required

The three letter ISO currency code in uppercase. Eg: 'USD' for the United States Dollar.

Available options:
AED,
AFN,
ALL,
AMD,
ANG,
AOA,
ARS,
AUD,
AWG,
AZN,
BAM,
BBD,
BDT,
BGN,
BHD,
BIF,
BMD,
BND,
BOB,
BRL,
BSD,
BTN,
BWP,
BYN,
BZD,
CAD,
CDF,
CHF,
CLP,
CNY,
COP,
CRC,
CUP,
CVE,
CZK,
DJF,
DKK,
DOP,
DZD,
EGP,
ERN,
ETB,
EUR,
FJD,
FKP,
GBP,
GEL,
GHS,
GIP,
GMD,
GNF,
GTQ,
GYD,
HKD,
HNL,
HRK,
HTG,
HUF,
IDR,
ILS,
INR,
IQD,
IRR,
ISK,
JMD,
JOD,
JPY,
KES,
KGS,
KHR,
KMF,
KPW,
KRW,
KWD,
KYD,
KZT,
LAK,
LBP,
LKR,
LRD,
LSL,
LYD,
MAD,
MDL,
MGA,
MKD,
MMK,
MNT,
MOP,
MRU,
MUR,
MVR,
MWK,
MXN,
MYR,
MZN,
NAD,
NGN,
NIO,
NOK,
NPR,
NZD,
OMR,
PAB,
PEN,
PGK,
PHP,
PKR,
PLN,
PYG,
QAR,
RON,
RSD,
RUB,
RWF,
SAR,
SBD,
SCR,
SDG,
SEK,
SGD,
SHP,
SLE,
SLL,
SOS,
SRD,
SSP,
STN,
SVC,
SYP,
SZL,
THB,
TJS,
TMT,
TND,
TOP,
TRY,
TTD,
TWD,
TZS,
UAH,
UGX,
USD,
UYU,
UZS,
VES,
VND,
VUV,
WST,
XAF,
XCD,
XOF,
XPF,
YER,
ZAR,
ZMW,
ZWL
auto_fulfill
boolean
default: falserequired

Set to true to confirm the payout without review, no further action required

customer_id
string
required

The identifier for the customer object. If not provided the customer ID will be autogenerated.

Maximum length: 255
client_secret
string
required

It's a token used for client side verification.

return_url
string
required

The URL to redirect after the completion of the operation

business_country
enum<string>
required
Available options:
AF,
AX,
AL,
DZ,
AS,
AD,
AO,
AI,
AQ,
AG,
AR,
AM,
AW,
AU,
AT,
AZ,
BS,
BH,
BD,
BB,
BY,
BE,
BZ,
BJ,
BM,
BT,
BO,
BQ,
BA,
BW,
BV,
BR,
IO,
BN,
BG,
BF,
BI,
KH,
CM,
CA,
CV,
KY,
CF,
TD,
CL,
CN,
CX,
CC,
CO,
KM,
CG,
CD,
CK,
CR,
CI,
HR,
CU,
CW,
CY,
CZ,
DK,
DJ,
DM,
DO,
EC,
EG,
SV,
GQ,
ER,
EE,
ET,
FK,
FO,
FJ,
FI,
FR,
GF,
PF,
TF,
GA,
GM,
GE,
DE,
GH,
GI,
GR,
GL,
GD,
GP,
GU,
GT,
GG,
GN,
GW,
GY,
HT,
HM,
VA,
HN,
HK,
HU,
IS,
IN,
ID,
IR,
IQ,
IE,
IM,
IL,
IT,
JM,
JP,
JE,
JO,
KZ,
KE,
KI,
KP,
KR,
KW,
KG,
LA,
LV,
LB,
LS,
LR,
LY,
LI,
LT,
LU,
MO,
MK,
MG,
MW,
MY,
MV,
ML,
MT,
MH,
MQ,
MR,
MU,
YT,
MX,
FM,
MD,
MC,
MN,
ME,
MS,
MA,
MZ,
MM,
NA,
NR,
NP,
NL,
NC,
NZ,
NI,
NE,
NG,
NU,
NF,
MP,
NO,
OM,
PK,
PW,
PS,
PA,
PG,
PY,
PE,
PH,
PN,
PL,
PT,
PR,
QA,
RE,
RO,
RU,
RW,
BL,
SH,
KN,
LC,
MF,
PM,
VC,
WS,
SM,
ST,
SA,
SN,
RS,
SC,
SL,
SG,
SX,
SK,
SI,
SB,
SO,
ZA,
GS,
SS,
ES,
LK,
SD,
SR,
SJ,
SZ,
SE,
CH,
SY,
TW,
TJ,
TZ,
TH,
TL,
TG,
TK,
TO,
TT,
TN,
TR,
TM,
TC,
TV,
UG,
UA,
AE,
GB,
UM,
UY,
UZ,
VU,
VE,
VN,
VG,
VI,
WF,
EH,
YE,
ZM,
ZW,
US
entity_type
enum<string>
required

Type of entity to whom the payout is being carried out to, select from the given list of options

Available options:
Individual,
Company,
NonProfit,
PublicSector,
NaturalPerson,
lowercase,
Personal
recurring
boolean
default: falserequired

Specifies whether or not the payout request is recurring

status
enum<string>
required
Available options:
success,
failed,
cancelled,
initiated,
expired,
reversed,
pending,
ineligible,
requires_creation,
requires_confirmation,
requires_payout_method_data,
requires_fulfillment,
requires_vendor_account_creation
profile_id
string
required

The business profile that is associated with this payout

connector
string | null

The connector used for the payout

payout_type
enum<string>

The payout_type of the payout request is a mandatory field for confirming the payouts. It should be specified in the Create request. If not provided, it must be updated in the Payout Update request before it can be confirmed.

Available options:
card,
bank,
wallet
payout_method_data
object

The payout method information for response

billing
object
customer
object

Details of customer attached to this payment

business_label
string | null

Business label of the merchant for this payout

description
string | null

A description of the payout

metadata
object | null

You can specify up to 50 keys, with key names up to 40 characters long and values up to 500 characters long. Metadata is useful for storing additional, structured information on an object.

merchant_connector_id
string | null

Unique identifier of the merchant connector account

error_message
string | null

If there was an error while calling the connector the error message is received here

error_code
string | null

If there was an error while calling the connectors the code is received here

created
string | null

Time when the payout was created

connector_transaction_id
string | null

Underlying processor's payout resource ID

priority
enum<string>

The send method which will be required for processing payouts, check options for better understanding.

Available options:
instant,
fast,
regular,
wire,
cross_border,
internal
attempts
object[] | null

List of attempts

payout_link
object
email
string | null
deprecated

Customer's email. Deprecated: Use customer object instead.

Maximum length: 255
name
string | null
deprecated

Customer's name. Deprecated: Use customer object instead.

Maximum length: 255
phone
string | null
deprecated

Customer's phone. Deprecated: Use customer object instead.

Maximum length: 255
phone_country_code
string | null
deprecated

Customer's phone country code. Deprecated: Use customer object instead.

Maximum length: 255
unified_code
string | null

(This field is not live yet) Error code unified across the connectors is received here in case of errors while calling the underlying connector

Maximum length: 255
unified_message
string | null

(This field is not live yet) Error message unified across the connectors is received here in case of errors while calling the underlying connector

Maximum length: 1024