Як запросити платіж Blocknet за посиланням

· 5 хв читання

Платіжне посилання Blocknet вміщує в один рядок усе, що потрібно платникові: кому платити, скільки BNT і необов’язкове мемо, наприклад номер рахунку. Надішліть його в чаті, додайте до рахунку чи у свій профіль, і платник вставить його у свій гаманець і підтвердить. У цьому посібнику показано два формати посилань, як створити посилання зі своєю адресою або своїм $name і що саме робить гаманець, коли хтось його вставляє.

Що таке платіжне посилання Blocknet?

Коротка відповідь

Платіжне посилання Blocknet — це один рядок з отримувачем, сумою й необов’язковим мемо у формі blocknet://recipient?amount=25&memo=invoice-42 або bntpay.com/recipient?amount=25&memo=invoice-42. Отримувач — це адреса гаманця або ім’я Blocknet ID. Якщо вставити посилання в гаманець командного рядка, воно перетворюється на готовий до підтвердження платіж.

Гаманець командного рядка Blocknet приймає дві форми:

blocknet://<address-or-$name>?amount=<BNT>&memo=<text>
bntpay.com/<address-or-$name>?amount=<BNT>&memo=<text>

Обидві форми містять ті самі поля:

Поле Де розміщується Обов’язкове Що містить
Отримувач одразу після blocknet:// або bntpay.com/ Так Адресу вашого гаманця або ваше коротке ім’я у формі $name
amount рядок запиту Так Сума BNT, яку ви запитуєте, до восьми знаків після коми
memo рядок запиту Ні Текст мемо платежу, до 124 байтів

Гаманець не вимогливий до того, як набрано посилання. Він розпізнає blocknet:// і коротше blocknet:, а для вебформи приймає bntpay.com/ саме по собі або з www., http:// чи https:// попереду. Регістр префікса не має значення, як і порядок amount та memo.

Форма bntpay.com — це звичайна вебадреса, тож більшість месенджерів, поштових клієнтів і соціальних профілів перетворюють її на посилання, яке можна натиснути. Форма blocknet:// — це URI Blocknet, зручний усюди, де посилання потрапляє прямо в гаманець.

Як створити платіжне посилання?

Посилання можна написати вручну за чотири кроки.

  1. Виберіть отримувача. Виконайте address у гаманці командного рядка, щоб вивести свою адресу, або використайте своє коротке ім’я Blocknet ID з префіксом $. Якщо гаманця ще немає, посібник із гаманця Blocknet показує, як його створити й знайти свою адресу.
  2. Вкажіть суму. Пишіть її в BNT. Підходять і цілі числа, і десяткові дроби, до восьми знаків після коми, тому що один BNT — це 100 000 000 атомарних одиниць.
  3. Додайте мемо, якщо хочете. Номер замовлення, ідентифікатор рахунку чи коротка подяка допоможуть зіставити платіж, коли він надійде. Не перевищуйте 124 байти.
  4. З’єднайте частини. Вкажіть отримувача після префікса, потім ?amount=, а потім &memo=, якщо мемо є.

Рахунок на 25 BNT на ім’я в обох формах:

https://bntpay.com/$yourname?amount=25&memo=invoice-42
blocknet://$yourname?amount=25&memo=invoice-42

Той самий запит на повну адресу:

bntpay.com/<address>?amount=25&memo=invoice-42

Кодування символів у мемо

У мемо з пробілами чи розділовими знаками кілька символів треба записати в URL-кодуванні, бо їх використовує саме посилання. Гаманець декодує їх назад, перш ніж створити платіж.

Символ Як записати Чому
пробіл %20 Посилання залишається цілим, коли ним діляться
& %26 & починає наступне поле
# %23 # завершує рядок запиту
+ %2B Звичайний + читається як пробіл

Наприклад, memo=Order%20%231042 надходить як Order #1042. Літери, цифри, дефіси, підкреслення й крапки кодувати не потрібно, тому мемо на кшталт invoice-42 зручно використовувати як є.

Що вказати в посиланні: адресу чи $name?

Обидва варіанти працюють, і кожен підходить для свого завдання.

Ім’я робить посилання достатньо коротким, щоб його можна було прочитати, сказати вголос чи вмістити в біо. У посиланнях пишіть його з префіксом $: $yourname і @yourname — це те саме ім’я, а $ — форма, яку обидва типи посилань передають прямо в гаманець. Коли платник вставляє посилання з іменем, гаманець знаходить адресу через blocknet.id, перевіряє підпис Ed25519 запису й виводить повну адресу з позначкою перевірки. Оскільки адреса за іменем визначається в момент оплати, довгострокове посилання, наприклад посилання для чайових у профілі, продовжує працювати, навіть якщо згодом ви прив’яжете ім’я до нового гаманця.

