Для EVM-маршрута добавляйте публичный адрес 0x... кошелька, которым вы управляете. Ethereum, Optimism, BNB Chain, Base, Polygon и Arbitrum используют одинаковый формат адреса, но имеют раздельные балансы, транзакции и token contracts. Корректный синтаксис не доказывает поддержку нужной сети или актива.
Никогда не добавляйте private key или seed phrase. Не вставляйте контракт USDT или USDC в поле receiving address продавца.
Короткий ответ
EVM-адрес содержит 0x и 40 шестнадцатеричных символов:
0x + 40 символов 0–9 и a–f = всего 42 символа
Копируйте его из раздела Получить после выбора точной сети. Проверяйте начало, середину и конец, а не только первые и последние четыре символа: address poisoning может подставить визуально похожий адрес в историю операций.
Зачем в адресе разный регистр букв
Адрес состоит из hex-символов. Lowercase-представление может быть корректным, а mixed-case формат ERC-55 кодирует checksum регистром букв. Checksum помогает обнаружить многие опечатки, но не доказывает владение, поддержку сети или безопасность получения токена.
Не исправляйте регистр вручную. Копируйте checksummed address из кошелька и проверяйте его доверенной библиотекой. ENS-имя перед сохранением должно разрешиться в полный адрес.
Почему один адрес виден в нескольких сетях
Один private key обычно создаёт одинаковый внешний EVM-адрес в совместимых сетях. Но сети не становятся взаимозаменяемыми:
- ETH в Ethereum отделён от ETH в Base, Optimism или Arbitrum;
- у каждой сети собственная история и state;
- USDT и USDC используют разные контракты в разных сетях;
- биржа может принимать депозит на этот адрес только в части сетей;
- wrong-network transfer не оплачивает выбранный invoice.
Всегда храните пару network + receiving address, а не адрес отдельно.
EOA и contract account выглядят одинаково
Официальная документация Ethereum разделяет externally owned account, управляемый ключом, и contract account, управляемый кодом. Оба имеют 42-символьный адрес 0x... и могут хранить токены.
По синтаксису нельзя отличить обычный кошелёк, multisig, smart wallet, биржевой deposit contract или token contract. Для contract-based wallet заранее убедитесь, что он принимает и позволяет вывести нужный токен в выбранной сети.
Как подготовить receiving address
- Откройте self-custody кошелёк или биржу с явной поддержкой нужной сети.
- Выберите Ethereum, Optimism, BNB Chain, Base, Polygon или Arbitrum.
- Выберите USDT или USDC и откройте экран получения.
- Скопируйте полный
0x..., сохранив checksum capitalization. - Прочитайте правила биржи о minimum deposit, token representation и smart-contract deposits.
- Откройте explorer той же сети и вставьте полный адрес.
- Сделайте тестовый перевод выше минимума сервиса и проверьте доступность баланса.
Для прямого контроля обычно понятнее self-custody адрес. Биржевой deposit address может быть заменён, приостановлен или ограничен одной версией токена.
Как подтвердить контроль без передачи секретов
GramPayBot не нужен private key. Для self-custody EOA контроль можно подтвердить подписью понятного сообщения в кошельке или небольшой исходящей транзакцией. Не подписывайте непонятные данные на неизвестном сайте.
У multisig или smart wallet контроль определяется owners и правилами исполнения. До приёма оплат убедитесь, что можете завершить исходящую token transaction в нужной сети.
Receiving address и token contract
Оба начинаются с 0x, но выполняют разные функции:
- receiving address определяет аккаунт продавца;
- token contract определяет USDT или USDC в конкретной сети.
Например, Ethereum USDT использует 0xdAC17F958D2ee523a2206206994597C13D831ec7, а Ethereum USDC — 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48. Ни один из них не является вашим кошельком. Используйте инструкцию по проверке токена.
Добавление в GramPayBot
Выберите один токен и одну сеть, вставьте проверенный публичный адрес и создайте небольшой invoice. Покупатель должен выбрать ту же сеть. GramPayBot сопоставляет network, token contract, recipient и amount, а не засчитывает любой перевод на похожий адрес.
Начните со страницы USDT в Ethereum или USDC в Ethereum, либо откройте полную матрицу.
Для остальных EVM-маршрутов сравните USDT в Polygon, USDC в Polygon, USDT в Arbitrum и USDC в Arbitrum.
Остановитесь при любом из признаков
- кошелёк не показывает выбранную сеть;
- один символ после копирования отличается;
- адрес взят из истории, а не с receiving screen;
- скопирован token contract вместо вашего account;
- биржа поддерживает другую representation токена;
- вы не можете подписать или вывести тестовую сумму;
- покупатель собирается использовать другую EVM-сеть.
Исправьте маршрут до публикации invoice. Общий формат 0x не гарантирует cross-chain recovery.
Следующий шаг
Создайте отслеживаемую ссылку на оплату
Выставьте счёт в USDT или USDC вручную, отправьте hosted checkout и отслеживайте статус без API.
Ссылки на оплату →