링크로 Blocknet 결제 요청하기

· 읽는 데 6분

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:// 형식은 Blocknet URI로, 링크를 지갑에 바로 넣는 곳에서 편리합니다.

결제 링크는 어떻게 만듭니까?

네 단계로 직접 만들 수 있습니다.

  1. 수신자를 정합니다. 명령줄 지갑에서 address를 실행해 주소를 출력하거나, $ 접두사를 붙인 Blocknet ID 짧은 이름을 사용하세요. 아직 지갑이 없다면 Blocknet 지갑 가이드에서 지갑을 만들고 주소를 찾는 방법을 안내합니다.
  2. 금액을 정합니다. BNT 단위로 쓰세요. 1 BNT는 100,000,000 원자 단위이므로 정수와 소수 모두 소수점 이하 여덟 자리까지 쓸 수 있습니다.
  3. 원하면 메모를 넣습니다. 주문 번호, 청구서 ID, 짧은 감사 인사가 있으면 결제가 들어왔을 때 맞춰 보기 쉽습니다. 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]을 묻습니다. 결제하는 사람이 y를 입력해야만 BNT가 이동합니다.

명령줄 지갑에서 진행되는 순서를 단계별로 보면 다음과 같습니다.

  1. 결제하는 사람이 지갑 프롬프트에 링크를 붙여 넣습니다. 지갑은 blocknet: 또는 bntpay.com/ 접두사를 보고 그 줄을 송금으로 처리합니다. 메모 invoice-42와 함께 $yourname에게 25 BNT를 보내는 링크는 send $yourname 25 invoice-42를 입력한 것과 같은 요청이 됩니다.
  2. 이름을 주소로 변환합니다. 이름이 담긴 링크라면 지갑이 검증 표시와 함께 Resolved $yourname -> <address>를 출력합니다.
  3. 지갑이 잔액을 확인하고 결제를 만듭니다. 코인을 고르고, 프라이빗 트랜잭션을 만들고, 수수료를 계산합니다.
  4. 결제하는 사람이 요약을 봅니다. 금액과 수신자, 수수료, 이름을 썼다면 전체 주소, 잔돈, 메모가 나열되고 이어서 Confirm [y/N]이 표시됩니다.
  5. 결제하는 사람이 확인합니다. y를 입력하면 트랜잭션이 제출되고, 트랜잭션 ID가 explorer.blocknetcrypto.com의 탐색기 링크와 함께 출력됩니다. 다른 답을 입력하면 Cancelled가 출력되고 지갑이 따로 떼어 둔 코인이 풀립니다.

요약은 결제하는 사람이 요청을 점검하는 단계이므로, 이를 보기 전에는 아무것도 지갑을 떠나지 않습니다. 모든 링크에는 금액이 필요합니다. 금액이 없으면 지갑은 payment link missing amount라고 답하고 아무것도 만들기 전에 멈춥니다.

링크에 넣은 메모는 Blocknet의 암호화 메모로 결제와 함께 전달됩니다. BNT가 도착하면 지갑의 history 명령이 들어온 결제 아래에 메모를 표시하므로, 청구서나 주문과 맞춰 볼 수 있습니다.

공유하기 전에 링크 테스트하기

내 링크를 내 지갑에 붙여 넣으면 결제하는 사람이 보게 될 화면을 그대로 확인할 수 있습니다. 지갑에 요청 금액 이상이 있으면 전체 요약이 표시됩니다. 수신자, 금액, 메모를 확인한 뒤 n이라고 답하면 아무것도 전송되지 않습니다.

결제 링크가 잘 맞는 곳

채굴로도 BNT를 번다면 같은 이름을 쓸 수 있습니다. seine와 bntpool.com 모두 Blocknet ID 짧은 이름을 수령 주소로 받으므로, 채굴 보상과 링크 결제가 한 지갑으로 들어옵니다. 설정 방법은 Blocknet 채굴 가이드에서 다룹니다.

자주 묻는 질문

Blocknet 결제 링크에 금액이 꼭 필요합니까?

네. 모든 결제 링크에는 amount=25나 amount=0.5처럼 소수점 이하 여덟 자리까지 BNT로 쓴 금액 필드가 들어갑니다. 메모는 선택 사항입니다. 붙여 넣은 링크에 금액이 없으면 명령줄 지갑은 payment link missing amount라고 답하고 아무것도 보내지 않으므로, 결제하는 사람이 요청 금액을 짐작할 필요가 없습니다.

결제 링크에 Blocknet ID 짧은 이름을 넣을 수 있습니까?

네. bntpay.com/$yourname?amount=10이나 blocknet://$yourname?amount=10처럼 이름 앞에 달러 기호를 붙이세요. 지갑이 blocknet.id에서 이름을 조회하고 서명된 레코드를 검사한 뒤, 결제하는 사람이 확인하기 전에 검증 표시와 함께 전체 주소를 보여 줍니다. 이름을 담은 링크는 항상 그 이름이 가리키는 주소로 결제합니다.

blocknet:// 링크와 bntpay.com 링크는 무엇이 다릅니까?

둘 다 수신자, 금액, 메모라는 같은 세 필드를 담으며, 명령줄 지갑은 두 형식을 똑같이 읽습니다. blocknet:// 형식은 Blocknet URI 스킴입니다. bntpay.com 형식은 일반 웹 주소이므로 채팅 앱, 이메일 클라이언트, 소셜 프로필에서 클릭할 수 있는 링크로 바뀝니다.

결제 링크를 붙여 넣으면 BNT가 바로 전송됩니까?

아니요. 지갑에 링크를 붙여 넣으면 결제를 준비한 뒤 금액, 수신자, 전체 주소, 수수료, 메모를 보여 주는 요약에서 멈추고 예/아니요 확인을 묻습니다. 결제하는 사람이 y를 입력해야만 BNT가 이동합니다. 다른 답을 입력하면 결제가 취소되고 예약해 두었던 코인이 풀립니다.