Self-managed NIP-05 as a Lightning receiver Zap Address for Nostr

milo

10. Mai 2025May 10, 2025 · 3 Min. Lesezeit3 min read

🎯 Goal#

You want to:

Important:


🧩 Components Used in This Example#

The following article describes the precondition of creating a nip-05 with custom domain:

Self managed NIP-05 via GitHub Pages with Custom Domain


📁 GitHub Folder Structure#

The GitHub folder structure must look like this. You extend the existing NIP-05 setup by adding a folder lnurlp with one file:

.well-known/
├── nostr.json                 # For NIP-05
└── lnurlp/
    └── petermuster           # For LNURL-Zap

*For example, if your Lightning address is petermuster@zeuspay.com, name the file petermuster (no file extension is needed).


📄 Content of .well-known/lnurlp/petermuster#

Open the terminal on your linux/mac and run:

curl https://zeuspay.com/.well-known/lnurlp/petermuster

Copy the result into a text editor, clean it up and save it into a file named petermuster with this format:

{
  "callback": "https://zeuspay.com/api/lnurl/pay/petermuster",
  "metadata": "[["text/plain","Self-custodial LN address powered by ZEUS. Hodl invoice will settle when user comes online within 24hrs or you'll be refunded."],["text/identifier","petermuster@zeuspay.com"]]",
  "tag": "payRequest",
  "minSendable": 1000,
  "maxSendable": 612000000000,
  "allowsNostr": true,
  "nostrPubkey": "3943rjfoijdlakfjo0afsdafasfasfdsadklnfaksdfjljewopqjweilj",
  "commentAllowed": 600,
  "zeusPayPlus": true
}

📝 Nostr Profile Configuration#

Make sure your Nostr profile links both your nip05 and your Lightning address like this:

{
  "nip05": "petermuster@mydomain.com",
  lightnisadress (lud16): "petermuster@mydomain.com"
}

⚠️ Privacy / Info Leaks#

Field Leak? Explanation
maxSendable 🟡 Minor Indicates the user can accept up to 6.12 BTC. This is not your balance, it shows just you use ZeusPay Plus.
metadata 🔵 Editable You can remove ZEUS branding for more privacy
nostrPubkey 🔵 Public This is your public key, no issue
callback domain 🟡 Yes It reveals you're forwarding to zeuspay.com
Custody 🟢 No You're using Zeus in non-custodial mode

✅ Benefits of This Setup#

Advantage Description
Unified Identity One address for both NIP-05 and Lightning Zaps
Less dependency on the client No need to use or register a Lightning wallet in the Nostr client
Direct payment to your node Sats go directly to your Zeus wallet via Olympus LSP
Easily switch payment backend You can change the real LNURL backend later without changing your address
Future-proof You can later self-host your own LNURL backend
#30023:9063ef6b926f3f4d0d36b0d87198c81c3e01bfc311e260ec519b7feafd1e9a09:39Ur3_ADnWRZ_2PLiJTIC#bitcoin#lightning#nip-05#selfhosted#zaps

Written by

Comments

No comments yet. Start the conversation.

Contents

7 sections

  1. 🎯 Goal
  2. 🧩 Components Used in This Example
  3. 📁 GitHub Folder Structure
  4. 📄 Content of .well-known/lnurlp/petermuster
  5. 📝 Nostr Profile Configuration
  6. ⚠️ Privacy / Info Leaks
  7. ✅ Benefits of This Setup