Инструкция к использованию API

Страница содержит информацию о подключении вашего продукта к платежному шлюзу GREENGO посредством API. Наш платежный шлюз позволяет принимать платежи в фиате от ваших клиентов. Выводить средства можно в криптовалюте или любым из других предоставленных способов, без ограничений.

Если вам необходима помощь в интеграции — наша команда поможет интегрировать шлюз в ваш продукт. Мы постарались сделать интеграцию максимально простой и гибкой.

Содержание:
Алгоритм работы сервиса

Алгоритм работы сервиса определен следующим образом:

  1. Обменик обращается по API к сервису для создания заявки на обмен и получению реквизитов для оплаты;
  2. После создания заявки, сервис выдает информацию по созданной заявке в формате JSON.
Протокол обмена данными и методы API

В качестве формата обмена данными используется JSON. Готовые реализации сериализаторов данного формата встроены во все популярные языки программирования.

Для подключения к API используется специальный токен Api-Secret который вы можете получить у администратора сервиса. После получения токена вы сможете оперировать с данным API сервиса. Api-Secret необходимо передавать в Header заголовках каждый раз при обращении:

$header = [
  "Api-Secret: ваш токен",
  "Content-Type: application/json"
];
Создание заявки

Для создания ордера необходимо отправить POST запроc по адресу: https://api.greengo.cc/api/v2/order/create. Ваш запрос должен иметь вид:

payment_method
метод оплаты (card = карты рф, kzt = карты Казахстана) Внимание, при использовании метода kzt (банк Казахстана) НЕОБХОДИМО связаться с оператором для уточнения % ставки
wallet
адрес кошелька куда отправить средства
from_amount
сумма в рублях (или валюте выбранного банка) которую клиент хочет отдать
{
 "payment_method": "card",
 "wallet": "bc1qXXXXXXXXXXXXXXXXXXXXX4zk",
 "from_amount": "5000",
}

В случае успешного выполнения запроса вы получите данные вида:

order_id
ID заявки
exchange_rate
курс обмена
amount_payable
сумма в рублях
amount_receivable
сумма в BTC
wallet_payment
реквизиты для оплаты клиентом
clients_wallet
кошелек клиента
created_at
дата создания
updated_at
дата обновления
order_status
статус (unconfirmed = заявка не подтверждена или только что созданая, awaiting = заявка ожидает оплату со стороны клиента, payed = оплачена клиентом, completed = заявка успешно выполнена, autocanceled = закрыта по истечению времени, canceled = отменена клиентом)
{
 "response": "success",
 "items": [
   {
     "order_id": "8090056",
     "exchange_rate": "3233561.44",
     "amount_payable": "9999",
     "amount_receivable": "0.00256657",
     "wallet_payment": "номер карты",
     "clients_wallet": "bc1qXXXXXXXXXXXXXXXXXXXXX4zk",
     "created_at": "2022-04-29 14:21:43",
     "updated_at": "2022-04-29 15:07:51",
     "order_status": "autocanceled"
   }
 ]
}

При запросе к сервису не забывайте про заголовки.

Важно! Все запросы выполняются без использования form-data и содержат в себе только JSON-содержимое. Пример получения содержимого запроса на языке PHP:

<?php
  $request = file_get_contents('php://input');
  var_dump(json_decode($request));
Информация о направлении обмена

Запрос с методом GET на https://api.greengo.cc/api/v2/directions использутеся для получения информации о направлении обмена. Ответ сервера в виде массива:

id
идентификатор направления
status
статус направления (0 выкл, 1 вкл)
order_ttl
время на оплату заявки
min_amount
минимальная сумма в рублях
max_amount
максимальная сумма в рублях
comission_percent
комиссия (курс блокчейна + коммиссия = курс сервиса)
fullname
название направления
current_course
курс сервиса (курс блокчейна + коммисия = курс сервиса)
[
 {
   "id": 1,
   "status": 1,
   "order_ttl": 45,
   "min_amount": 300
   "max_amount": 150000000,
   "comission_percent": 17,
   "fullname": "Банковская карта RUB на Bitcoin BTC",
   "current_course": 3232674.128
 },
 {
   "id": 12,
   "status": 1,
   "order_ttl": 45,
   "min_amount": 300,
   "max_amount": 15000000,
   "comission_percent": 17.9,
   "fullname": "Счет телефона RUB на Bitcoin BTC",
   "current_course": "3257540.85"
 }
]
Информация по вашим заявкам

Запрос с методом POST на https://api.greengo.cc/api/v2/order/check используется для получения информации по вашим заявкам, поддерживает запрос массивом.

Запрос должен быть вида (1, 2, 3 это ID заявок который вы создали у нас):

{
  "order_id": ["1", "2", "3"]
}

В ответ вы получите данные массив:

order_id
ID ордера
exchange_rate
курс обмена
amount_payable
сумма в рублях
amount_receivable
сумма в BTC
wallet_payment
реквизиты для оплаты клиентом
clients_wallet
кошелек клиента
created_at
дата создания
updated_at
дата обновления
order_status
статус (unconfirmed = заявка не подтверждена или только что созданая, awaiting = заявка ожидает оплату со стороны клиента, payed = оплачена клиентом, completed = заявка успешно выполнена, autocanceled = закрыта по истечению времени, canceled = отменена клиентом)
{
  "result": "true ",
  "data": {
    "orders": [
      {
        "order_id": "8090056",
        "exchange_rate": "3233561.44",
        "amount_payable": "9999",
        "amount_receivable": "0.00256657",
        "wallet_payment": "",
        "clients_wallet": "bc1qXXXXXXXXXXXXXXXXXXXXX4zk",
        "created_at": "2022-04-29 14:21:43",
        "updated_at": "2022-04-29 15:07:51",
        "order_status": "autocanceled"
      },
      {
        "order_id": "8090055",
        "exchange_rate": "3239886.8",
        "amount_payable": "9999",
        "amount_receivable": "0.00256156",
        "wallet_payment": "",
        "clients_wallet": "bc1qXXXXXXXXXXXXXXXXXXXXX4zk",
        "created_at": "2022-04-29 14:20:02",
        "updated_at": "2022-04-29 15:06:11",
        "order_status": "autocanceled"
      }
    ]
  }
}
Отмена созданных заявок

Запрос с методом POST на https://api.greengo.cc/api/v2/order/cancel используется для отмены заявок, поддерживает запрос массивом.

Запрос должен быть вида (1, 2, 3 это ID заявок который вы создали у нас):

{
  "order_id": ["1", "2", "3"]
}

В ответ вы получите данные массив:

{
 "result": "true",
 "data": {
   "cancel": [
     {
       8090056
     },
     {
       8090055
     }
   ]
 }
}
Заключение

С этой документацией вы должны быть готовы к интеграции с API. Если у вас возникли вопросы или проблемы, не стесняйтесь обращаться к нашей команде поддержки.

Мы ценим вашу интеграцию с нашим сервисом и готовы помочь вам в любое время. Удачной работы с платежным шлюзом GREENGO!