@openreceive/fastify 0.4.5 → 0.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -1
- package/package.json +3 -3
- package/skills/integrate-openreceive/references/btcpay.md +1 -1
- package/skills/integrate-openreceive/references/django.md +1 -1
- package/skills/integrate-openreceive/references/fastapi.md +1 -1
- package/skills/integrate-openreceive/references/fastify.md +1 -1
- package/skills/integrate-openreceive/references/laravel.md +1 -1
- package/skills/integrate-openreceive/references/next.md +1 -1
- package/skills/integrate-openreceive/references/node.md +1 -1
- package/skills/integrate-openreceive/references/php.md +1 -1
- package/skills/integrate-openreceive/references/rails.md +1 -1
- package/skills/integrate-openreceive/references/woocommerce.md +24 -1
package/README.md
CHANGED
|
@@ -1,12 +1,35 @@
|
|
|
1
1
|
# @openreceive/fastify
|
|
2
2
|
|
|
3
|
-
Fastify
|
|
3
|
+
Accept Bitcoin Lightning payments in your Fastify app, directly into a
|
|
4
|
+
wallet you control. Register the plugin with your database handle and three
|
|
5
|
+
hooks for authorization, order amounts, and fulfillment. OpenReceive manages
|
|
6
|
+
payment attempts and reconciliation in your existing database while your app
|
|
7
|
+
keeps its orders and customers.
|
|
8
|
+
|
|
9
|
+
OpenReceive supports optional swaps from **USDT, USDC, SOL, and ETH** through
|
|
10
|
+
a configured swap provider. The provider converts the payment to **BTC over
|
|
11
|
+
Lightning**, which settles into the merchant's connected wallet. Available
|
|
12
|
+
assets and networks depend on the provider; swaps are optional.
|
|
13
|
+
|
|
14
|
+
## Install
|
|
4
15
|
|
|
5
16
|
This package is ESM-only and requires Node >= 22.
|
|
6
17
|
|
|
18
|
+
```sh
|
|
19
|
+
npm install @openreceive/fastify
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Start with the [integration quickstart](https://github.com/openreceive/openreceive/blob/master/docs/guides/quickstart-fastify.md)
|
|
23
|
+
and the [payment storage guide](https://github.com/openreceive/openreceive/blob/master/docs/guides/storage.md).
|
|
24
|
+
|
|
25
|
+
## Connect your application
|
|
26
|
+
|
|
7
27
|
The all-in-one form is the happy path: register the plugin with the order
|
|
8
28
|
hooks and a database handle, and it builds the service and host itself.
|
|
9
29
|
|
|
30
|
+
The example below assumes your app has a database handle (`db`) and an order
|
|
31
|
+
lookup (`orders`). Apply the payment-table migration from the quickstart first.
|
|
32
|
+
|
|
10
33
|
```ts
|
|
11
34
|
import { openReceiveFastify } from "@openreceive/fastify";
|
|
12
35
|
|
|
@@ -85,3 +108,9 @@ types. Host-integration internals — `createHost`, the SQL payment
|
|
|
85
108
|
repository, the reconcile gate, the rate-limit helpers — live only in
|
|
86
109
|
`@openreceive/http`; import them from there when composing your own host
|
|
87
110
|
(`npm run check:public-api` pins both surfaces).
|
|
111
|
+
|
|
112
|
+
## Guides
|
|
113
|
+
|
|
114
|
+
- [Frontend checkout](https://github.com/openreceive/openreceive/blob/master/docs/guides/frontend-checkout.md)
|
|
115
|
+
- [Optional swaps](https://github.com/openreceive/openreceive/blob/master/docs/guides/automated-swaps.md)
|
|
116
|
+
- [Host testing](https://github.com/openreceive/openreceive/blob/master/docs/guides/host-testing.md)
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openreceive/fastify",
|
|
3
|
-
"version": "0.4.
|
|
4
|
-
"description": "Fastify
|
|
3
|
+
"version": "0.4.6",
|
|
4
|
+
"description": "Accept Bitcoin Lightning payments in Fastify with your own wallet and optional USDT, USDC, SOL and ETH swaps.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"bitcoin",
|
|
7
7
|
"lightning",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"main": "./dist/index.js",
|
|
18
18
|
"types": "./dist/index.d.ts",
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@openreceive/http": "0.4.
|
|
20
|
+
"@openreceive/http": "0.4.6"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
23
|
"fastify": "^4.0.0 || ^5.0.0"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (BTCPay Server)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Connect a BTCPay Server store to a receive-only NWC wallet with the OpenReceive
|
|
6
6
|
plugin, and optionally let payers pay BTCPay invoices with USDT, USDC, ETH or
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (Django)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Add OpenReceive to a Django project — the app you are already working in. You
|
|
6
6
|
do not need a copy of the OpenReceive source: the Python package is on PyPI
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (FastAPI)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Add OpenReceive to a FastAPI application — the app you are already working in.
|
|
6
6
|
You do not need a copy of the OpenReceive source: the engine is on PyPI
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (Fastify)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Add OpenReceive to a Fastify application — the app you are already working in.
|
|
6
6
|
You do not need a copy of the OpenReceive source: the packages are on npm, and
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (Laravel)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Add OpenReceive to a Laravel application — the app you are already working in.
|
|
6
6
|
You do not need a copy of the OpenReceive source: the package is on Packagist
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (Next.js)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Add OpenReceive to a Next.js App Router application — the app you are already
|
|
6
6
|
working in. You do not need a copy of the OpenReceive source: the packages are
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (Node.js)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Add OpenReceive to a Node application — the app you are already working in. You
|
|
6
6
|
do not need a copy of the OpenReceive source: the packages are on npm, and the
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (PHP)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Add OpenReceive to a PHP application — the app you are already working in. You
|
|
6
6
|
do not need a copy of the OpenReceive source: the engine is on Packagist
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (Rails)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Add OpenReceive to a Rails application — the app you are already working in. You
|
|
6
6
|
do not need a copy of the OpenReceive source: the gem is on RubyGems, the
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenReceive agent directions (WordPress + WooCommerce)
|
|
2
2
|
|
|
3
|
-
These directions describe OpenReceive 0.4.
|
|
3
|
+
These directions describe OpenReceive 0.4.6.
|
|
4
4
|
|
|
5
5
|
Install and configure the OpenReceive gateway in the existing WooCommerce
|
|
6
6
|
store. Preserve its theme, checkout, customer accounts, order model and prices.
|
|
@@ -90,6 +90,29 @@ Requirements: WordPress 6.6+, WooCommerce 9+, 64-bit PHP 8.2+ with GMP and sodiu
|
|
|
90
90
|
and MySQL 8 or MariaDB 10.5+. Activation creates payment-attempt tables in the
|
|
91
91
|
existing WordPress database. No separate database or application is required.
|
|
92
92
|
|
|
93
|
+
### Get the installable archive
|
|
94
|
+
|
|
95
|
+
Use `openreceive-wordpress-<version>.zip` from the selected
|
|
96
|
+
[OpenReceive GitHub release](https://github.com/OpenReceive/openreceive/releases)
|
|
97
|
+
when that asset is listed. A GitHub source-code zip is not the plugin archive.
|
|
98
|
+
If the release does not yet provide a built zip, build it on a development
|
|
99
|
+
machine with Node 22+, PHP 8.2+, Composer and WP-CLI:
|
|
100
|
+
|
|
101
|
+
```sh
|
|
102
|
+
git clone https://github.com/OpenReceive/openreceive.git
|
|
103
|
+
cd openreceive
|
|
104
|
+
git checkout <release-tag>
|
|
105
|
+
npm ci
|
|
106
|
+
npm run build:packages
|
|
107
|
+
composer install --working-dir=packages/php/wordpress
|
|
108
|
+
npm run release:wordpress:build
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Upload the resulting `dist/openreceive-wordpress-<version>.zip`. WP-CLI must be
|
|
112
|
+
on `PATH`, or set `OPENRECEIVE_WP_CLI` to the absolute path of its phar. The
|
|
113
|
+
WordPress server needs neither Node nor Composer: dependencies and checkout
|
|
114
|
+
assets are bundled inside the built plugin.
|
|
115
|
+
|
|
93
116
|
### Configure the wallet
|
|
94
117
|
|
|
95
118
|
Open **WooCommerce → Settings → Payments → OpenReceive**. Enter a receive-only
|