Перейти к содержимому

Сети и токены

Перед созданием инвойса или депозита выберите сеть и токен из API. Одного названия токена недостаточно: нужен его адрес в выбранной сети.

Окно терминала
curl 'https://platform.invoise.me/api/v1/networks'

В ответе вам нужны:

Поле Назначение
chain_id ID сети.
family solana или tron для этих сетей; у EVM-сетей поля нет или оно равно evm.
tokens[].address адрес токена: контракт в EVM и Tron, mint в Solana.
tokens[].decimals число знаков после запятой.
tokens[].status готовность токена, если поле есть. Для реальных платежей используйте ready.
minimum_payment наименьшая сумма инвойса в этой сети, в целых токенах.

Публичный каталог описывает настроенные сети. У мерчанта может быть включена только часть из них: при настройке проверьте GET /api/v1/merchants/{merchant_id}/networks с токеном сессии. API отклонит создание инвойса или депозита, если сеть или токен недоступны.

Для Solana и Tron до первого инвойса у магазина нужно задать получателя. См. Solana и Tron.

Набор сетей и токенов меняется через настройки платформы. Получайте доступность, адреса и decimals из API при выборе актива; не храните собственный фиксированный список.

minimum_payment — целое число токенов, например "1". Инвойс меньше этой суммы вернёт 400 amount_below_minimum. Поле есть в обоих списках сетей. Значение отличается между сетями и может меняться, поэтому читайте его из API, а не храните в коде.

Сумма инвойса — строка с целым числом в минимальных единицах токена:

Знаков у токена 10 токенов в запросе
6 "10000000"
18 "10000000000000000000"

Не отправляйте "10.5". При 6 знаках 10,5 токена — это "10500000". Для расчётов используйте целые числа (BigInt в JavaScript): обычные числа с плавающей точкой могут терять точность.

Исключение — инвойс с несколькими токенами или сетями: ему передают десятичную сумму в токенах, например "10.5". См. несколько токенов или сетей.

Окно терминала
curl 'https://platform.invoise.me/api/v1/shops/{shop_id}/terms' \
-H 'Authorization: Bearer ivk_...'

Ответ содержит условия по каждой сети:

Поле Назначение
invoice и deposit комиссия: bps, minimum, maximum.
sweep_threshold сколько нужно накопить на депозитном адресе перед пейаутом.
minimum_sweep и maximum_sweep указанный API диапазон этого параметра.

bps — сотые доли процента: 50 bps = 0,5%. minimum и maximum комиссии выражены в единицах с восемнадцатью знаками независимо от токена: 10000000000000000 означает комиссию 0,01 токена. sweep_threshold — обычная сумма в токенах, например "1".

Максимальная комиссия — не максимальная сумма платежа. Не смешивайте её с суммой инвойса и порогом пейаута депозитов.