Интеграция Volet API на сайт

Интеграция Volet API в ваш сайт — это простой процесс, который поможет вам предложить безопасные и надежные варианты онлайн-платежей для ваших клиентов. Независимо от того, являетесь ли вы владельцем сайта электронной коммерции или бизнеса, основанного на предоставлении услуг, интеграция Volet API может упростить процесс оплаты и повысить удобство ведения бизнеса в Интернете.

В этой статье мы расскажем вам о пошаговом процессе интеграции Volet API в ваш сайт на примере PHP-кода.

Создайте аккаунт Volet

Первым шагом к интеграции Volet API в ваш сайт является создание аккаунта Volet. Вы можете зарегистрировать бесплатный аккаунт на сайте Volet. После создания аккаунта войдите в систему и перейдите в раздел «API». Здесь вы найдете документацию по API и свои учетные данные API, включая ключ и секрет API.

Подготовьте свой сайт

Прежде чем интегрировать Volet API в свой сайт, вы должны убедиться, что ваш сайт имеет необходимую инфраструктуру для работы с интеграцией. Это включает в себя наличие сервера, на котором могут выполняться PHP-скрипты, и SSL-сертификата для безопасных транзакций.

Выберите метод API

Volet API предлагает два метода интеграции платежей на ваш сайт: Checkout API и Direct API. Checkout API — это самый простой метод, поскольку он требует добавления всего нескольких строк кода на ваш сайт. Direct API, с другой стороны, предлагает больше возможностей для настройки, но требует более сложного процесса интеграции.

В этой статье мы сосредоточимся на API Checkout.

Список основных вызовов API Volet

Вот некоторые из основных вызовов Volet API, которые вы можете использовать:

  • createBitcoinInvoice — создать счет для получения платежей в биткоинах.
  • createCryptoCurrencyInvoice — создать счет для получения платежей в криптовалюте, отличной от Bitcoin, например Ethereum или Litecoin.
  • sendMoney — отправить средства с вашего счета Volet на другой счет Volet или на внешний криптовалютный адрес.
  • validateAccount — подтвердить счет Volet, отправив небольшую сумму средств и попросив получателя ввести данные транзакции в свой счет Volet.
  • currencyExchange — обмен средствами между различными кошельками Volet или валютами.
  • getBalances — получить балансы всех валют на вашем счете Volet.
  • withdrawToEcurrency — вывести средства с вашего счета Volet во внешнюю электронную валюту, например, Perfect Money или Payeer.
  • getTransactionHistory — получить список транзакций для определенного счета Volet, включая депозиты, снятие средств и обмен валюты.
  • createApiToken — создать API-токен для доступа к API Volet.

Это лишь некоторые из основных вызовов API, доступных в Volet. Более подробную документацию и примеры вы можете найти на сайте Volet.

Добавьте код API на свой сайт

После того как вы выбрали метод API, необходимо добавить код API на ваш сайт. Код должен быть добавлен на страницу, где вы хотите, чтобы появилась кнопка оплаты.

Volet API Checkout

Вот пример PHP-кода для API Checkout:

<?php
// Set API credentials
$apiName = 'your_api_name';
$apiPassword = 'your_api_password';
$apiAccountEmail = 'your_Volet_email';
$sciUrl = 'https://wallet.Volet.com/sci/';

// Set payment details
$amount = 100; // Payment amount
$currency = 'USD'; // Payment currency
$orderId = '123456789'; // Your order ID
$itemName = 'Test Item'; // Item name

// Generate payment URL
$paymentUrl = "{$sciUrl}?ac_account_email={$apiAccountEmail}&ac_sci_name={$apiName}&ac_sci_password={$apiPassword}&ac_amount={$amount}&ac_currency={$currency}&ac_order_id={$orderId}&ac_item_name={$itemName}";

// Redirect user to payment page
header("Location: {$paymentUrl}");
exit;
?>

В этом примере вам нужно будет заменить your_api_name, your_api_password, your_Volet_email, 100, USD, 123456789 и Test Item на свои собственные значения.

Как только платеж будет произведен, Volet отправит уведомление на ваш IPN URL для подтверждения статуса платежа. Затем вы можете обновить свою базу данных или выполнить любые другие необходимые действия в зависимости от статуса платежа.

