LE-KO Pay (v1.0.3)

Download OpenAPI specification:

LE-KO Payment

pay

Pay

.../earnings

✨ Get earnings

Authorizations:
bearerHttpAuthentication
query Parameters
cool_down_days
integer <integer> (CoolDownDays)
Example: cool_down_days=6

The number of days ago to calculate the time period, defaults to 6 for col down period.

header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Responses

Response Schema: application/json
coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

required
object (Balance)

Balance for a period.

amount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

firstPaymentCreatedAt
required
string <date-time> (FirstPaymentCreatedAt)

First payment date in a period. RFC-3339 format.

lastPaymentCreatedAt
required
string <date-time> (LastPaymentCreatedAt)

Last payment date in a period. RFC-3339 format.

required
object (TimePeriod)

A time period since the last remittance (or since sign up) and the date minus cool down days, defaults to 6 days ago.

start
required
string <date-time> (DateTime)

Date and time in RFC-3339

end
required
string <date-time> (DateTime)

Date and time in RFC-3339

required
object (Balance)

Balance for a period.

amount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

firstPaymentCreatedAt
required
string <date-time> (FirstPaymentCreatedAt)

First payment date in a period. RFC-3339 format.

lastPaymentCreatedAt
required
string <date-time> (LastPaymentCreatedAt)

Last payment date in a period. RFC-3339 format.

required
object (TimePeriod)

A time period since the last remittance (or since sign up) and the date minus cool down days, defaults to 6 days ago.

start
required
string <date-time> (DateTime)

Date and time in RFC-3339

end
required
string <date-time> (DateTime)

Date and time in RFC-3339

thresholdAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

overrideThresholdPlatformFeeAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

coolDownDays
required
integer <integer> (CoolDownDays)

The number of days ago to calculate the time period, defaults to 6 for col down period.

Response samples

Content type
application/json
{
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "totalBalance": {
    • "amount": "100 RUB",
    • "firstPaymentCreatedAt": "2024-11-29T12:09:53+00:00",
    • "lastPaymentCreatedAt": "2024-11-29T12:09:53+00:00",
    • "timePeriod": {
      • "start": "2024-11-29T12:09:53+00:00",
      • "end": "2024-11-29T12:09:53+00:00"
      }
    },
  • "availableBalance": {
    • "amount": "100 RUB",
    • "firstPaymentCreatedAt": "2024-11-29T12:09:53+00:00",
    • "lastPaymentCreatedAt": "2024-11-29T12:09:53+00:00",
    • "timePeriod": {
      • "start": "2024-11-29T12:09:53+00:00",
      • "end": "2024-11-29T12:09:53+00:00"
      }
    },
  • "thresholdAmount": "100 RUB",
  • "overrideThresholdPlatformFeeAmount": "100 RUB",
  • "coolDownDays": 6
}

.../recipients

✨ Get recipients

Authorizations:
bearerHttpAuthentication
query Parameters
page
integer (PageNumber) >= 0
Default: 0
Example: page=0

Page number

limit
integer (Limit) [ 1 .. 100 ]
Default: 10
Example: limit=10

Page limit

header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Responses

Response Schema: application/json
required
Array of objects
Array
recipientId
required
string <uuid> (RecipientId)

Recipient ID

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

name
required
string <text> (RecipientName)

Recipient name, used to fill in the name field in the payment receipt

address
required
string <text> (RecipientAddress)

Recipient address, used to fill in the address field in the payment receipt

phone
string <text> (RecipientPhone)

Recipient phone number, used to fill in the phone number field in the payment receipt

email
string <text> (RecipientEmail)

Recipient email, used to fill in the email field in the payment receipt

inn
required
string <text> (Inn)

Individual tax payer number

bankCode
required
string <text> (BankCode)

Bank code (a.k.a BIK)

bankAccountNumber
required
string <text> (BankAccountNumber)

Bank account number

bankAccountHolder
required
string <text> (BankAccountHolder)

Bank account holder

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

count
required
integer (Count)

Page entries count

page
required
integer (PageNumber) >= 0
Default: 0

Page number

limit
required
integer (Limit) [ 1 .. 100 ]
Default: 10

Page limit

total
required
integer (Total) >= 0
Default: 0

