https://b2b-api.ggsel.com/api/v2
Получение access_token и refresh_token. Время жизни токена
доступа - 24 часа (1 день), время жизни токена перевыпуска - 168 часов (7 дней)
Header
Заголовок
Значение
Content-Type
application/json
Параметр
Тип
Обязательный
Описание
login
String
Да
Уникальное имя пользователя
password
String
Да
Пароль пользователя
curl -X POST https://b2b-api.ggsel.com/api/v2/auth/token \
-H " Content-Type: application/json" \
-d ' {
"login": "your_login",
"password": "0123456789abc"
}'
Параметр
Тип
Описание
access_token
String
Токен доступа
refresh_token
String
Токен перевыпуска основного токена
token_type
String
Тип токена доступа
{
"access_token" : " eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." ,
"refresh_token" : " eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." ,
"token_type" : " bearer"
}
Перевыпуск access_token и refresh_token. Время жизни токена
доступа - 24 часа (1 день), время жизни токена перевыпуска - 168 часов (7 дней)
Header
Заголовок
Значение
Content-Type
application/json
Параметр
Тип
Обязательный
Описание
refresh_token
String
Да
Токен перевыпуска
curl -X POST https://b2b-api.ggsel.com/api/v2/auth/refresh \
-H " Content-Type: application/json" \
-H " Authorization: Bearer <your_token>" \
-d ' {
"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}'
Параметр
Тип
Описание
access_token
String
Токен доступа
refresh_token
String
Токен перевыпуска основного токена
token_type
String
Тип токена доступа
{
"access_token" : " eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." ,
"refresh_token" : " eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." ,
"token_type" : " bearer"
}
Получение информации о пользователе
Header
Заголовок
Значение
Content-Type
application/json
Authorization
Bearer <your_token>
curl -X GET https://b2b-api.ggsel.com/api/v2/user/me \
-H " Content-Type: application/json" \
-H " Authorization: Bearer <your_token>" \
Параметр
Тип
Описание
login
String
Логин пользователя
name
String
Имя пользователя
balance
Decimal
Баланс пользователя
currency_version
String
Основная валюта продавца
role
String
Роль доступа
is_active
Bool
Статус доступа к продажам
is_beta
Bool
Статус доступа к dev ветке
{
"login" : " testerSales" ,
"name" : " Тестер" ,
"balance" : 3.4303 ,
"role" : " Sales" ,
"is_active" : true ,
"is_beta" : false ,
"currency_version" : " USD"
}
Получение баланса пользователя. В отличии от /user/me, этот ендпоинт
возвращает только строку с балансом пользователя. Лучше всего подходит
для точечных проверок баланса, так как выполняется быстрее.
Header
Заголовок
Значение
Content-Type
application/json
Authorization
Bearer <your_token>
curl -X GET https://b2b-api.ggsel.com/api/v2/user/balance \
-H " Content-Type: application/json" \
-H " Authorization: Bearer <your_token>" \
Параметр
Тип
Описание
balance
Decimal
Баланс пользователя
Запрос на выполнение проверки платежа. Транзакция добавляется
в историю, но не выполняется.
Если в запросе указать валюту USD, то она автоматически
конвертируется в RUB и наоборот. В ответе на запрос,
будут указаны обе суммы. Конвертация происходит по
актуальному курсу Steam ( Не ЦБРФ ).
Header
Заголовок
Значение
Content-Type
application/json
Authorization
Bearer <your_token>
Параметр
Тип
Обязательный
Описание
service_id
int
Да
Уникальный номер сервиса
transaction_id
String
Да
Уникальный ID транзакции, от 6 до 36 символов. Можно использовать UID
account
String
Да
Логин аккаунта, на который будет совершен платеж
amount
Decimal
Да
Сумма в валюте, что будет указана ниже
currency
String
Да
Трехсимвольный код валюты. Например: USD, RUB
curl -X POST https://b2b-api.ggsel.com/api/v2/payment/verify \
-H " Content-Type: application/json" \
-H " Authorization: Bearer <your_token>" \
-d ' {
"service_id": 92,
"transaction_id": "1234567890-ABC",
"account": "c_ced",
"amount": 1.00,
"currency": "USD"
}'
Параметр
Тип
Описание
transaction_id
String
Уникальный ID транзакции
amount_rub
Decimal
Сумма пополнения в RUB
amount_usd
Decimal
Сумма пополнения в USD
account
String
Баланс пользователя
date
Datetime
Баланс пользователя
status
String
Баланс пользователя
status_code
String
Баланс пользователя
{
"transaction_id" : " 1234567890-ABC" ,
"amount_rub" : " 95.81" ,
"amount_usd" : " 1.0000" ,
"account" : " _dochto_" ,
"date" : " 2024-10-14T17:08:25" ,
"status" : " Заявка принята и находится в процессе обработки" ,
"status_code" : " REQUEST_ACCEPTED"
}
Запрос на выполнение платежа.
Ответ на запрос, не возвращает окончательный статус о пополнении.
Успех или ошибки в пополнении возвращает callback_url.
Для точечных проверок статуса, можно использовать /payment/status
Header
Заголовок
Значение
Content-Type
application/json
Authorization
Bearer <your_token>
Параметр
Тип
Обязательный
Описание
transaction_id
String
Да
Уникальный ID транзакции, от 6 до 36 символов. Можно использовать UID
callback_url
String
Нет
URL-адрес, на который будут отправляться уведомления о статусе транзакции.
curl -X POST https://b2b-api.ggsel.com/api/v2/payment/execute \
-H " Content-Type: application/json" \
-H " Authorization: Bearer <your_token>" \
-d ' {
"transaction_id": "1234567890-ABC",
"callback_url": "https://b2b-api.ggsel.com/payment/status"
}'
Параметр
Тип
Описание
success
Bool
Указывает на статус успешности операции пополнения
message
String
Текстовое сообщение, которое описывает результат операции
data
Dict
Содержит детализированную информацию о пополнении
{
"success" : true ,
"message" : " Payment launched successfully" ,
"data" : {}
}
Запрос на проверку статуса платежа.
Header
Заголовок
Значение
Content-Type
application/json
Authorization
Bearer <your_token>
Параметр
Тип
Обязательный
Описание
transaction_id
String
Да
Уникальный ID транзакции, от 6 до 36 символов. Можно использовать UID
curl -X GET https://b2b-api.ggsel.com/api/v2/payment/status \
-H " Content-Type: application/json" \
-H " Authorization: Bearer <your_token>" \
-d ' {
"transaction_id": "1234567890-ABC"
}'
Параметр
Тип
Описание
transaction_id
String
Уникальный ID транзакции
amount_rub
Decimal
Сумма пополнения в RUB
amount_usd
Decimal
Сумма пополнения в USD
account
String
Баланс пользователя
date
Datetime
Баланс пользователя
status
String
Баланс пользователя
status_code
String
Баланс пользователя
{
"transaction_id" : " 1234567890-ABC" ,
"amount_rub" : " 95.81" ,
"amount_usd" : " 1.0000" ,
"account" : " _dochto_" ,
"date" : " 2024-10-14T17:08:25" ,
"status" : " Баланс успешно пополнен" ,
"status_code" : " PAYMENT_SUCCESS"
}
Запрос на получение списка транзакций.
Header
Заголовок
Значение
Content-Type
application/json
Authorization
Bearer <your_token>
Параметр
Тип
Обязательный
Описание
limit
Int
Нет
Лимит получаемых строк
offset
Int
Нет
Пропуск получаемых строк. Можно использовать для пагинации
sort_by
String
Нет
Сортировка по указанному полю
sort_order
String
Нет
Сортировка по возрастанию - asc, по убыванию - desc
curl -X GET https://b2b-api.ggsel.com/api/v2/transaction/view \
-H " Content-Type: application/json" \
-H " Authorization: Bearer <your_token>" \
-d ' {
"limit": 10,
"offset": 0,
"sort_by": "id",
"sort_order": "desc"
}'
Параметр
Тип
Описание
id
Int
Уникальный идентификатор транзакции внутри системы
transaction_id
String
Уникальный идентификатор транзакции
amount
Decimal
Сумма пополнения в RUB
amount_usd
Decimal
Сумма пополнения в USD
account
String
Аккаунт пополнения пользователя
cashback
Decimal
Кэшбэк, полученный при пополнении (если применимо)
date
Datetime
Дата и время проведения пополнения
issue_date
Datetime
Дата и время выдачи пополнения
status
String
Описание статуса транзакции
status_code
String
Код статуса транзакции
gift_code
String
Подарочный код, если применимо
parameter.param_id
Integer
Идентификатор параметра
parameter.name
String
Название параметра (например, "Пополнение")
parameter.external_param_id
Integer
Внешний идентификатор параметра
store.external_id
Integer
Внешний идентификатор магазина
store.name
String
Название магазина
store.deduction
Decimal
Комиссия магазина
service.service_id
Integer
Идентификатор сервиса
service.name
String
Название сервиса (например, "Steam CIS")
[
{
"id" : 49593 ,
"transaction_id" : " 1234567890-ABC" ,
"account" : " _dochto_" ,
"amount" : 95.81 ,
"amount_usd" : 1.0 ,
"cashback" : 0.02 ,
"date" : " 2024-10-14 17:08:25" ,
"issue_date" : " 2024-10-14 17:15:59" ,
"status" : " Баланс успешно пополнен" ,
"status_code" : " PAYMENT_SUCCESS" ,
"gift_code" : null ,
"parameter" : {
"param_id" : 92 ,
"name" : " Пополнение" ,
"external_param_id" : 666
},
"store" : {
"external_id" : 52 ,
"name" : " APIStore" ,
"deduction" : 0.0
},
"service" : {
"service_id" : 92 ,
"name" : " Steam CIS"
}
}
]
Допустимые статусы по транзакции
Статус код
Описание
DUPLICATE_TRANSACTION
Транзакция уже была выполнена ранее, повторное выполнение невозможно
INSUFFICIENT_FUNDS
Недостаточно средств на балансе для выполнения операции
PAYMENT_VERIFICATION_FAILED
Ошибка при проверке платежа
PAYMENT_CONFIRMATION_FAILED
Ошибка при подтверждении платежа
PAYMENT_SUCCESS
Баланс успешно пополнен
PAYMENT_IN_PROGRESS
Обрабатываем пополнение
PURCHASE_NOT_FOUND
Покупка не найдена, возможно, указан неверный код или она не существует
REQUEST_ACCEPTED
Заявка принята и находится в процессе обработки
CALCULATION_ERROR
Ошибка при выполнении расчёта
TOP_UP_ERROR
Внутренняя ошибка при пополнении баланса
Убедитесь, что запросы отправляются через HTTPS.
Обрабатывайте токены безопасно и избегайте их раскрытия в клиентском коде.
Если потребуется добавить дополнительные детали или изменить информацию, дайте знать!