TagadaPay API
The TagadaPay API is a REST API that lets you process payments, manage subscriptions, handle customers, deploy plugins, and orchestrate checkout funnels — all programmatically.Base URL
Authentication
Authenticate every request with a Bearer token in theAuthorization header. Get your API key from the TagadaPay Dashboard.
Authentication troubleshooting
A missing, empty, or malformedAuthorization header returns 401 with a message explaining what was wrong:
- Empty shell variable —
Authorization: Bearer $KEYwith$KEYunset sends an empty token. Verify withecho ${#KEY}before calling. - Wrong header — the key must be in
Authorization: Bearer <key>, not in a custom header. - Wrong key type — public API endpoints accept dashboard API keys (Settings → API Keys) and TPA-restricted
tp_sk_…partner keys.
Older API versions surfaced this situation as a confusing 500 mentioning
Clerk: auth() was called but Clerk can't detect usage of clerkMiddleware(). If you see that error, it means the same thing: your API key did not reach the server — fix the Authorization header.Request format
- All requests must use HTTPS
- Set
Content-Type: application/jsonfor POST/PUT requests - All responses return JSON
Rate limits
Each account can make up to 600 requests per minute, counted across all of its API keys. The counter resets at the start of every clock minute. Exceeding it returns429 Too Many Requests with a Retry-After header: the number of seconds until the counter resets.
These endpoints are not counted against that limit: /stores, /stores/{id}/payment-setup, /plugins/*, /payments/export, /processing/enroll, /chargeblast/*, /atp/* and /funnels/republish-runtime.
Separately, our network edge caps each source IP address at 200 requests per minute. A 429 from that cap carries no Retry-After and no x-request-id. Other 429 responses, such as the one returned after repeated invalid API keys, carry no Retry-After either. Whenever Retry-After is missing, back off exponentially.
Apart from that edge 429, every API response carries an x-request-id header. Include it when you contact support about a specific call.
Error codes
Error responses follow this structure:
Pagination
List endpoints support pagination via request body parameters:- Offset pagination
- Simple pagination
Used by payments, orders, customers, and block rules.
Filtering
Most list endpoints accept afilters object. Common patterns:
is-equal-date, is-between-date, is-after-date, is-before-date.
Webhooks
Register webhook endpoints to receive real-time event notifications for payments, orders, subscriptions, and more. See the Webhooks API section.SDKs
Node.js SDK
Server-side SDK for Node.js / TypeScript
Plugin SDK
Build custom checkout plugins with React
Plugin CLI
Deploy and manage plugins from the command line
Need help?
- Email: api-support@tagadapay.com
- Dashboard: app.tagada.io
