{"id":325876,"date":"2026-06-24T19:31:19","date_gmt":"2026-06-24T19:31:19","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/lawallet-lightning-address\/"},"modified":"2026-06-24T19:31:09","modified_gmt":"2026-06-24T19:31:09","slug":"lawallet-lightning-address","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/lawallet-lightning-address\/","author":8278458,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.2.2","stable_tag":"0.2.2","tested":"7.0","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Accept Bitcoin with your Lightning Address","header_author":"LaWallet","header_description":"Connect payments with most popular Lightning wallets without registration or credentials.","assets_banners_color":"f7f4fc","last_updated":"2026-06-24 19:31:09","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.lawallet.io","header_author_uri":"https:\/\/lawallet.io","rating":0,"author_block_rating":0,"active_installs":0,"downloads":27,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.2.2":{"tag":"0.2.2","author":"magollo","date":"2026-06-24 19:31:09"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3585298,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3585298,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3585298,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3585298,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3585298,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.2.2"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[1886,40289,216483,220135,1887],"plugin_category":[45],"plugin_contributors":[268777],"plugin_business_model":[],"class_list":["post-325876","plugin","type-plugin","status-publish","hentry","plugin_tags-bitcoin","plugin_tags-lightning","plugin_tags-lnurl","plugin_tags-nostr","plugin_tags-payments","plugin_category-ecommerce","plugin_contributors-magollo","plugin_committers-magollo"],"banners":{"banner":"https:\/\/ps.w.org\/lawallet-lightning-address\/assets\/banner-772x250.png?rev=3585298","banner_2x":"https:\/\/ps.w.org\/lawallet-lightning-address\/assets\/banner-1544x500.png?rev=3585298","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/lawallet-lightning-address\/assets\/icon.svg?rev=3585298","icon":"https:\/\/ps.w.org\/lawallet-lightning-address\/assets\/icon.svg?rev=3585298","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>Accept Bitcoin with your Lightning Address<\/strong> combines two Lightning features in one plugin:<\/p>\n\n<ol>\n<li><strong>WooCommerce Lightning payments.<\/strong> A checkout gateway that pays to your merchant Lightning\nAddress using LNURL-pay, verifies settlement server-side with LUD-21, optionally detects payment\nfaster in the browser via NIP-57 zap receipts and WebLN, and converts fiat order totals to sats\nusing Yadio exchange rates.<\/li>\n<li><strong>Lightning Address \/ NIP-05 discovery.<\/strong> Keeps your root domain on WordPress while a separate\n<a href=\"https:\/\/lawallet.io\">LaWallet<\/a> instance serves wallet discovery: the plugin registers rewrite\nrules for the relevant <code>\/.well-known\/<\/code> routes and redirects them (HTTP 307) to the LaWallet\ngateway you configure.<\/li>\n<\/ol>\n\n<h4>Payments: how an order is processed<\/h4>\n\n<ul>\n<li>At checkout the plugin resolves your merchant Lightning Address (LNURL-pay) and requests an\ninvoice for the order total.<\/li>\n<li>The customer pays by scanning a QR code, opening their wallet via a <code>lightning:<\/code> link, or using\nWebLN.<\/li>\n<li>Your server confirms settlement with the LUD-21 <code>verify<\/code> URL before the order is marked paid.\nZap receipts and WebLN only speed up detection in the browser - they never settle an order by\nthemselves.<\/li>\n<li>Pending Lightning orders are re-checked by WordPress cron; expired unpaid invoices cancel the\norder automatically.<\/li>\n<li>For non-BTC store currencies, order totals are converted using Yadio BTC exchange rates, or a\nmanual sats-per-unit rate you set yourself.<\/li>\n<\/ul>\n\n<h4>Discovery: which requests are redirected<\/h4>\n\n<p>Only the wallet discovery routes under <code>\/.well-known\/<\/code> are touched (for example\n    \/.well-known\/lnurlp\/... and <code>\/.well-known\/nostr.json<\/code>). They are redirected with HTTP 307\n(method-preserving) to the LaWallet gateway endpoint you configure under\n<strong>Settings -&gt; LaWallet<\/strong>. The endpoint is verified before discovery is enabled.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin talks to the following external services. No data is sent anywhere until you\nconfigure the related feature.<\/p>\n\n<h4>Your merchant Lightning Address endpoint (LNURL-pay)<\/h4>\n\n<p>When a customer checks out, the plugin contacts the LNURL-pay endpoint of the Lightning Address\nyou configured (the domain after the <code>@<\/code> of your own address) to request an invoice for the order\namount, and later calls its LUD-21 <code>verify<\/code> URL to confirm settlement. Order amounts and invoice\nidentifiers are sent. The terms of that service are the ones of your own wallet provider.<\/p>\n\n<h4>LaWallet gateway<\/h4>\n\n<p>If you enable discovery, requests to your site's <code>\/.well-known\/<\/code> wallet discovery routes are\nredirected to the LaWallet gateway endpoint you configure, and the plugin probes\n    \/.well-known\/lawallet.json on that endpoint to verify it. See the\n<a href=\"https:\/\/lawallet.io\/terms\">LaWallet terms<\/a> and <a href=\"https:\/\/lawallet.io\/privacy\">privacy policy<\/a>.<\/p>\n\n<h4>Yadio exchange rates<\/h4>\n\n<p>For stores <strong>not<\/strong> priced in BTC, the plugin converts the order total to satoshis using a Bitcoin\nexchange rate from <a href=\"https:\/\/yadio.io\">Yadio<\/a>, a free public rate API. It sends a single server-side\nGET request to <code>https:\/\/api.yadio.io\/rate\/{CURRENCY}\/BTC<\/code> whenever a fresh rate is needed, where\n    {CURRENCY} is your WooCommerce store currency code (for example <code>USD<\/code> or <code>ARS<\/code>). Results are\ncached for 5 minutes. Only that three-letter currency code is sent - no customer, order, account,\nor site data ever leaves your server.<\/p>\n\n<p>This request is optional. Stores priced in BTC\/SAT need no conversion, and any store can avoid\nYadio entirely by setting a fixed \"manual sats-per-unit\" rate in the gateway settings.<\/p>\n\n<p>Yadio is a free, public, no-account API. Because the request is made from your server, Yadio receives\nyour store server's IP address (which, per its privacy policy, it logs to monitor for abuse) and the\nthree-letter currency code - nothing else. This service is provided by Yadio; see the Yadio\n<a href=\"https:\/\/yadio.io\/terms.html\">terms of service<\/a> and <a href=\"https:\/\/yadio.io\/privacy.html\">privacy policy<\/a>.\nYadio's role as the rate provider for the LaWallet ecosystem is also disclosed in the\n<a href=\"https:\/\/lawallet.io\/privacy\">LaWallet privacy policy<\/a>.<\/p>\n\n<h4>Nostr relays (optional)<\/h4>\n\n<p>If your wallet provider supports NIP-57 zap receipts, the customer's browser subscribes to the\nNostr relays advertised by the wallet to detect payment faster. Only the public invoice\/zap\nrequest data is exchanged. Relays are operated by third parties chosen by your wallet provider.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin ZIP from <strong>Plugins -&gt; Add New -&gt; Upload Plugin<\/strong>, or unzip it into\n   wp-content\/plugins\/.<\/li>\n<li>Activate <strong>Accept Bitcoin with your Lightning Address<\/strong>.<\/li>\n<li>For payments: go to <strong>WooCommerce -&gt; Settings -&gt; Payments -&gt; Lightning (LaWallet)<\/strong> and set\nyour merchant Lightning Address. Saving creates a test invoice and requires a LUD-21 verify\nURL, so you know settlement verification works before going live.<\/li>\n<li>For discovery: go to <strong>Settings -&gt; LaWallet<\/strong>, enter your LaWallet gateway endpoint and\nconnect. The plugin verifies the endpoint before enabling the redirects.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20woocommerce%3F\"><h3>Do I need WooCommerce?<\/h3><\/dt>\n<dd><p>Only for payments. Lightning Address \/ NIP-05 discovery works without WooCommerce.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20custody%20funds%3F\"><h3>Does the plugin custody funds?<\/h3><\/dt>\n<dd><p>No. Payments go directly to your own Lightning Address. The plugin only requests invoices and\nverifies settlement via LUD-21.<\/p><\/dd>\n<dt id=\"my%20wallet%20does%20not%20support%20lud-21%2C%20can%20i%20still%20use%20this%3F\"><h3>My wallet does not support LUD-21, can I still use this?<\/h3><\/dt>\n<dd><p>No. Server-side settlement verification (LUD-21 <code>verify<\/code>) is required so orders are only marked\npaid when the invoice is actually settled.<\/p><\/dd>\n<dt id=\"which%20currencies%20are%20supported%3F\"><h3>Which currencies are supported?<\/h3><\/dt>\n<dd><p>Any WooCommerce currency supported by Yadio rates, plus a manual sats-per-unit rate as a\nfallback. BTC-denominated stores need no conversion.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.2.2<\/h4>\n\n<ul>\n<li>Update the bundled Spanish (es_AR, es_ES) translations to cover the new gateway, discovery, and NIP-57 strings.<\/li>\n<\/ul>\n\n<h4>0.2.1<\/h4>\n\n<ul>\n<li>Document the Yadio exchange-rate service with links to its Terms of Service and Privacy Policy.<\/li>\n<\/ul>\n\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>Add live LUD-16, LUD-21 and NIP-57 checks beside the merchant Lightning Address field, each with a status icon.<\/li>\n<li>Accept Lightning Addresses that do not support LUD-21: settlement is confirmed from signed NIP-57 zap receipts (at checkout and via the cron re-check), with BIP-340 signature verification so only genuine receipts can settle an order.<\/li>\n<li>Show the connected gateway name and domain on the discovery settings page, and warn when the gateway domain does not match your site.<\/li>\n<li>Refresh the discovery settings copy and rename the Settings menu entry to \"Lightning by LaWallet\".<\/li>\n<\/ul>\n\n<h4>0.1.7<\/h4>\n\n<ul>\n<li>Refresh the plugin directory icon (new lightning mark with a subtle Bitcoin watermark).<\/li>\n<\/ul>\n\n<h4>0.1.6<\/h4>\n\n<ul>\n<li>Rename the plugin to \"Accept Bitcoin with your Lightning Address\" and update the short description.<\/li>\n<\/ul>\n\n<h4>0.1.5<\/h4>\n\n<ul>\n<li>Set the Contributors field to the plugin owner's WordPress.org account (magollo).<\/li>\n<li>Expand the Yadio external-service disclosure: clarify the optional, currency-code-only request, the manual-rate opt-out, and the available Yadio documentation.<\/li>\n<\/ul>\n\n<h4>0.1.4<\/h4>\n\n<ul>\n<li>Add a GitHub-based self-updater so installs distributed outside the WordPress.org directory can update from the project's GitHub Releases. Self-disables when the plugin is hosted on WordPress.org.<\/li>\n<\/ul>\n\n<h4>0.1.3<\/h4>\n\n<ul>\n<li>Point the Plugin URI to the project site (wordpress.lawallet.io).<\/li>\n<\/ul>\n\n<h4>0.1.2<\/h4>\n\n<ul>\n<li>Enqueue the settings-page CSS and JavaScript instead of printing them inline.<\/li>\n<li>Expand the Yadio external service documentation and load translations on the init hook.<\/li>\n<li>Set the plugin Contributors to agustinkassis.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Improve Lightning payment page rate display with locked Yadio conversion snapshots and BTC\/SAT display options.<\/li>\n<li>Polish checkout\/payment controls, including WebLN loading states, paid-state disabling, and fallback wallet visibility.<\/li>\n<li>Add a Bitcoin icon to the WooCommerce LaWallet payment method option.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release: WooCommerce Lightning gateway (LNURL-pay + LUD-21 verification, WebLN and\nNIP-57 zap receipt detection, Yadio fiat conversion) and Lightning Address \/ NIP-05 discovery\nredirects to a LaWallet gateway.<\/li>\n<\/ul>","raw_excerpt":"Connect payments with most popular Lightning wallets without registration or credentials.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/325876","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=325876"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/magollo"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=325876"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=325876"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=325876"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=325876"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=325876"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=325876"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}