Deep Links and QR Codes
This page refers to QR codes and deep links that are signed and submitted to the blockchain via the Helium Hotspot and Wallet Apps. Makers should not use the following information and instead use the Helium React Native SDK and WalletLink libraries to sign and submit transactions in their maker app.
To generate a QR code to scan, find a service to generate a QR code using the json data below. This
is an example site: https://www.qr-code-generator.com
External QR Scanner (System Camera)
This section refers to deep links that navigate into the Helium Hotspot and Wallet apps via the native system camera. For QR codes scanned internally in the Helium Hotspot and Wallet apps see the Internal QR Scanner section below.
View Hotspot (Hotspot App)
helium://hotspot/:address
param | Type | Note |
---|---|---|
address | string | b58 Address of the Hotspot to display |
Add Gateway (Hotspot App)
helium://add_gateway/:encoded_txn
param | Type | Note |
---|---|---|
encoded_txn | string | base64 url encoded add gateway V1 transaction |
Users can read more on how to generate an add_gateway
transaction from the
Makers Guide > Hotspot Integration.
Payment (Hotspot App)
helium://payment?address={{address}}&amount={{amount}}&memo={{memo}}
param | Type | Note |
---|---|---|
address | string | b58 Address to send the payment to |
amount | string | HNT amount, 1 = 1 HNT |
memo (optional) | string | UTF8 string with a max size of 8 bytes |
Payment (Wallet App)
https://wallet.helium.com/payment?payee={{payee}}&amount={{amount}}&memo={{memo}}
param | Type | Note |
---|---|---|
payee | string | b58 Address to send the payment to |
amount | string | HNT amount in bones, 100000000 = 1 HNT |
memo (optional) | string | Base64 encoded string with a max size of 8 bytes |
Add Gateway / Assert Location / Transfer Hotspot (Wallet App)
The Wallet App requires a maker app in order to sign Add Gateway, Assert Location, and Transfer Hotspot Transactions via deep links. Please see the Helium React Native SDK and WalletLink documentation for more information.
Internal QR Scanner
This section refers to QR codes scanned internally by the Helium Hotspot and Wallet apps.
In the Hotspot App all memos must be UTF8 strings with a max size of 8 bytes.
In the Wallet App all memos should be base64 encoded strings with a max size of 8 bytes.
If you want to target both the Wallet App and Hotspot App with one QR you should add
"utf8Memo": true
to use UTF8 memos for both.
Burn HNT
Generated from console
{
"type": "dc_burn",
"address": ":address",
"amount": "1.00",
"memo": "dGVzdA==="
}
UTF8 memo
{
"type": "dc_burn",
"utf8Memo": true,
"address": ":address",
"amount": "1.00",
"memo": "test"
}
Payment
Single Payee without memo
{
"type": "payment",
"address": ":address",
"amount": 1
}
Single Payee with memo
{
"type": "payment",
"address": ":address",
"amount": 1,
"memo": "dGVzdA=="
}
Single Payee with UTF8 memo
{
"type": "payment",
"utf8Memo": true,
"address": ":address",
"amount": 1,
"memo": "test"
}
Multiple Payee without memo
{
"type": "payment",
"payees": {
":address1": 10.2,
":address2": 1.2
}
}
Multiple Payee with memo
{
"type": "payment",
"payees": {
":address1": {
"amount": 10.2,
"memo": "dGVzdA=="
},
":address2": {
"amount": 1.2,
"memo": "dGVzdA=="
}
}
}
Multiple Payee with UTF8 memo
{
"type": "payment",
"utf8Memo": true,
"payees": {
":address1": {
"amount": 10.2,
"memo": "test"
},
":address2": {
"amount": 1.2,
"memo": "test"
}
}
}
Wallet address QR code
Create a qr code with a valid b58 wallet address. This is valid for both the Hotspot App and Wallet App.
12ORy9GjFASqWWxHmUq4tNXcjvr5Xfno8qimGMrNReMsSaM9T8f