TheDocumentation Index
Fetch the complete documentation index at: https://docs.pawpayments.com/llms.txt
Use this file to discover all available pages before exploring further.
@pawpayments/sdk package is the official Node.js SDK for the Native V2 API. It covers the same REST resources as the Python SDK, uses only built-in fetch at runtime (no HTTP dependencies), ships ES modules and CommonJS builds plus .d.ts, and exposes webhook verification helpers aligned with other official integrations.
| Property | Value |
|---|---|
| Package name | @pawpayments/sdk |
| GitHub | pawpayments/node-sdk |
| Minimum Node.js | 18 |
| Runtime dependencies | None (fetch required) |
Installation
Quick start
PawPaymentsOptions also accepts baseUrl (default https://api.pawpayments.com), timeoutMs, and a custom fetch implementation for constrained runtimes.
Resources
Successful calls return unwrappedresult payloads (or list envelopes where the API paginates). Failures throw PawPaymentsApiError with code, httpStatus, message, and optional details.
| Attribute | Methods |
|---|---|
paw.assets | list() |
paw.rates | get({ base, assets }) |
paw.balance | get() |
paw.invoices | create(), get(id), list(), notify(id) |
paw.payouts | create(params, { uniqId }), get(id), list(), batch(items, { uniqId }) |
paw.ledger | list({ ... }) |
paw.notifications | list(), test(url?) |
paw.permanent | create(), get(id), list(), deactivate(id) |
payouts.create and payouts.batch accept optional uniqId for idempotency (UUIDv4). If omitted, the SDK uses crypto.randomUUID(); duplicates within two hours yield HTTP 409.
Webhook verification
Validate against the raw body buffer orUint8Array your framework exposes — parsing JSON first and re-stringifying will change bytes and fail HMAC checks.
permanent_address_id should return 200 OK without duplicating checkout-specific side effects, consistent with the PHP plugins.

