Hey apps,

meet bitcoin

Nostr Wallet Connect (NWC) is an open protocol
to connect lightning wallets to apps

How It Works

NWC allows for sustained interaction between bitcoin lightning wallets and apps.
Once an app connection is created, the app can request payments through a Nostr relay.

NWC allows for sustained interaction between bitcoin lightning wallets and apps.


Once an app connection is created, the app can request payments through a Nostr relay.

NWC allows for sustained interaction
between bitcoin lightning wallets and apps.


Once an app connection is created,
the app can request payments through a Nostr relay.

App

Wallet

Creates app connection

Confirms app connection

Image

Relay

Requests

pay_invoice

Recipient

⚡Invoice paid ⚡

Forwards

pay_invoice

App

Wallet

Creates app connection

Confirms app connection

Image

Relay

Forwards pay_invoice

Requests pay_invoice

Recipient

⚡ Invoice paid ⚡

App

Wallet

Creates app connection

Confirms app connection

Image

Relay

Forwards pay_invoice

Requests pay_invoice

Recipient

⚡ Invoice paid ⚡

What are you building?

What You Get

Effortless Connection

Users connect wallets instantly – no Nostr account required

One-Click Payments

Seamless in-app transactions – no confirmations or QR codes needed

No Custody Involved

Users come with wallets of choice – your app never touches bitcoin

Expand Your Reach

A single interface that allows to onboard from numerous bitcoin wallets

Start with SDKs

Choose JavaScript or Rust SDK to easily integrate

NWC into your application.

Image

1

2

3

4

5

6

7

8

9

import { webln } from "@getalby/sdk";


const nwc = new webln.NWC({ nostrWalletConnectUrl });


// connect to the relay

await nwc.enable();


// now you can send payments by passing in an invoice

const response = await nwc.sendPayment(invoice);

1

2

3

4

5

6

use nwc::prelude::*;


let nwc = NWC::new(uri);


let params = PayInvoiceRequest::new(invoice);

let response = nwc.pay_invoice(params).await?;

Integrate NWC Today

and join family of apps
with +350,000 users

  • Image
    Damus

    Social media

  • Image
    Zap Stream

    Stream and stack sats

  • Image
    Zapple Pay

    Zap from any client

  • Lume

    Social media

  • Bitcoin Connect

    WebLN library

  • Image
    Kiwi

    Communities

  • Image
    Boardwalk Cash

    ecash web wallet

  • Image
    Wavlake

    Creators platform

  • Image
    Amethyst

    Social media

  • Image
    Snort

    Social media

  • Image
    ZapPlanner

    Schedule payments

  • Image
    Habla News

    Blogging

  • Image
    Zappy Bird

    Loose sats quickly

  • Image
    More Speech

    Social media

  • YANA

    Social media

  • Image
    Spring

    Nostr browser

  • Image
    Primal

    Social media

  • Image
    Wherostr

    Map of notes

  • Image
    noStrudel

    Social media

  • Image
    YakiHonne

    Blogging

  • Image
    Nostur

    Social media

What are you building?

What You Get

Effortless Connection

Users connect wallets instantly – no Nostr account required

One-Click Payments

Seamless in-app transactions – no confirmations or QR codes

No Custody Involved

Users come with wallets of choice – your app never touches bitcoin

Expand Your Reach

A single interface to onboard from numerous bitcoin wallets

Start with SDKs

Choose JavaScript or Rust SDK to easily integrate NWC into your application.

Image

1

2

3

4

5

6

7

8

9

import { webln } from "@getalby/sdk";


const nwc = new webln.NWC({ nostrWalletConnectUrl });


// connect to the relay

await nwc.enable();


// now you can send payments by passing in an invoice

const response = await nwc.sendPayment(invoice);

1

2

3

4

5

6

use nwc::prelude::*;


let nwc = NWC::new(uri);


let params = PayInvoiceRequest::new(invoice);

let response = nwc.pay_invoice(params).await?;

Integrate NWC Today

and join family of apps
with +350,000 users

  • Image
    Damus

    Social media

  • Image
    Zap Stream

    Stream and stack sats

  • Image
    Zapple Pay

    Zap from any client

  • Lume

    Social media

  • Bitcoin Connect

    WebLN library

  • Image
    Kiwi

    Communities

  • Image
    Boardwalk Cash

    ecash web wallet

  • Image
    Wavlake

    Creators platform

  • Image
    Amethyst

    Social media

  • Image
    Snort

    Social media

  • Image
    ZapPlanner

    Schedule payments

  • Image
    Habla News

    Blogging

  • Image
    Zappy Bird

    Loose sats quickly

  • Image
    More Speech

    Social media

  • YANA

    Social media

  • Image
    Spring

    Nostr browser

  • Image
    Primal

    Social media

  • Image
    Wherostr

    Map of notes

  • Image
    noStrudel

    Social media

  • Image
    YakiHonne

    Blogging

  • Image
    Nostur

    Social media

What are you
building?

What You Get

Effortless Connection

Users connect wallets instantly – no Nostr account required

Expand Your Reach

A single interface to onboard from numerous bitcoin wallets

No Custody Involved

Users come with wallets of choice – your app never touches bitcoin

One-Click Payments

Seamless in-app transactions, no confirmations or QR codes

Start with SDKs

Choose JavaScript or Rust SDK to easily integrate

NWC into your application.

Image

1

2

3

4

5

6

7

8

9

import { webln } from "@getalby/sdk";


const nwc = new webln.NWC({ nostrWalletConnectUrl });


// connect to the relay

await nwc.enable();


// now you can send payments by passing in an invoice

const response = await nwc.sendPayment(invoice);

1

2

3

4

5

6

use nwc::prelude::*;


let nwc = NWC::new(uri);


let params = PayInvoiceRequest::new(invoice);

let response = nwc.pay_invoice(params).await?;

Integrate NWC Today

and join family of apps
with +350,000 users

  • Image
    Damus

    Social media

  • Image
    Zap Stream

    Stream and stack sats

  • Image
    Zapple Pay

    Zap from any client

  • Lume

    Social media

  • Bitcoin Connect

    WebLN library

  • Image
    Kiwi

    Communities

  • Image
    Boardwalk Cash

    ecash web wallet

  • Image
    Wavlake

    Creators platform

  • Image
    Amethyst

    Social media

  • Image
    Snort

    Social media

  • Image
    ZapPlanner

    Schedule payments

  • Image
    Habla News

    Blogging

  • Image
    Zappy Bird

    Loose sats quickly

  • Image
    More Speech

    Social media

  • YANA

    Social media

  • Image
    Spring

    Nostr browser

  • Image
    Primal

    Social media

  • Image
    Wherostr

    Map of notes

  • Image
    noStrudel

    Social media

  • Image
    YakiHonne

    Blogging

  • Image
    Nostur

    Social media

Image

A simple library that combines NWC with WebLN and enables users to connect their wallet to websites on any browser or device.

A simple library that combines NWC with WebLN and enables users to connect their wallet to websites on any browser or device.

A simple library that combines NWC with WebLN and enables users to connect their wallet to websites on any browser or device.

Image
Image
Image
Image

More Than Social Media

Nostr is so much more than just "decentralised social media".

It's a neutral communication protocol that allows for high degree of interoperability between bitcoin and other technologies.

Nostr

Nostr

Decentralised

Decentralised

Globally available

Globally available

Simple to work with

Simple to work with

Safe, resilient and verifiable

Safe, resilient and verifiable