@alexasomba/paystack-node
Version:
The most comprehensive Node.js SDK for Paystack - Complete, Type-safe, and Spec-compliant with full OpenAPI coverage and webhook verification.
68 lines (52 loc) • 2.11 kB
Markdown
---
name: paystack-node-api-operations
description: Use when calling Paystack API operations with the Paystack Node SDK @alexasomba/paystack-node, including transactions, request bodies, path params, query params, and pagination.
license: MIT
compatibility: "Node.js >=22.0.0; ESM-only package; backend/server runtime; imports @alexasomba/paystack-node and @alexasomba/paystack-node/webhooks."
---
# Paystack Node API Operations
The Node SDK exposes grouped helpers generated from the OpenAPI operation IDs. Prefer these helpers over low-level `client.GET` or manual `fetch`.
## Request shape
- JSON request bodies go in `body`.
- Path parameters go in `params.path`.
- Query parameters go in `params.query`.
- Empty operations can be called with no argument.
```ts
const initialized = await paystack.transaction_initialize({
body: {
email: "customer@example.com",
amount: 5000,
},
});
```
```ts
const verified = await paystack.transaction_verify({
params: {
path: { reference: "ref_123" },
},
});
```
```ts
const customers = await paystack.customer_list({
params: {
query: { perPage: 50, page: 1 },
},
});
```
## Operation naming
Use the generated grouped names already exported by the SDK, for example:
- `transaction_initialize`
- `transaction_verify`
- `customer_create`
- `subscription_create`
- `transferrecipient_create`
- `refund_create`
- `bank_resolveAccountNumber`
Do not invent convenience methods such as `subscription.update` unless they exist on the generated client.
## Pagination
Paystack list endpoints commonly support `page`, `perPage`, and sometimes cursor fields such as `next` or `previous`. Keep pagination parameters inside `params.query` and inspect the response body `meta` and headers when advancing pages.
## Best practices
- Send amounts in the lowest currency denomination for the currency.
- Verify transactions on the server after redirects or checkout callbacks.
- Keep customer-facing references unique and idempotent in your own system.
- Treat Paystack response `status: false` as a failed operation even if the HTTP status is 2xx.