Marketplace
Split payments across submerchants and pay submerchants out. Onboarding and KYC are handled in the dashboard.
2 endpoints
POST
/v1/payments/sessionsOptionalCreate a payment session that splits the captured amount across one or more submerchants. Each split names a submerchant and its share; the platform keeps the remainder. Split recipients must be active (KYC-approved).
Request Parameters
| Name | Type | Required | Description |
|---|---|---|---|
transactionId | string | Required | Unique merchant transaction id |
amount | integer | Required | Total amount in kuruş |
currency | string | Required | Always "TRY" |
returnUrl | string | Required | Redirect URL after checkout |
splits | array | Required | [{submerchantId, amountMinor}] — the platform keeps the remainder |
JSONRequest Example
{
"transactionId": "ORDER-2026-777",
"amount": 30000,
"currency": "TRY",
"returnUrl": "https://marketplace.example.com/return",
"splits": [
{
"submerchantId": "sub_1a2b3c4d",
"amountMinor": 20000
},
{
"submerchantId": "sub_5e6f7081",
"amountMinor": 8000
}
]
}JSONResponse Example
{
"sessionId": "4d4e8a9c-1f2a-7b8c-9d0e-1f3f1c9a2e6b",
"checkoutUrl": "https://pay.kvell.group/s/4d4e8a9c-1f2a-7b8c-9d0e-1f3f1c9a2e6b",
"expiresAt": "2026-04-13T10:30:00Z",
"amount": 30000,
"currency": "TRY",
"status": "active"
}POST
/v1/payoutsOptionalPay a submerchant out. A parent merchant passes submerchantId; the server sources the destination IBAN/holder from the submerchant record (a submerchant's own key can only pay itself). Routes to the submerchant's ledger accounts and lower limits.
Request Parameters
| Name | Type | Required | Description |
|---|---|---|---|
submerchantId | string | Required | Submerchant to pay (IBAN/holder sourced server-side) |
rail | string | Required | "fast" | "eft" | "card" |
amountMinor | integer | Required | Amount in kuruş |
currency | string | Required | Always "TRY" |
clientReference | string | Optional | Merchant pass-through reference |
JSONRequest Example
{
"submerchantId": "sub_1a2b3c4d",
"rail": "fast",
"amountMinor": 20000,
"currency": "TRY"
}JSONResponse Example
{
"payoutId": "1a2b3c4d-5e6f-7081-92a3-b4c5d6e7f809",
"status": "pending",
"submerchantId": "sub_1a2b3c4d"
}Category Summary
Total Endpoints
2
Base Domain
api.pay.kvell.group