Детальный список транзакций за сегодня на Volet API

Вот пример того, как вывести подробный список всех транзакций за сегодня на Volet API с помощью PHP:

// Set API credentials
$apiName = 'your_api_name';
$apiPassword = 'your_api_password';
$apiAccountEmail = 'your_Volet_email';
$apiUrl = 'https://api.Volet.com/v1/merchant/searchTransactions';

// Set API request parameters
$params = array(
    'apiName' => $apiName,
    'apiPassword' => $apiPassword,
    'email' => $apiAccountEmail,
    'startDate' => date('Y-m-d'),
    'endDate' => date('Y-m-d'),
    'startTime' => '00:00:00',
    'endTime' => '23:59:59',
);

// Send API request and get response
$response = file_get_contents($apiUrl . '?' . http_build_query($params));
$data = json_decode($response, true);

// Output the transaction details
if ($data['result'] == 'success') {
    $transactions = $data['transactions'];
    $output = '<table>';
    $output .= '<tr><th>Date</th><th>Type</th><th>Status</th><th>Currency</th><th>Amount</th><th>Description</th></tr>';
    foreach ($transactions as $transaction) {
        $output .= '<tr>';
        $output .= '<td>' . $transaction['transactionDate'] . '</td>';
        $output .= '<td>' . $transaction['transactionType'] . '</td>';
        $output .= '<td>' . $transaction['transactionStatus'] . '</td>';
        $output .= '<td>' . $transaction['currency'] . '</td>';
        $output .= '<td>' . $transaction['amount'] . '</td>';
        $output .= '<td>' . $transaction['description'] . '</td>';
        $output .= '</tr>';
    }
    $output .= '</table>';
    echo $output;
} else {
    echo 'Error retrieving transactions.';
}

Этот код отправляет API-запрос для поиска всех транзакций за сегодня с помощью API-вызова searchTransactions и извлекает детали этих транзакций. Затем транзакции выводятся в формате таблицы со столбцами для даты транзакции, типа, статуса, валюты, суммы и описания.

Код также устанавливает параметры startDate и endDate на сегодняшнюю дату, а параметры startTime и endTime на начало и конец дня соответственно, чтобы гарантировать, что будут возвращены только транзакции за сегодня. Вы можете изменить эти параметры, чтобы получить транзакции за другую дату или временной диапазон.

Обратите внимание, что вам нужно будет заменить your_api_name, your_api_password и your_Volet_email на собственные учетные данные Volet API, а также убедиться, что функция PHP date() установлена на правильный часовой пояс для вашего сервера.

Создание счета в биткоин с помощью Volet API

// Set API credentials
$apiName = 'your_api_name';
$apiPassword = 'your_api_password';
$apiAccountEmail = 'your_Volet_email';
$apiUrl = 'https://api.Volet.com/v1/crypto/bitcoin/createAddress';

// Set Bitcoin account details
$label = 'My Bitcoin Account';
$currency = 'BTC';

// Set API request parameters
$params = array(
    'apiName' => $apiName,
    'apiPassword' => $apiPassword,
    'email' => $apiAccountEmail,
    'label' => $label,
    'currency' => $currency,
);

// Send API request and get response
$response = file_get_contents($apiUrl . '?' . http_build_query($params));
$data = json_decode($response, true);

// Extract Bitcoin account details
$bitcoinAddress = $data['address'];
$bitcoinLabel = $data['label'];

Этот код использует вызов API createAddress для создания счета Bitcoin в Volet. Вы можете настроить детали счета, изменив переменные $label и $currency. После создания счета код извлекает адрес и метку счета из ответа API.

Обмен средств между долларами США и гривнами с помощью API Volet

// Set API credentials
$apiName = 'your_api_name';
$apiPassword = 'your_api_password';
$apiAccountEmail = 'your_Volet_email';
$apiUrl = 'https://api.Volet.com/v1/merchant/currencyExchange';

// Set exchange details
$amount = 100; // Amount to exchange
$fromCurrency = 'USD';
$toCurrency = 'UAH';

