Как это работает
- Вы создаёте платёж с
payment_method: "cryptobot"и суммой в рублях - В ответе приходит
payment_url- ссылка на счёт в Telegram - Вы отправляете клиента по этой ссылке. Открывается бот
@CryptoBotсо счётом - Клиент оплачивает счёт криптовалютой со своего баланса в боте
- Вам приходит вебхук со статусом
paid, на баланс зачисляются рубли
Вы работаете только с рублями: задаёте amount в копейках и получаете зачисление в рублях. То, какой монетой расплатится клиент, и по какому курсу - на вашей стороне не отражается и в API не приходит. Сверять оплату нужно по amount, а не по сумме в крипте.
Создание платежа
Отдельного эндпоинта у метода нет - это обычное создание платежа с другим значением payment_method.
curl -X POST https://api.cashera.cash/api/v1/integration/transactions \-H "X-Api-Key: $CASHERA_API_KEY" \-H "Content-Type: application/json" \-d '{"amount": 49900,"currency": "RUB","payment_method": "cryptobot","external_id": "order-10428","description": "Подписка Pro, 1 мес."}'
Редирект: чем отличается от других методов
У большинства методов payment_url ведёт на платёжную страницу Cashera (pay.cashera.cash/<uuid>). У cryptobot это не так: страница Cashera пропускается, и payment_url - это прямая ссылка в Telegram на счёт в боте.
Практический вывод: не стройте ссылку на оплату сами из uuid - она не сработает. Всегда используйте payment_url из ответа как есть.
Ссылка появляется только после того, как провайдер выставил счёт. Если инициация ещё не завершилась, payment_url будет null. Не редиректьте клиента на пустое значение - запросите статус платежа через короткую паузу и возьмите ссылку оттуда.
Показать реквизиты в своём интерфейсе нельзя: оплата возможна только внутри Telegram. Метод H2H для cryptobot вернёт 422.
Вебхук
Формат тот же, что и у остальных методов - отличается только значение payment_method. Считайте оплату подтверждённой по status: "paid".
{"event": "transaction.status_updated","transaction": {"uuid": "9b1f2c4e-7a01-4b9d-8f1c-2eab57d90c11","external_id": "order-10428","status": "paid","type": "deposit","amount": 49900,"gross_amount": 49900,"net_amount": 48403,"currency": "RUB","payment_method": "cryptobot","paid_at": "2026-06-02T18:11:42+00:00"}}
Ограничения
| Поле | Тип | Описание |
|---|---|---|
currency | только RUB | Другая валюта вернёт 422 при создании платежа |
H2H | не поддерживается | Оплата только через редирект в Telegram |
Срок жизни счёта | 1 час | По умолчанию счёт живёт час, точное время - в поле expires_at. После истечения платёж переходит в expired, и нужно создавать новый |
Telegram | обязателен | Клиенту нужен аккаунт Telegram и баланс в @CryptoBot. Если ваша аудитория не в Telegram - метод ей не подойдёт, предусмотрите запасной способ оплаты |
Ошибки
| Поле | Тип | Описание |
|---|---|---|
422 | Unprocessable Entity | Метод не включён вам в кабинете, либо передана валюта кроме RUB. Различайте по тексту message |
502 | Bad Gateway | Провайдер не смог выставить счёт. Повторите создание платежа |
Метод включается на стороне Cashera. Если в разделе «Методы приёма» личного кабинета карточка CryptoBot отмечена как неподключённая - напишите менеджеру, и он активирует её вместе с тарифом.