Total count

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "recipientId": "00000000-0000-1000-9000-510d9bb07630",
      • "coachId": "00000000-0000-1000-9000-510d9bb07630",
      • "name": "IP Bob Johnson's Gym",
      • "address": "Saint-Petersburg, Russia",
      • "phone": "+79991234567",
      • "email": "example@email.com",
      • "inn": "000000000000",
      • "bankCode": "200000000001056",
      • "bankAccountNumber": "1234567890",
      • "bankAccountHolder": "John Doe",
      • "createdAt": "2024-11-29T12:09:53+00:00",
      • "updatedAt": "2024-11-29T12:09:53+00:00"
      }
    ],
  • "count": 10,
  • "page": 0,
  • "limit": 10,
  • "total": 1000
}

.../recipients

✨ Create new Recipient

Authorizations:
bearerHttpAuthentication
header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Request Body schema: application/json
required
coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

name
required
string <text> (RecipientName)

Recipient name, used to fill in the name field in the payment receipt

address
required
string <text> (RecipientAddress)

Recipient address, used to fill in the address field in the payment receipt

phone
string <text> (RecipientPhone)

Recipient phone number, used to fill in the phone number field in the payment receipt

email
string <text> (RecipientEmail)

Recipient email, used to fill in the email field in the payment receipt

inn
required
string <text> (Inn)

Individual tax payer number

bankCode
required
string <text> (BankCode)

Bank code (a.k.a BIK)

bankAccountNumber
required
string <text> (BankAccountNumber)

Bank account number

bankAccountHolder
required
string <text> (BankAccountHolder)

Bank account holder

Responses

Response Schema: application/json
recipientId
required
string <uuid> (RecipientId)

Recipient ID

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

name
required
string <text> (RecipientName)

Recipient name, used to fill in the name field in the payment receipt

address
required
string <text> (RecipientAddress)

Recipient address, used to fill in the address field in the payment receipt

phone
string <text> (RecipientPhone)

Recipient phone number, used to fill in the phone number field in the payment receipt

email
string <text> (RecipientEmail)

Recipient email, used to fill in the email field in the payment receipt

inn
required
string <text> (Inn)

Individual tax payer number

bankCode
required
string <text> (BankCode)

Bank code (a.k.a BIK)

bankAccountNumber
required
string <text> (BankAccountNumber)

Bank account number

bankAccountHolder
required
string <text> (BankAccountHolder)

Bank account holder

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

Request samples

Content type
application/json
{
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "name": "IP Bob Johnson's Gym",
  • "address": "Saint-Petersburg, Russia",
  • "phone": "+79991234567",
  • "email": "example@email.com",
  • "inn": "000000000000",
  • "bankCode": "200000000001056",
  • "bankAccountNumber": "1234567890",
  • "bankAccountHolder": "John Doe"
}

Response samples

Content type
application/json
{
  • "recipientId": "00000000-0000-1000-9000-510d9bb07630",
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "name": "IP Bob Johnson's Gym",
  • "address": "Saint-Petersburg, Russia",
  • "phone": "+79991234567",
  • "email": "example@email.com",
  • "inn": "000000000000",
  • "bankCode": "200000000001056",
  • "bankAccountNumber": "1234567890",
  • "bankAccountHolder": "John Doe",
  • "createdAt": "2024-11-29T12:09:53+00:00",
  • "updatedAt": "2024-11-29T12:09:53+00:00"
}

.../recipients/{id}

✨ Get Recipient by id

Authorizations:
bearerHttpAuthentication
path Parameters
recipientId
required
string <uuid> (RecipientId)
Example: 00000000-0000-1000-9000-510d9bb07630

Recipient ID

header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Responses

Response Schema: application/json
recipientId
required
string <uuid> (RecipientId)

Recipient ID

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

name
required
string <text> (RecipientName)

Recipient name, used to fill in the name field in the payment receipt

address
required
string <text> (RecipientAddress)

Recipient address, used to fill in the address field in the payment receipt

phone
string <text> (RecipientPhone)

Recipient phone number, used to fill in the phone number field in the payment receipt

email
string <text> (RecipientEmail)

Recipient email, used to fill in the email field in the payment receipt

inn
required
string <text> (Inn)

Individual tax payer number

bankCode
required
string <text> (BankCode)

Bank code (a.k.a BIK)

bankAccountNumber
required
string <text> (BankAccountNumber)

Bank account number

bankAccountHolder
required
string <text> (BankAccountHolder)

Bank account holder

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

Response samples

Content type
application/json
{
  • "recipientId": "00000000-0000-1000-9000-510d9bb07630",
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "name": "IP Bob Johnson's Gym",
  • "address": "Saint-Petersburg, Russia",
  • "phone": "+79991234567",
  • "email": "example@email.com",
  • "inn": "000000000000",
  • "bankCode": "200000000001056",
  • "bankAccountNumber": "1234567890",
  • "bankAccountHolder": "John Doe",
  • "createdAt": "2024-11-29T12:09:53+00:00",
  • "updatedAt": "2024-11-29T12:09:53+00:00"
}

