> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tagada.io/llms.txt
> Use this file to discover all available pages before exploring further.

# SDK versions

> Each TagadaPay SDK, its current version, the API it talks to, its status and the minimum version to use.

Every SDK follows semantic versioning and is published on npm under `@tagadapay`. This page says which payments API each one talks to: [V2](https://docs.tagada.io/payments-api/v2-or-v3.md) (the Commerce API, `https://api.tagada.io/api/public/v1`) or [V3](https://docs.tagada.io/payments-api/overview.md) (the Payments API, `https://api.tagada.io/v1`).

## Current versions

| Package | Current | Runs in | Payments API | Status |
| - | - | - | - | - |
| [`@tagadapay/node-sdk`](https://www.npmjs.com/package/@tagadapay/node-sdk) | `3.27.1` | Your server (Node.js 18+) | V2 | Stable |
| [`@tagadapay/headless-sdk`](https://www.npmjs.com/package/@tagadapay/headless-sdk) | `1.21.0` | Browser, your own checkout | V2, and V3 stores with the same calls | Stable |
| [`@tagadapay/core-js`](https://www.npmjs.com/package/@tagadapay/core-js) | `3.7.0` | Browser | V2 (root), V3 (`/payments-v3`) | Stable; `/payments-v3` is Preview |
| [`@tagadapay/plugin-sdk`](https://www.npmjs.com/package/@tagadapay/plugin-sdk) | `4.4.1` | Browser, inside TagadaPay plugins | V2 | Legacy |

| Status | Meaning |
| - | - |
| Stable | Supported. New features land here. Breaking changes only in a new major version. |
| Preview | Usable, follows the [Payments API preview](https://docs.tagada.io/payments-api/overview.md#release-phases). |
| Legacy | Fixes only, no new features. Keeps working. Plan a move to its replacement. |

## Package by package

### `@tagadapay/node-sdk`

The server SDK for the Commerce API: stores, orders, customers, subscriptions, and V2 payments (`tagada.payments.process()`, `refund()`, `void()`). Default base URL `https://api.tagada.io/api/public/v1`.

* **Payments API (V3):** no methods yet. A `tagada.payments` namespace for V3 is **coming soon**. Until then, call `https://api.tagada.io/v1` over HTTP.
* On a store switched to V3, `payments.process()` keeps working. See [compatibility](https://docs.tagada.io/payments-api/migrate-from-v2.md#compatibility-v2-calls-keep-working).

### `@tagadapay/headless-sdk`

Builds a custom checkout on your domain when TagadaPay manages the cart. Pays a checkout session with `payment.processPayment()` (`checkout/pay-v2`) and handles 3DS and redirects itself.

* **Payments API (V3):** since `1.21.0`, a store switched to V3 pays with the same calls: cards, Apple Pay and Google Pay go through the server, and local methods and redirects run the V3 `next_action` loop inside the SDK (npm build, with `@tagadapay/core-js` `^3.7.0`). The CDN build does not run that loop yet. Nothing changes in your calls.
* Replaces `@tagadapay/plugin-sdk` over time.

### `@tagadapay/core-js`

Low-level browser building blocks.

* **Root export (V2):** card and wallet tokenization (`tagadaToken`), 3DS helpers, Radar. Pair it with `node-sdk` `payments.process()`.
* **`@tagadapay/core-js/payments-v3` (V3, Preview), since 3.7.0:** the browser client of the Payments API: `loadPayments`, card fields, wallets, `confirmPayment` and the `next_action` loop. See [Browser client](https://docs.tagada.io/payments-api/browser-client.md).

### `@tagadapay/plugin-sdk`

React SDK for plugins that run inside TagadaPay's plugin and funnel runtime.

* **Legacy, frozen:** fixes only. It will not get Payments API features.
* On a store switched to V3, it keeps working through the compatibility layer.
* For new custom checkouts, use `@tagadapay/headless-sdk`.

## Minimum versions

| Package | Minimum | Why |
| - | - | - |
| `@tagadapay/core-js` | `3.7.0` | First version with `/payments-v3`. |
| `@tagadapay/node-sdk` | `3.27.1` | First version that sends `X-Tagada-SDK`. |
| `@tagadapay/headless-sdk` | `1.21.0` | Pays V3 stores with the same calls; `1.20.1` was the first to send `X-Tagada-SDK`. |
| `@tagadapay/plugin-sdk` | `4.4.1` | First version that sends `X-Tagada-SDK`. |

Older versions keep working. Upgrade so support can tell which SDK and version sent a request.

## The X-Tagada-SDK header

Every SDK names itself on its requests:

```http theme={null}
X-Tagada-SDK: node-sdk/3.27.1
```

| Package | Header value |
| - | - |
| `@tagadapay/node-sdk` | `node-sdk/<version>` |
| `@tagadapay/headless-sdk` | `headless-sdk/<version>` |
| `@tagadapay/plugin-sdk` | `plugin-sdk/<version>` |
| `@tagadapay/core-js` (3DS calls of the root export) | `core-js/<version>` |
| `@tagadapay/core-js/payments-v3` | `payments-js/0` |

The header is informational. Do not set it yourself in direct HTTP calls.

## SDKs and API versions

V2 has no dated versions: any supported SDK version talks to it. The Payments API is dated: `@tagadapay/core-js/payments-v3` sends the `Payments-Version` it was built against (`2026-11-01` in 3.7.0), so upgrading the package is how you move to a newer API version. See [Versioning](https://docs.tagada.io/payments-api/versioning.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.