// Set API request parameters
$params = array(
    'apiName' => $apiName,
    'apiPassword' => $apiPassword,
    'email' => $apiAccountEmail,
    'amount' => $amount,
    'currencyFrom' => $fromCurrency,
    'currencyTo' => $toCurrency,
);

// Send API request and get response
$response = file_get_contents($apiUrl . '?' . http_build_query($params));
$data = json_decode($response, true);

// Extract exchange details
$exchangeId = $data['exchangeId'];
$newBalanceFrom = $data['newBalanceFrom'];
$newBalanceTo = $data['newBalanceTo'];

Этот код использует вызов API currencyExchange для обмена средств между долларами США и гривнами. Вы можете настроить детали обмена, изменив переменные $amount, $fromCurrency и $toCurrency. После выполнения обмена код извлекает ID обмена и новые балансы двух валют из ответа API.

Проверка баланса Volet

Вот пример того, как проверить баланс вашего счета Volet с помощью Volet API:

// Set API credentials
$apiName = 'your_api_name';
$apiPassword = 'your_api_password';
$apiAccountEmail = 'your_Volet_email';
$apiUrl = 'https://api.Volet.com/v1/merchant/getBalance';

// Set API request parameters
$params = array(
    'apiName' => $apiName,
    'apiPassword' => $apiPassword,
    'email' => $apiAccountEmail,
);

// Send API request and get response
$response = file_get_contents($apiUrl . '?' . http_build_query($params));
$data = json_decode($response, true);

// Extract balance details
$balances = $data['balance'];

// Output the balances for each currency
foreach ($balances as $currency => $balance) {
    echo $currency . ' balance: ' . $balance . '<br>';
}

Этот код использует вызов API getBalance для получения баланса вашего счета Volet. Он отправляет запрос API с вашими учетными данными API и электронной почтой аккаунта, а затем извлекает данные о балансе из ответа API. Баланс возвращается в виде массива с кодом валюты в качестве ключа и суммой баланса в качестве значения. Затем код выводит остатки по каждой валюте в удобочитаемом формате с помощью цикла foreach.

Отправка уведомлений на email о новых транзакциях

Для проверки только новых транзакций и отправки уведомления, вы можете отслеживать дату последней транзакции, которую вы проверяли ранее, и получать только транзакции, произошедшие после этой даты.

// Set API credentials
$apiName = 'your_api_name';
$apiPassword = 'your_api_password';
$apiAccountEmail = 'your_Volet_email';
$apiUrl = 'https://api.Volet.com/v1/merchant/searchTransactions';

// Set email parameters
$recipient = 'your_email@example.com';
$subject = 'New Volet Transactions';
$message = '';

// Get the date of the latest transaction you've previously checked
$lastCheckedDate = ''; // Set this to the date of the latest transaction you've previously checked

// Check for new transactions
$params = array(
    'apiName' => $apiName,
    'apiPassword' => $apiPassword,
    'email' => $apiAccountEmail,
    'startDate' => date('Y-m-d'),
    'endDate' => date('Y-m-d'),
    'startTime' => '00:00:00',
    'endTime' => '23:59:59',
    'count' => 10, // Limit to the last 10 transactions
);
$response = file_get_contents($apiUrl . '?' . http_build_query($params));
$data = json_decode($response, true);

// If there are new transactions, add them to the email message
if ($data['result'] == 'success') {
    $transactions = $data['transactions'];
    if (!empty($transactions)) {
        foreach ($transactions as $transaction) {
            if ($transaction['transactionDate'] > $lastCheckedDate) {
                $message .= '<table>';
                $message .= '<tr><th>Date</th><th>Type</th><th>Status</th><th>Currency</th><th>Amount</th><th>Description</th></tr>';
                $message .= '<tr>';
                $message .= '<td>' . $transaction['transactionDate'] . '</td>';
                $message .= '<td>' . $transaction['transactionType'] . '</td>';
                $message .= '<td>' . $transaction['transactionStatus'] . '</td>';
                $message .= '<td>' . $transaction['currency'] . '</td>';
                $message .= '<td>' . $transaction['amount'] . '</td>';
                $message .= '<td>' . $transaction['description'] . '</td>';
                $message .= '</tr>';
                $message .= '</table>';
            }
        }
    }
}