.../recipients/{id}

✨ Update Recipient

Authorizations:
bearerHttpAuthentication
path Parameters
recipientId
required
string <uuid> (RecipientId)
Example: 00000000-0000-1000-9000-510d9bb07630

Recipient ID

header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Request Body schema: application/json
required
coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

name
required
string <text> (RecipientName)

Recipient name, used to fill in the name field in the payment receipt

address
required
string <text> (RecipientAddress)

Recipient address, used to fill in the address field in the payment receipt

phone
string <text> (RecipientPhone)

Recipient phone number, used to fill in the phone number field in the payment receipt

email
string <text> (RecipientEmail)

Recipient email, used to fill in the email field in the payment receipt

inn
required
string <text> (Inn)

Individual tax payer number

bankCode
required
string <text> (BankCode)

Bank code (a.k.a BIK)

bankAccountNumber
required
string <text> (BankAccountNumber)

Bank account number

bankAccountHolder
required
string <text> (BankAccountHolder)

Bank account holder

Responses

Response Schema: application/json
recipientId
required
string <uuid> (RecipientId)

Recipient ID

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

name
required
string <text> (RecipientName)

Recipient name, used to fill in the name field in the payment receipt

address
required
string <text> (RecipientAddress)

Recipient address, used to fill in the address field in the payment receipt

phone
string <text> (RecipientPhone)

Recipient phone number, used to fill in the phone number field in the payment receipt

email
string <text> (RecipientEmail)

Recipient email, used to fill in the email field in the payment receipt

inn
required
string <text> (Inn)

Individual tax payer number

bankCode
required
string <text> (BankCode)

Bank code (a.k.a BIK)

bankAccountNumber
required
string <text> (BankAccountNumber)

Bank account number

bankAccountHolder
required
string <text> (BankAccountHolder)

Bank account holder

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

Request samples

Content type
application/json
{
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "name": "IP Bob Johnson's Gym",
  • "address": "Saint-Petersburg, Russia",
  • "phone": "+79991234567",
  • "email": "example@email.com",
  • "inn": "000000000000",
  • "bankCode": "200000000001056",
  • "bankAccountNumber": "1234567890",
  • "bankAccountHolder": "John Doe"
}

Response samples

Content type
application/json
{
  • "recipientId": "00000000-0000-1000-9000-510d9bb07630",
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "name": "IP Bob Johnson's Gym",
  • "address": "Saint-Petersburg, Russia",
  • "phone": "+79991234567",
  • "email": "example@email.com",
  • "inn": "000000000000",
  • "bankCode": "200000000001056",
  • "bankAccountNumber": "1234567890",
  • "bankAccountHolder": "John Doe",
  • "createdAt": "2024-11-29T12:09:53+00:00",
  • "updatedAt": "2024-11-29T12:09:53+00:00"
}

.../payments

✨ Get payments

Authorizations:
bearerHttpAuthentication
query Parameters
page
integer (PageNumber) >= 0
Default: 0
Example: page=0

Page number

limit
integer (Limit) [ 1 .. 100 ]
Default: 10
Example: limit=10

Page limit

orderId
string <text> (OrderId)
Example: orderId=00000000-0000-1000-9000-510d9bb07630

Order ID, uuid or text

header Parameters
x-current-user-id
required
string <uuid> (AthleteId)
Example: 00000000-0000-1000-9000-510d9bb07630

Athlete ID - user who pays money

Responses

Response Schema: application/json
required
Array of objects
Array
paymentId
required
string <uuid> (PaymentId)

Payment ID

externalId
required
string <uuid> (ExternalId)

External Payment ID

orderId
required
string <text> (OrderId)

Order ID, uuid or text

athleteId
required
string <uuid> (AthleteId)

Athlete ID - user who pays money

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

amount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

purpose
required
string (Purpose)

Payment Purpose

status
required
string (PaymentStatus)
Enum: "CREATED" "PAID" "REFUNDED" "FAILED" "CAPTURED"

Payment Status

paymentLink
string <uri> (PaymentLink)

Payment link, used to redirect the user to the payment page, not empty for just created payments

receiptLink
string <uri> (ReceiptLink)

Receipt link, used to redirect the user to the receipt page, not empty for paid payments

operation
object (OperationData)

Payment operation data can be anything, present only if payment requested by id with includeOperation query parameter

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

count
required
integer (Count)

Page entries count

page
required
integer (PageNumber) >= 0
Default: 0

