Интеграции

Приём криптоплатежей на WordPress

Для обычного сайта на WordPress — членство, курс, цифровой товар, страница донатов — достаточно небольшого шорткода: он создаёт счёт CryBit на сервере и показывает кнопку оплаты или встроенный виджет.

Шорткод оплаты

PHP (mu-plugin)

add_shortcode('crybit_pay', function ($atts) {
    $atts = shortcode_atts(['amount' => '10', 'currency' => 'USD', 'label' => 'Pay with crypto'], $atts);
    $resp = wp_remote_post('https://api.crybit.net/api/v1/payments', ['headers' => [
        'X-Public-Key' => getenv('CRYBIT_PUBLIC_KEY'),
        'X-Private-Key' => getenv('CRYBIT_PRIVATE_KEY'),
        'Content-Type' => 'application/json',
    ], 'body' => json_encode([
        'amount' => (float) $atts['amount'],
        'currency' => $atts['currency'],
        'order_id' => 'WP-' . wp_generate_password(8, false),
    ])]);
    $inv = json_decode(wp_remote_retrieve_body($resp), true);
    return '<a class="crybit-btn" href="' . esc_url($inv['callback_url']) . '">' . esc_html($atts['label']) . '</a>';
});
// использование: [crybit_pay amount="25" currency="USD" label="Оплатить курс"]

Открытие доступа после оплаты

Для членства или загрузок формируйте order_id на пользователя/товар, а в обработчике вебхука выдавайте роль, добавляйте в группу или отправляйте ссылку на скачивание, когда для этого order_id приходит payment.paid.

Встроенный виджет вместо редиректа

Покажите виджет прямо в шаблоне страницы с confirmation: {"type":"embedded"}, чтобы не уводить посетителя с сайта — код на JavaScript в руководстве по виджету.

Вопросы и ответы

Нужен ли плагин из каталога WordPress?

Нет — шорткод выше это пара десятков строк в mu-plugin, и он использует тот же публичный API, что и любая другая интеграция CryBit.

Другие платформы

API кілтін алу