// If there are new transactions, send email notification
if (!empty($message)) {
    $headers = 'From: your_email@example.com' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    mail($recipient, $subject, $message, $headers);
}

// Update the date of the latest transaction you've checked
if (!empty($transactions)) {
    $lastCheckedDate = $transactions[0]['transactionDate'];
}

Этот код извлекает дату последней транзакции, которую вы ранее проверили, и добавляет новые транзакции в сообщение электронной почты, только если они произошли после этой даты. После отправки уведомления дата последней проверенной транзакции обновляется до даты самой последней транзакции в списке. Это гарантирует, что при следующем запуске кода будут получены только те транзакции, которые произошли с момента последней проверки.

Интеграция Volet с WordPress

Вот пример того, как интегрировать Volet API в WordPress с помощью PHP:

Во-первых, создайте новый PHP-файл в каталоге вашей темы WordPress или плагина и назовите его, например, Volet_api.php.

Внутри файла Volet_api.php добавьте следующий код:

<?php
/*
Plugin Name: Volet API Integration
Plugin URI: https://example.com/
Description: A plugin to integrate Volet API into WordPress
Version: 1.0.0
Author: Your Name
Author URI: https://example.com/
*/

// Add shortcode to display Volet balance
add_shortcode('Volet_balance', 'Volet_balance_shortcode');

function Volet_balance_shortcode($atts) {
    // Set API credentials
    $apiName = 'your_api_name';
    $apiPassword = 'your_api_password';
    $apiAccountEmail = 'your_Volet_email';
    $apiUrl = 'https://api.Volet.com/v1/merchant/getBalance';

    // Set API request parameters
    $params = array(
        'apiName' => $apiName,
        'apiPassword' => $apiPassword,
        'email' => $apiAccountEmail,
    );

    // Send API request and get response
    $response = file_get_contents($apiUrl . '?' . http_build_query($params));
    $data = json_decode($response, true);

    // Extract balance details
    $balances = $data['balance'];

    // Output the balances for each currency
    $output = '<ul>';
    foreach ($balances as $currency => $balance) {
        $output .= '<li>' . $currency . ' balance: ' . $balance . '</li>';
    }
    $output .= '</ul>';

    return $output;
}

Этот код создает плагин WordPress, который добавляет шорткод [Volet_balance] для отображения баланса вашего счета Volet. Шорткод вызывает функцию Volet_balance_shortcode, которая отправляет API-запрос для получения баланса, используя ваши учетные данные API и email аккаунта. Затем баланс извлекается и выводится в удобочитаемом формате.

В вашей теме WordPress или на странице, где вы хотите отобразить баланс Volet, просто добавьте шорткод [Volet_balance] туда, где вы хотите, чтобы отображался баланс.
Вот и все! Теперь вы интегрировали Volet API в WordPress и можете отображать баланс Volet на своем сайте. Вы также можете изменить код, чтобы добавить дополнительные функции, такие как создание счетов Bitcoin или обмен средств между валютами, в зависимости от ваших потребностей.

Протестируйте интеграцию

После того как вы добавили код API на свой сайт, необходимо протестировать интеграцию, чтобы убедиться, что все работает так, как ожидалось. Для этого можно провести тестовый платеж с помощью платежной формы.

Переход в реальный режим работы

После тестирования интеграции вы можете запустить Volet API на своем сайте. Это означает, что ваши клиенты смогут совершать платежи с помощью Volet, а вы будете получать платежи непосредственно на свой кошелек Volet.

В заключение, интеграция Volet API на ваш сайт — это простой и понятный процесс, который может дать множество преимуществ вашему бизнесу. Независимо от того, являетесь ли вы программистом или нет, с этим процессом можно легко справиться, имея базовое понимание PHP и HTML. Если у вас возникнут вопросы или проблемы в процессе интеграции, вы можете обратиться за помощью в службу поддержки Volet.

Поделитесь с друзьями
Dmitry Havriush
Dmitry Havriush

Фанат технологий, инвестор и любитель путешествий. Всегда ищу что-то новое. Делюсь своими находками, секретами и советами, которые помогут достичь твоих целей намного быстрее. Если хочешь научиться зарабатывать, используя пассивные и активные способы, я готов помочь!