Page number

limit
required
integer (Limit) [ 1 .. 100 ]
Default: 10

Page limit

total
required
integer (Total) >= 0
Default: 0

Total count

Response samples

Content type
application/json
{}

.../payments

✨ Create new Payment

Authorizations:
bearerHttpAuthentication
header Parameters
x-current-user-id
required
string <uuid> (AthleteId)
Example: 00000000-0000-1000-9000-510d9bb07630

Athlete ID - user who pays money

Request Body schema: application/json
required
totalAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

purpose
required
string (Purpose)

Payment Purpose

orderId
required
string <text> (OrderId)

Order ID, uuid or text

Array of objects (Service)
Array
coachDueAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

name
required
string (ServiceName)

Service Name

sessionId
required
string <text> (SessionId)

Training session ID, uuid or text

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

sendReceiptTo
string (SendReceiptTo)

Email or phone number to send the receipt to, optional if recipient email or phone number is provided

Responses

Response Schema: application/json
paymentId
required
string <uuid> (PaymentId)

Payment ID

externalId
required
string <uuid> (ExternalId)

External Payment ID

orderId
required
string <text> (OrderId)

Order ID, uuid or text

athleteId
required
string <uuid> (AthleteId)

Athlete ID - user who pays money

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

amount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

purpose
required
string (Purpose)

Payment Purpose

status
required
string (PaymentStatus)
Enum: "CREATED" "PAID" "REFUNDED" "FAILED" "CAPTURED"

Payment Status

paymentLink
string <uri> (PaymentLink)

Payment link, used to redirect the user to the payment page, not empty for just created payments

receiptLink
string <uri> (ReceiptLink)

Receipt link, used to redirect the user to the receipt page, not empty for paid payments

operation
object (OperationData)

Payment operation data can be anything, present only if payment requested by id with includeOperation query parameter

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

Request samples

Content type
application/json
{
  • "totalAmount": "100 RUB",
  • "purpose": "Training sessions with a coach",
  • "orderId": "00000000-0000-1000-9000-510d9bb07630",
  • "services": [
    • {
      • "coachDueAmount": "100 RUB",
      • "name": "Classic yoga session",
      • "sessionId": "00000000-0000-1000-9000-510d9bb07630"
      }
    ],
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "sendReceiptTo": "+79991234567 or example@email.com"
}

Response samples

Content type
application/json
{}

.../payments/{id}

✨ Get Payment by id

Authorizations:
bearerHttpAuthentication
path Parameters
paymentId
required
string <uuid> (PaymentId)
Example: 00000000-0000-1000-9000-510d9bb07630

Payment ID

query Parameters
includeOperation
boolean
Default: false
header Parameters
x-current-user-id
required
string <uuid> (AthleteId)
Example: 00000000-0000-1000-9000-510d9bb07630

Athlete ID - user who pays money

Responses

Response Schema: application/json
paymentId
required
string <uuid> (PaymentId)

Payment ID

externalId
required
string <uuid> (ExternalId)

External Payment ID

orderId
required
string <text> (OrderId)

Order ID, uuid or text

athleteId
required
string <uuid> (AthleteId)

Athlete ID - user who pays money

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

amount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

purpose
required
string (Purpose)

Payment Purpose

status
required
string (PaymentStatus)
Enum: "CREATED" "PAID" "REFUNDED" "FAILED" "CAPTURED"

Payment Status

paymentLink
string <uri> (PaymentLink)

Payment link, used to redirect the user to the payment page, not empty for just created payments

receiptLink
string <uri> (ReceiptLink)

Receipt link, used to redirect the user to the receipt page, not empty for paid payments

operation
object (OperationData)

Payment operation data can be anything, present only if payment requested by id with includeOperation query parameter

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

Response samples

Content type
application/json
{}

.../payments/{id}/refund

✨ Refund Payment

Authorizations:
bearerHttpAuthentication
path Parameters
paymentId
required
string <uuid> (PaymentId)
Example: 00000000-0000-1000-9000-510d9bb07630

Payment ID

header Parameters
x-current-user-id
required
string <uuid> (AthleteId)
Example: 00000000-0000-1000-9000-510d9bb07630

Athlete ID - user who pays money

Request Body schema: application/json
required
paymentId
required
string <uuid> (PaymentId)

Payment ID

sessionId
string <text> (SessionId)

Training session ID, uuid or text

sendReceiptTo
string (SendReceiptTo)

Email or phone number to send the receipt to, optional if recipient email or phone number is provided

Responses

