React Native Breez SDK
The Breez SDK enables mobile developers to integrate Lightning and bitcoin payments into their apps with a very shallow learning curve. The use cases are endless – from social apps that want to integrate tipping between users to content-creation apps interested in adding bitcoin monetization. Crucially, this SDK is an end-to-end, non-custodial, drop-in solution powered by Greenlight, a built-in LSP, on-chain interoperability, third-party fiat on-ramps, and other services users and operators need.
The Breez SDK provides the following services:
- Sending payments (via various protocols such as: bolt11, keysend, lnurl-pay, lightning address, etc.)
- Receiving payments (via various protocols such as: bolt11, lnurl-withdraw, etc.)
- Fetching node status (e.g. balance, max allow to pay, max allow to receive, on-chain balance, etc.)
- Connecting to a new or existing node.
Installation
$ npm install @breeztech/react-native-breez-sdk
or
$ yarn add @breeztech/react-native-breez-sdk
Usage
For a more in-depth look at using the Breez SDK, you can follow these examples in the SDK overview.
Please contact support@breez.technology to request a Breez API Key.
import React, { useEffect } from "react"
import {
defaultConfig,
EnvironmentType,
sendPayment,
connect
} from "@breeztech/react-native-breez-sdk";
import BuildConfig from "react-native-build-config"
const App = () => (
...
const payInvoice = async (bolt11: string, sats?: number) => {
// Pay invoice
const payment = await sendPayment(bolt11, sats)
}
useEffect(() => {
const asyncFn = async () => {
// create the specific node configuration
const nodeConfig = {
type: "greenlight",
config: {
partnerCredentials: {
deviceKey: null,
deviceCert: null
}
}
}
// Construct the sdk default config
const config = await defaultConfig(EnvironmentType.PRODUCTION, BuildConfig.BREEZ_API_KEY, nodeConfig)
// Connect to the Breez SDK make it ready to use
await connect(config, seed)
}
asyncFn()
}, [])
...
)
export default App
Example
In the example
folder of the Breez SDK repository you will find a basic application for using Breez SDK. Change directory into the folder and install the dependencies:
$ yarn
Then to run on android:
$ yarn android
or for iOS:
$ yarn pods && yarn ios