Payment Docs
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/payouts

Request 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

FieldTypeRequiredDescription
amountnumber✅ YesPayout amount
currencystring✅ YesCurrency code
paymentTypestring✅ YesPayment type
accountobject✅ YesRecipient details
notestring❌ NoPayout note

Account object

FieldTypeRequiredDescription
namestring✅ YesRecipient name
requisitesstring✅ YesAccount details (steam login)
userIdstring✅ YesUser ID in your system

Supported currencies

ValueDescription
RUBRussian Ruble
KZTKazakhstani Tenge
UAHUkrainian Hryvnia
USDUS Dollar

Payment types

ValueDescription
STEAMPayout 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

FieldTypeDescription
idstringPayout UUID
merchantIdstringYour merchant UUID
amountstringPayout amount
accountobjectRecipient details
statusstringCurrent payout status
typestringPayment type
requisitesobjectAdditional requisites
statusMessagestring / nullStatus message (if available)
metadataobject / nullAdditional metadata
createdAtstringCreation time
updatedAtstringLast update time
completedAtstring / nullCompletion time

Payout statuses

StatusDescription
CREATEDPayout created
PENDINGPayout is processing
COMPLETEDPayout completed
FAILEDPayout failed
CANCELEDPayout canceled
EXPIREDPayout 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 id from the response for tracking status
  • Implement periodic polling for status updates
  • Handle all possible status values in your integration

See also

On this page