Response Schema: application/json
isRefunded
required
boolean
paymentId
required
string <uuid> (PaymentId)

Payment ID

sessionId
string <text> (SessionId)

Training session ID, uuid or text

orderId
required
string <text> (OrderId)

Order ID, uuid or text

amount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

date
required
string <date> (Date)

Date in RFC-3339 format (YYYY-MM-DD)

Request samples

Content type
application/json
{
  • "paymentId": "00000000-0000-1000-9000-510d9bb07630",
  • "sessionId": "00000000-0000-1000-9000-510d9bb07630",
  • "sendReceiptTo": "+79991234567 or example@email.com"
}

Response samples

Content type
application/json
{
  • "isRefunded": true,
  • "paymentId": "00000000-0000-1000-9000-510d9bb07630",
  • "sessionId": "00000000-0000-1000-9000-510d9bb07630",
  • "orderId": "00000000-0000-1000-9000-510d9bb07630",
  • "amount": "100 RUB",
  • "date": "2024-11-29"
}

.../payments/{id}/capture

✨ Capture Payment

Authorizations:
bearerHttpAuthentication
path Parameters
paymentId
required
string <uuid> (PaymentId)
Example: 00000000-0000-1000-9000-510d9bb07630

Payment ID

header Parameters
x-current-user-id
required
string <uuid> (AthleteId)
Example: 00000000-0000-1000-9000-510d9bb07630

Athlete ID - user who pays money

Responses

Response Schema: application/json
result
required
boolean

Response samples

Content type
application/json
{
  • "result": true
}

.../remittances

✨ Create new Remittance

Authorizations:
bearerHttpAuthentication
header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Request Body schema: application/json
required
availableAmount
required
string <string> (AvailableAmount)

The available amount of payments to cash out. Taken from earnings object.

thresholdOverrideByFee
required
boolean
Default: false

Whether to override the threshold by fee. Defaults to false. If true, the fee will be deducted from remittance amount.

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

Responses

Response Schema: application/json
remittanceId
required
string <uuid> (RemittanceId)

Remittance ID

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

bankAcc
required
string

Bank account number

bankBik
required
string

Bank BIK number

recipientInn
required
string

Recipient INN number

recipientName
required
string

Recipient name

required
object (AmountBreakdown)
dueAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

paidAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

feeAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

thresholdAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

platformFeePercent
required
number

Platform fee percent

status
required
string (RemittanceStatus)
Enum: "WAITING" "FAILURE" "COMPLETE" "DELETED"

Remittance Status

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

Request samples

Content type
application/json
{
  • "availableAmount": "100.00 RUB",
  • "thresholdOverrideByFee": false,
  • "coachId": "00000000-0000-1000-9000-510d9bb07630"
}

Response samples

Content type
application/json
{
  • "remittanceId": "00000000-0000-1000-9000-510d9bb07630",
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "bankAcc": "string",
  • "bankBik": "string",
  • "recipientInn": "string",
  • "recipientName": "string",
  • "amountBreakdown": {
    • "dueAmount": "100 RUB",
    • "paidAmount": "100 RUB",
    • "feeAmount": "100 RUB"
    },
  • "thresholdAmount": "100 RUB",
  • "platformFeePercent": 0,
  • "status": "WAITING",
  • "createdAt": "2024-11-29T12:09:53+00:00",
  • "updatedAt": "2024-11-29T12:09:53+00:00"
}

.../remittances/{remittanceId}

✨ Get Remittance by id

Authorizations:
bearerHttpAuthentication
path Parameters
remittanceId
required
string <uuid> (RemittanceId)
Example: 00000000-0000-1000-9000-510d9bb07630

Remittance ID

header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Responses

Response Schema: application/json
remittanceId
required
string <uuid> (RemittanceId)

Remittance ID

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

bankAcc
required
string

Bank account number

bankBik
required
string

Bank BIK number

recipientInn
required
string

Recipient INN number

recipientName
required
string

Recipient name

required
object (AmountBreakdown)
dueAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

paidAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

feeAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

thresholdAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

platformFeePercent
required
number

Platform fee percent

status
required
string (RemittanceStatus)
Enum: "WAITING" "FAILURE" "COMPLETE" "DELETED"

Remittance Status

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

Response samples

Content type
application/json
{
  • "remittanceId": "00000000-0000-1000-9000-510d9bb07630",
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "bankAcc": "string",
  • "bankBik": "string",
  • "recipientInn": "string",
  • "recipientName": "string",
  • "amountBreakdown": {
    • "dueAmount": "100 RUB",
    • "paidAmount": "100 RUB",
    • "feeAmount": "100 RUB"
    },
  • "thresholdAmount": "100 RUB",
  • "platformFeePercent": 0,
  • "status": "WAITING",
  • "createdAt": "2024-11-29T12:09:53+00:00",
  • "updatedAt": "2024-11-29T12:09:53+00:00"
}

