Адрес

V 2.0

Эта функция генерирует уникальный биткойн-адрес, на который клиент может отправлять платежи. Этот адрес бессрочный и безлимитный по количеству транзакций.

Contents

Вы можете генерировать новый адрес под каждый отдельный платеж или использовать этот адрес как привязанный к клиенту, например для пополнения баланса аккаунта клиента на своем сайте. То есть в том случае, если клиент использует этот адрес для повторной покупки одного и того же товара или ему нужно пополнить баланс своего телефона с помощью биткоинов.

Обратный вызов

Вы будете получать колбэки с каждым подтверждением транзакции в сети, одинаково для обоих типов кошельков. Но форматы немного различаются. Пожалуйста, ознакомьтесь с документацией.
Обязательно указывайте схему HTTP и HTTPS в URL-адресе для колбэка. Мы также поддерживаем колбэки в TOR сеть.TOR project logo сеть.

 

Запрос:

{
   "callback":{                    #Данные для колбэка и сам колбэк являются опциональными полями
      "url",
      "data":{
         "invoice_id": 1234,
         "secret": "7j0ap91o99cxj8k9",
         "data3": "text3",
		 ... #any user parameters
      }
   }
}

Пример кода

Wallet ID
Callback URL KeyValue

+

{
   "callback":{
      "url" :  "http://example.com/callback"
   }
}
  
<?php
  $json_data = array (
    "callback" => array(
        'url'=> 'http://example.com/callback',
		'data'=> array (
            'invoice_id'=> "1234",
            'secret'=> "7j0ap91o99cxj8k9"
        )
    )
  );
  
  $wallet = "1aee83487b65b690305201fb4b42a081";
  $api_base = "https://apirone.com/api/v2/btc/wallet/". $wallet ."/address";
 
  $curl = curl_init($api_base);
  curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-Type: application/json"));
  curl_setopt($curl, CURLOPT_POST, 1);
  curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($json_data));
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  $http_status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
  $response = curl_exec($curl);
  curl_close($curl);
 

  $decoded = json_decode($response, true);
  echo "Please send the payment to the following bitcoin address: " .
  $decoded["address"];
?>
Сделать запрос
Результат выполнения:

JSON Описание схемы

Используйте метод POST для отправки объектов в JSON формате

Ссылка на страницу колбэка

Колбэк это массив из URL и данных пользователя

Параметры Описание Обязательное поле
{callback:url}
string,
=< 1024 chars

Ссылка на страницу колбэка
URL-адрес колбэка для получения данных об оплате. URL-адрес должен быть валидным.

Обязательное поле
{callback:data}
массив

Данные
Ассоциативный массив состоящий из пар ключ-значение. Здесь вы можете использовать дополнительные идентификаторы или секретные поля для большей безопасности.

Для примера 'secret' = '7j0ap91o99cxj8k9' or 'invoice_id'='1234'

Опциональное поле

Успешное выполнение

При успешном выполнении запрос возвращает четыре параметра в JSON-формате::
Параметры Описание Тип (длина)
{address} Сгенерированный биткоин-адрес для оплаты покупателем. string, 32 chars
{callback} Ссылка на страницу колбэка вашего интернет-магазина. string, max. 1024 chars
Пример результата выполнения:
{
   "callback":{
      "url":"http://example.com/callback",
      "data":{
         "invoice_id":1234,
         "secret":"7j0ap91o99cxj8k9"
      }
   },
   "address": "1FEGJSLDJJ6oSuJwur3fCD7TtQbYUjBV4z",
   "type": "p2sh-p2wpkh",
   "currency": "btc"
}

Сообщение об ошибке

Сообщение об ошибке возвращается в текстовом формате, как показано ниже:
Invalid wallet. - Неверный формат кошелька.
Too many destinations. - Слишком много адресов-получателей.
All destinations should be unique. - Адреса получателей должны быть уникальными и не повторяться.
Failed to decode JSON object: Expecting value: line 1 column 64 (char 63)- Не удалось декодировать объект JSON: ожидаемое значение: строка 1 столбец 64 (символ 63)
Invalid callback. The callback should contain valid URL and optionally data items. - Неверный колбэк. Колбэк должен содержать действительный URL и опциональные данные.