К содержимому

USDC · Ethereum (ERC20)

Приём USDC в сети Ethereum (ERC20)

CryptoLike зачисляет платёж в USDC (ERC20) на ваш баланс, когда число подтверждений сети Ethereum достигает 12, и сообщает об этом вашему серверу подписанным вебхуком. Вы создаёте платёж, плательщик отправляет USDC со своего кошелька Ethereum, а CryptoLike следит за адресом, считает подтверждения и переводит статус из pending в paid.

Как проходит платёж в USDC (ERC20)

Платёж в USDC (ERC20) в CryptoLike проходит четыре шага и три статуса: new, pending и paid. Страница оплаты, API и вебхуки показывают один и тот же статус, поэтому логике заказа достаточно одного поля. Плательщику не нужен аккаунт в CryptoLike — только кошелёк Ethereum, где есть USDC и немного ETH на газ.

  1. Вы создаёте платёж через POST /v1/invoices, модуль Magento 2, модуль PrestaShop или ссылку на оплату. Статус: new.
  2. Плательщик видит, что отправить: точную сумму в USDC, сеть (Ethereum), адрес с QR-кодом и оставшееся время.
  3. Перевод обнаружен. Статус: pending, «Платёж обнаружен. Ожидаем подтверждения.»
  4. Платёж подтверждён. Когда подтверждений становится 12, статус меняется на paid, деньги на балансе, приходит подписанный вебхук invoice.paid.

Чем отличается USDC в сети Ethereum

USDC — долларовый стейблкоин, который выпускает Circle. В сети Ethereum у USDC 6 знаков после запятой: сумма в USDC в POST /v1/invoices может иметь до шести знаков, более точную API отклоняет. Цена в долларах пересчитывается и округляется вверх до шести знаков. Circle может заблокировать адрес, и с кошелька на таком адресе USDC не отправить — платёж с него не придёт. USDC и USDT — разные токены, хотя оба привязаны к доллару: платёж в USDC оплачивается только в USDC, а плательщику с USDT нужен платёж в USDT.

Что нужно знать плательщику о сети Ethereum

CryptoLike принимает USDC в сети Ethereum только с официального контракта USDC ERC20 и только на адрес, который начинается с 0x. Комиссию сети — газ — кошелёк плательщика оплачивает в ETH, поэтому рядом с USDC нужно держать немного ETH. Сумма со страницы оплаты должна прийти целиком и только в основной сети Ethereum.

  • Адрес. 0x и 40 шестнадцатеричных символов. У других EVM-совместимых сетей такой же формат адреса — сверяйте название сети на странице.
  • Комиссия сети. Газ платится в ETH и зависит от загрузки сети. С кошелька, где есть USDC, но нет ETH, отправить не получится.
  • Контракт. Зачисляется только USDC контракта 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48; токен с тем же названием на другом контракте не зачисляется.
  • Точная сумма. Если биржа вычитает свою комиссию за вывод из суммы, платёж придёт неполным и получит статус underpaid. Доплатите разницу на тот же адрес, пока не истекло время.
  • Сеть. USDC, отправленные в другой сети, до платежа не дойдут, и вернуть их невозможно.

Как создать платёж в USDC (ERC20)

Чтобы создать платёж в USDC (ERC20) в CryptoLike, возьмите id актива с ticker USDC и network eth из GET /v1/currencies и передайте его как coin_id в POST /v1/invoices. Цену можно указать в долларах, как в примере, или в USDC; сумму в фиате CryptoLike пересчитает по текущему курсу и зафиксирует курс на время жизни платежа.

bash
COIN_ID=$(curl -s https://api.cryptolike.net/v1/currencies \
  | jq -r '.currencies[] | select(.ticker=="USDC" and .network=="eth") | .id')

BODY='{"amount":"1200.00","currency":"USD","coin_id":"'"$COIN_ID"'","order_id":"INV-2026-042"}'
curl -s https://api.cryptolike.net/v1/invoices \
  -H "Content-Type: application/json" -H "Idempotency-Key: INV-2026-042" \
  -H "X-API-Key: $KEY_ID" -H "X-Timestamp: $TS" -H "X-Signature: $SIG" -d "$BODY"

В ответе есть address, payer_amount, rate_locked и checkout_url — отправьте плательщика туда. Подпись запроса — в разделе аутентификация API, все поля — в справочнике API.

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

Сколько подтверждений нужно для USDC ERC20?

CryptoLike зачисляет USDC (ERC20), когда число подтверждений сети Ethereum достигает 12. Порог задаётся для каждого актива, возвращается в GET /v1/currencies, а плательщик видит прогресс на странице оплаты. Подробнее — в статье о подтверждениях.

Что будет, если плательщик отправит USDC в другой сети?

Перевод до этого платежа не дойдёт, и вернуть его невозможно: CryptoLike принимает USDC только в сети Ethereum. Если у плательщика USDT, создайте платёж в USDT в сети Ethereum или USDT в сети TRON.

Можно ли выставить цену в долларах?

Да. Передайте currency: "USD" вместе с coin_id USDC: CryptoLike пересчитает сумму по текущему курсу и зафиксирует его на время жизни платежа (фиксация курса). Если свежего курса нет, API ответит 503 — повторите запрос или укажите цену в USDC.

Можно ли выставить счёт в USDC без сайта?

Да. Создайте платёж в кабинете или в Telegram-боте и отправьте клиенту ссылку — он заплатит на той же странице оплаты. Сценарий для B2B описан в разделе счета в криптовалюте.

Как работают выплаты в USDC?

POST /v1/withdrawals с coin_id, amount, to_address и вашим payout_id или CSV-файл до 1 000 строк в кабинете (массовые выплаты). Сначала POST /v1/withdrawals/estimate покажет комиссию платформы, зарезервированную комиссию сети (в USDC, баланс ETH не нужен) и итоговое списание. Выплаты доступны после верификации аккаунта; актуальные комиссии — на странице тарифов.

Другие сети

Приём в интернет-магазине

Подробнее

Термины на странице

Начните с тестового платежа

Создайте аккаунт, попросите у поддержки доступ к тестовой среде и посмотрите, как платёж проходит путь от pending до paid в тестовой сети.