.../operations

✨ Get operations

Authorizations:
bearerHttpAuthentication
query Parameters
page
integer (PageNumber) >= 0
Default: 0
Example: page=0

Page number

limit
integer (Limit) [ 1 .. 100 ]
Default: 10
Example: limit=10

Page limit

start_date
string <date> (Date)
Example: start_date=2024-11-29

The start date, defaults to current week start.

end_date
string <date> (Date)
Example: end_date=2024-11-29

The end date, defaults to today.

type
string (OperationType)
Enum: "ALL" "INCOME" "PAYOUT"

The type of the operation/transaction.

header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Responses

Response Schema: application/json
required
Array of objects
Array
operationId
required
string <uuid> (OperationId)

Operation ID

operationType
required
string (OperationType)
Enum: "ALL" "INCOME" "PAYOUT"

The type of the operation/transaction.

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

PaymentOperation (object) or RemittanceOperation (object)
count
required
integer (Count)

Page entries count

page
required
integer (PageNumber) >= 0
Default: 0

Page number

limit
required
integer (Limit) [ 1 .. 100 ]
Default: 10

Page limit

total
required
integer (Total) >= 0
Default: 0

Total count

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "operationId": "00000000-0000-1000-9000-510d9bb07630",
      • "operationType": "ALL",
      • "coachId": "00000000-0000-1000-9000-510d9bb07630",
      • "createdAt": "2024-11-29T12:09:53+00:00",
      • "updatedAt": "2024-11-29T12:09:53+00:00",
      • "operation": {}
      }
    ],
  • "count": 10,
  • "page": 0,
  • "limit": 10,
  • "total": 1000
}

.../operations/{id}

✨ Get operation by id

Authorizations:
bearerHttpAuthentication
path Parameters
operationId
required
string <uuid> (OperationId)
Example: 00000000-0000-1000-9000-510d9bb07630

Operation ID

header Parameters
x-current-user-id
required
string <uuid> (CoachId)
Example: 00000000-0000-1000-9000-510d9bb07630

Coach ID - user who receives money

Responses

Response Schema: application/json
operationId
required
string <uuid> (OperationId)

Operation ID

operationType
required
string (OperationType)
Enum: "ALL" "INCOME" "PAYOUT"

The type of the operation/transaction.

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

PaymentOperation (object) or RemittanceOperation (object)
One of
paymentId
required
string <uuid> (PaymentId)

Payment ID

externalId
required
string <uuid> (ExternalId)

External Payment ID

orderId
required
string <text> (OrderId)

Order ID, uuid or text

athleteId
required
string <uuid> (AthleteId)

Athlete ID - user who pays money

amount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

purpose
required
string (Purpose)

Payment Purpose

status
required
string (PaymentStatus)
Enum: "CREATED" "PAID" "REFUNDED" "FAILED" "CAPTURED"

Payment Status

receiptLink
string <uri> (ReceiptLink)

Receipt link, used to redirect the user to the receipt page, not empty for paid payments

Response samples

Content type
application/json
{
  • "operationId": "00000000-0000-1000-9000-510d9bb07630",
  • "operationType": "ALL",
  • "coachId": "00000000-0000-1000-9000-510d9bb07630",
  • "createdAt": "2024-11-29T12:09:53+00:00",
  • "updatedAt": "2024-11-29T12:09:53+00:00",
  • "operation": {}
}

.../settings

✨ Get settings

Authorizations:
bearerHttpAuthentication
query Parameters
name
string (Name)
Example: name=cool-setting

The setting name.

Responses

Response Schema: application/json
required
Array of objects (Settings)
Array
id
required
string <uuid> (SettingId)

Setting ID

name
required
string (Name)

Setting Name

values
required
object (Values)

Settings values as map

active
required
boolean
createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

updatedAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

Response samples

Content type
application/json
{
  • "settings": [
    • {
      • "id": "00000000-0000-1000-9000-510d9bb07630",
      • "name": "cool-setting",
      • "values": {
        },
      • "active": true,
      • "createdAt": "2024-11-29T12:09:53+00:00",
      • "updatedAt": "2024-11-29T12:09:53+00:00"
      }
    ]
}

.../callbacks

✨ Callback

Authorizations:
bearerHttpAuthentication
query Parameters
callback_type
required
string (CallbackType)
Enum: "PAYMENT" "RECEIPT"

