Payouts
Steam
How to create payouts to Steam account balance
Payouts allow you to send funds from your merchant account to Steam account balances.
Before you start
How to authorize requests
Before making requests, ensure that your merchant account has sufficient funds for the payout.
Creating a payout
Send a POST request to create a new payout:
POST /v1/payoutsRequest example
curl -X POST "https://api.panel.valutix.kz/v1/payouts" \
-H "Content-Type: application/json" \
-H "X-Api-Token: YOUR_API_TOKEN" \
-d '{
"amount": 1000,
"currency": "RUB",
"paymentType": "STEAM",
"account": {
"name": "Steam profile name or random string",
"requisites": "steam_login",
"userId": "user_12345"
},
"note": "Payout for order #1234"
}'Request parameters
Main parameters
| Field | Type | Required | Description |
|---|---|---|---|
| amount | number | ✅ Yes | Payout amount |
| currency | string | ✅ Yes | Currency code |
| paymentType | string | ✅ Yes | Payment type |
| account | object | ✅ Yes | Recipient details |
| note | string | ❌ No | Payout note |
Account object
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | ✅ Yes | Recipient name |
| requisites | string | ✅ Yes | Account details (steam login) |
| userId | string | ✅ Yes | User ID in your system |
Supported currencies
| Value | Description |
|---|---|
| RUB | Russian Ruble |
| KZT | Kazakhstani Tenge |
| UAH | Ukrainian Hryvnia |
| USD | US Dollar |
Payment types
| Value | Description |
|---|---|
| STEAM | Payout to Steam account |
Successful response example
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"merchantId": "123e4567-e89b-12d3-a456-426614174000",
"amount": "1000.50",
"account": {
"name": "John Doe",
"requisites": "super_macho",
"userId": "user_12345"
},
"status": "CREATED",
"type": "STEAM",
"requisites": {},
"statusMessage": null,
"metadata": null,
"createdAt": "2023-03-21T12:34:56Z",
"updatedAt": "2023-03-21T12:34:56Z",
"completedAt": null
}Response fields
| Field | Type | Description |
|---|---|---|
| id | string | Payout UUID |
| merchantId | string | Your merchant UUID |
| amount | string | Payout amount |
| account | object | Recipient details |
| status | string | Current payout status |
| type | string | Payment type |
| requisites | object | Additional requisites |
| statusMessage | string / null | Status message (if available) |
| metadata | object / null | Additional metadata |
| createdAt | string | Creation time |
| updatedAt | string | Last update time |
| completedAt | string / null | Completion time |
Payout statuses
| Status | Description |
|---|---|
| CREATED | Payout created |
| PENDING | Payout is processing |
| COMPLETED | Payout completed |
| FAILED | Payout failed |
| CANCELED | Payout canceled |
| EXPIRED | Payout expired |
Checking payout status
To check the current status of a payout, send a GET request:
GET /v1/payouts/{payoutId}Request example
curl -X GET "https://api.panel.valutix.kz/v1/payouts/123e4567-e89b-12d3-a456-426614174000" \
-H "X-Api-Token: YOUR_API_TOKEN"There are no webhooks for payouts. To receive status updates, poll the status by ID periodically (for example, every 30 minutes).
Recommendations
- Always check merchant balance before creating payouts
- Save the payout
idfrom the response for tracking status - Implement periodic polling for status updates
- Handle all possible status values in your integration