Повна адреса фіксує отримувача в самому посиланні. Це підходить для одноразового рахунку, коли посилання має вказувати на один конкретний гаманець.

У будь-якому разі платіж у блокчейні — це звичайна транзакція Blocknet на одноразову стелс-адресу з такою самою конфіденційністю, як у будь-якого іншого платежу.

Що відбувається, коли хтось вставляє платіжне посилання?

Коротка відповідь

Гаманець зчитує з посилання отримувача, суму й мемо і виконує з ними звичайне надсилання. Він знаходить адресу за іменем, якщо воно є, створює транзакцію, потім показує суму, отримувача, повну адресу, комісію та мемо й запитує Confirm [y/N]. BNT переказуються лише тоді, коли платник введе y.

Ось покрокова послідовність у гаманці командного рядка.

  1. Платник вставляє посилання в рядок гаманця. Гаманець бачить префікс blocknet: або bntpay.com/ і сприймає рядок як надсилання. Посилання на $yourname на 25 BNT з мемо invoice-42 стає тим самим запитом, що й команда send $yourname 25 invoice-42.
  2. Адреса визначається за іменем. Для посилання з іменем гаманець виводить Resolved $yourname -> <address> з позначкою перевірки.
  3. Гаманець перевіряє баланс і створює платіж. Він вибирає монети, створює приватну транзакцію й розраховує комісію.
  4. Платник бачить зведення. У ньому вказано суму й отримувача, комісію, повну адресу, якщо використано ім’я, решту та мемо, а за ними Confirm [y/N].
  5. Платник підтверджує. Введення y надсилає транзакцію й виводить її ідентифікатор із посиланням на оглядач explorer.blocknetcrypto.com. Будь-яка інша відповідь виводить Cancelled і звільняє монети, які гаманець відклав.

Зведення — це можливість для платника перевірити запит, тож нічого не залишає його гаманець, доки він його не побачить. Кожному посиланню потрібна сума: без неї гаманець відповідає payment link missing amount і зупиняється, нічого не створюючи.

Мемо, яке ви вказали в посиланні, передається разом із платежем як зашифроване мемо Blocknet. Коли BNT надійдуть, команда history вашого гаманця покаже його під вхідним платежем, тож ви зможете зіставити його з рахунком чи замовленням.

Перевірте посилання, перш ніж ним ділитися

Ви можете побачити точно те, що побачить платник, вставивши власне посилання у свій гаманець. Якщо у вашому гаманці є щонайменше запитана сума, він покаже повне зведення. Перевірте отримувача, суму й мемо, потім дайте відповідь n, і нічого не буде надіслано.

Де платіжні посилання особливо зручні

Якщо ви також заробляєте BNT майнінгом, для цього можна використати те саме ім’я. І seine, і bntpool.com приймають коротке ім’я Blocknet ID як адресу для виплат, тож виплати за майнінг і платежі за посиланнями надходять в один гаманець. Налаштування описано в посібнику з майнінгу Blocknet.

Поширені запитання

Чи потрібна сума в платіжному посиланні Blocknet?

Так. Кожне платіжне посилання містить поле суми в BNT з точністю до восьми знаків після коми, наприклад amount=25 або amount=0.5. Мемо необов'язкове. Якщо у вставленому посиланні немає суми, гаманець командного рядка відповідає payment link missing amount і нічого не надсилає, тож платникові ніколи не доводиться вгадувати, скільки ви просили.

Чи можна вказати коротке ім'я Blocknet ID у платіжному посиланні?

Так. Пишіть ім'я з префіксом долара, як-от bntpay.com/$yourname?amount=10 або blocknet://$yourname?amount=10. Гаманець знаходить ім'я на blocknet.id, перевіряє підписаний запис і показує платникові повну адресу з позначкою перевірки, перш ніж той підтвердить. Посилання з іменем завжди оплачує адресу, на яку вказує ваше ім'я.

Чим посилання blocknet:// відрізняється від посилання bntpay.com?

Вони містять ті самі три поля, отримувача, суму й мемо, і гаманець командного рядка читає обидва однаково. Форма blocknet:// — це URI-схема Blocknet. Форма bntpay.com — звичайна вебадреса, яку месенджери, поштові клієнти й соціальні профілі перетворюють на клікабельне посилання.

Чи надсилає вставлене платіжне посилання BNT одразу?

Ні. Вставлене в гаманець посилання готує платіж, а потім зупиняється на зведенні із сумою, отримувачем, повною адресою, комісією та мемо, після якого йде запит підтвердження «так чи ні». BNT переказуються лише після того, як платник введе y. Будь-яка інша відповідь скасовує платіж і звільняє зарезервовані для нього монети.