LCNEM WalletのQRの仕様

NEMのウォレットで請求によく使われるQRコードのデータは以下の記事でわかりやすく解説されています。

仮想通貨XEMをやりとりするためのQRコードを作成する。

ここで、data.nameというフィールドがありますが、

この画像内における緑色の斜体で書かれた「lc:jpy」というところに対応しています。ですがこれは表示される以外にまったく機能をもっていません。

LCNEM Walletでは、data.nameにモザイク名が入っていたらそのモザイクを、そうでなければXEMを送信するようにすることで、このQRコードの規格でもモザイクを請求できるようになっています。

例えばスクリーンショットのように「lc:jpy」という文字がdata.nameに入っていればlc:jpyの請求書としてみなすようになっています。

スクリーンショットのようなdata.nameの無駄な使い方をしてXEMしか請求できないようにするよりも、LCNEM Walletのようにdata.nameにモザイク名を割り当てるほうが合理的ではないでしょうか?

議論起こしていってください。

4/25 追記

LCNEM Walletは、XEMの請求書は上記Qiitaの通りにし、モザイクの請求書は以下の規格で作るようにしました。


{
  "v": 2,
  "type": 2,
  "data": {
    "addr": "",
    "msg": "",
    "name": "",
    "mosaics": [
      {
        "name": "lc:jpy",
        "quantity": 0
      }
    ]
  }
}

LCNEM Walletの読み取りのほうはどちらにも対応しています。

4/25 追記2

nem2ではquantityという表現はobsoleteになるようですね。

というわけで先を見越して、


{
  "v": 2,
  "type": 2,
  "data": {
    "addr": "",
    "msg": "",
    "name": "",
    "mosaics": [
      {
        "name": "lc:jpy",
        "amount": 0
      }
    ]
  }
}

にしました。PWAはアップデートしまくれるので良いですね。

あわせて読みたい