The type of the callback.

status
required
string (CallbackStatus)
Enum: "SUCCESS" "FAILURE"

The status of the operation.

tracking_id
required
string <text> (TrackingId)
Example: tracking_id=tracking_123

The tracking ID of the callback.

Responses

Response Schema: application/json
callbackType
required
string (CallbackType)
Enum: "PAYMENT" "RECEIPT"

The type of the callback.

status
required
string (CallbackStatus)
Enum: "SUCCESS" "FAILURE"

The status of the callback.

trackingId
required
string <text> (TrackingId)

Tracking ID

Response samples

Content type
application/json
{
  • "callbackType": "PAYMENT",
  • "status": "SUCCESS",
  • "trackingId": "tracking_123"
}

.../callbacks

✨ Callback

Authorizations:
bearerHttpAuthentication
query Parameters
callback_type
required
string (CallbackType)
Enum: "PAYMENT" "RECEIPT"

The type of the callback.

status
required
string (CallbackStatus)
Enum: "SUCCESS" "FAILURE"

The status of the operation.

tracking_id
required
string <text> (TrackingId)
Example: tracking_id=tracking_123

The tracking ID of the callback.

Request Body schema: application/json
object (CallbackBody)

The payload of the callback.

Responses

Response Schema: application/json
callbackType
required
string (CallbackType)
Enum: "PAYMENT" "RECEIPT"

The type of the callback.

status
required
string (CallbackStatus)
Enum: "SUCCESS" "FAILURE"

The status of the callback.

trackingId
required
string <text> (TrackingId)

Tracking ID

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "callbackType": "PAYMENT",
  • "status": "SUCCESS",
  • "trackingId": "tracking_123"
}

.../prices

✨ Calculate price

Authorizations:
bearerHttpAuthentication
header Parameters
x-current-user-id
required
string <uuid> (AthleteId)
Example: 00000000-0000-1000-9000-510d9bb07630

Athlete ID - user who pays money

Request Body schema: application/json
required
orderId
required
string <text> (OrderId)

Order ID, uuid or text

required
Array of objects (Service)
Array
coachDueAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

name
required
string (ServiceName)

Service Name

sessionId
required
string <text> (SessionId)

Training session ID, uuid or text

Responses

Response Schema: application/json
orderId
required
string <text> (OrderId)

Order ID, uuid or text

coachDueAmount
required
string <string> (ExactAmount) ^\d+(?:\.\d{2})?( [A-Z]{3})?$

The monetary amount as a string with two decimal places with optional currency code.

platformFeeAmount
required
string <string> (ExactAmount) ^\d+(?:\.\d{2})?( [A-Z]{3})?$

The monetary amount as a string with two decimal places with optional currency code.

totalAmount
required
string <string> (ExactAmount) ^\d+(?:\.\d{2})?( [A-Z]{3})?$

The monetary amount as a string with two decimal places with optional currency code.

vatAmount
string <string> (ExactAmount) ^\d+(?:\.\d{2})?( [A-Z]{3})?$

The monetary amount as a string with two decimal places with optional currency code.

platformFeePercentage
required
string <string> (PlatformFeePercentage)

The fee percentage.

vatPercentage
required
string <string> (VatPercentage)

The VAT percentage. Example: 20.00

required
Array of objects (ServicePrice)
Array
sessionId
required
string <text> (SessionId)

Training session ID, uuid or text

name
required
string (ServiceName)

Service Name

coachDueAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

platformFeeAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

totalAmount
required
string <string> (Amount) ^\d+?( [A-Z]{3})?$

The monetary amount as a string rounded to whole, without decimal places with optional currency code.

vatAmount
required
string <string> (ExactAmount) ^\d+(?:\.\d{2})?( [A-Z]{3})?$

The monetary amount as a string with two decimal places with optional currency code.

vatPercentage
required
string <string> (VatPercentage)

The VAT percentage. Example: 20.00

platformFeePercentage
required
string <string> (PlatformFeePercentage)

The fee percentage.

Request samples

Content type
application/json
{
  • "orderId": "00000000-0000-1000-9000-510d9bb07630",
  • "services": [
    • {
      • "coachDueAmount": "100 RUB",
      • "name": "Classic yoga session",
      • "sessionId": "00000000-0000-1000-9000-510d9bb07630"
      }
    ]
}

Response samples

