Protocol inspector
NIP-57 Zap Debugger
Run Lightning Address discovery one step at a time and inspect every intermediate value.
1 Validate Lightning Address
Input
Transformation
Split at @ without normalizing or silently correcting the input.
Validation
Not run
2 Resolve LNURL-pay endpoint
Complete Step 1 and explicitly resolve the endpoint.
3 Fetch and validate LNURL-pay response
Review the resolved URL in Step 2, then explicitly run the GET request.
4 Validate Zap Request parameters
Step 4 requires a valid LUD-06 response, supported NIP-57 advertisement, callback, amount range, and LNURL-pay URL.
5 Build unsigned kind 9734
Validate Step 4, then explicitly build the Zap Request.
6 Sign Zap Request with NIP-07
Build and validate an unsigned event in Step 5 first.
7 GET Zap callback
Sign the Zap Request in Step 6 first. The callback is only requested when you explicitly continue.
8 Inspect BOLT11 invoice amount
Get a Lightning invoice from the callback in Step 7 first.
9 Verify invoice description hash
Decode the Lightning invoice in Step 8 first.
10 Pay invoice
Payment handoff is available only after the invoice amount and description hash both match.
11 Wait for Zap Receipt
Step 11 requires the verified payment handoff, signed Zap Request, recipient p tag, and at least one relay from its relays tag.
12 Validate Zap Receipt
Step 12 requires at least one Step 11 candidate and the validated LNURL provider nostrPubkey.