Content type
application/json
{
  • "orderId": "00000000-0000-1000-9000-510d9bb07630",
  • "coachDueAmount": "100.12 RUB",
  • "platformFeeAmount": "100.12 RUB",
  • "totalAmount": "100.12 RUB",
  • "vatAmount": "100.12 RUB",
  • "platformFeePercentage": "3.3355",
  • "vatPercentage": "20.00",
  • "servicesPrices": [
    • {
      • "sessionId": "00000000-0000-1000-9000-510d9bb07630",
      • "name": "Classic yoga session",
      • "coachDueAmount": "100 RUB",
      • "platformFeeAmount": "100 RUB",
      • "totalAmount": "100 RUB",
      • "vatAmount": "100.12 RUB",
      • "vatPercentage": "20.00",
      • "platformFeePercentage": "3.3355"
      }
    ]
}

.../upstreams

✨ Get upstreams

Authorizations:
bearerHttpAuthentication
query Parameters
page
integer (PageNumber) >= 0
Default: 0
Example: page=0

Page number

limit
integer (Limit) [ 1 .. 100 ]
Default: 10
Example: limit=10

Page limit

name
required
string (UpstreamName)
Enum: "tochka_acquiring" "firstofd" "tochka_b2b_registry"
Example: name=tochka_acquiring

The upstream name.

Responses

Response Schema: application/json
required
Array of objects
Array
id
required
string <uuid> (Id)

Upstream ID

name
required
string (UpstreamName)
Enum: "tochka_acquiring" "firstofd" "tochka_b2b_registry"
trackingId
required
string <text> (TrackingId)

Tracking ID

request
required
object (Payload)

Settings values as map

response
required
object (Payload)

Settings values as map

method
required
string
Enum: "GET" "POST" "PUT" "DELETE"
scheme
required
string
host
required
string
path
required
string
query
required
string
statusCode
required
number
createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

count
required
integer (Count)

Page entries count

page
required
integer (PageNumber) >= 0
Default: 0

Page number

limit
required
integer (Limit) [ 1 .. 100 ]
Default: 10

Page limit

total
required
integer (Total) >= 0
Default: 0

Total count

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "id": "00000000-0000-1000-9000-510d9bb07630",
      • "name": "tochka_acquiring",
      • "trackingId": "tracking_123",
      • "request": {
        },
      • "response": {
        },
      • "method": "GET",
      • "scheme": "string",
      • "host": "string",
      • "path": "string",
      • "query": "string",
      • "statusCode": 0,
      • "createdAt": "2024-11-29T12:09:53+00:00"
      }
    ],
  • "count": 10,
  • "page": 0,
  • "limit": 10,
  • "total": 1000
}

.../documents

✨ Get documents by type and filters

Authorizations:
bearerHttpAuthentication
query Parameters
type
required
string
Value: "act"

Document type filter

order_id
string <uuid>

Filter documents by order ID

session_id
string <uuid>

Filter documents by session ID

page
integer (PageNumber) >= 0
Default: 0
Example: page=0

Page number

limit
integer (Limit) [ 1 .. 100 ]
Default: 10
Example: limit=10

Page limit

Responses

Response Schema: application/json
required
Array of objects
Array
id
required
string <uuid>

Document ID

eventId
required
string <uuid>

Event ID

bookingId
required
string <uuid>

Booking ID

coachId
required
string <uuid> (CoachId)

Coach ID - user who receives money

athleteId
string or null <uuid>

Athlete ID

documentType
required
string
Enum: "act_coach" "act_athlete"

Type of document

s3Key
required
string

S3 storage key

fileName
required
string

Original file name

downloadUrl
string <uri>

URL to download the document

createdAt
required
string <date-time> (DateTime)

Date and time in RFC-3339

count
required
integer (Count)

Page entries count

page
required
integer (PageNumber) >= 0
Default: 0

Page number

limit
required
integer (Limit) [ 1 .. 100 ]
Default: 10

Page limit

total
required
integer (Total) >= 0
Default: 0

Total count

Response samples

Content type
application/json
{
  • "data": [
    • {
      • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      • "eventId": "d6703cc8-9e79-415d-ac03-a4dc7f6ab43c",
      • "bookingId": "9a471128-954e-4e64-bde9-e8147015df89",
      • "coachId": "00000000-0000-1000-9000-510d9bb07630",
      • "athleteId": "69552696-5b24-4200-805d-78e46a91f565",
      • "documentType": "act_coach",
      • "s3Key": "string",
      • "fileName": "string",
      • "downloadUrl": "http://example.com",
      • "createdAt": "2024-11-29T12:09:53+00:00"
      }
    ],
  • "count": 10,
  • "page": 0,
  • "limit": 10,
  • "total": 1000
}