Developers

The Paytab API.

A clean, RESTful API with predictable resource-oriented URLs, JSON-encoded bodies, and standard HTTP response codes. Built by developers who've spent a decade being frustrated by other payment APIs.

Quickstart
From zero to first payment in five minutes.
API reference
Every endpoint, parameter and response.
Authentication
API keys, Bearer tokens, idempotency.
Code examples
Copy-paste snippets for common flows.
SDKs
Node, Python, PHP, Ruby, Go, Java, .NET.
Changelog
Every API change, dated and versioned.
Status
Real-time uptime for API, dashboard and webhooks.
API principles

Boring in all the right ways.

Every design decision on the Paytab API optimises for one thing: making sure your integration keeps working next year.

Predictable REST

Resource-oriented URLs, standard HTTP verbs, JSON everywhere. No surprises.

Idempotent by default

Send an Idempotency-Key on any POST and retry safely for up to 24 hours.

Signed webhooks

Every webhook is signed with HMAC-SHA256 and includes a timestamp to prevent replay.

80+ events

Fine-grained events for payments, subscriptions, invoices, payouts and disputes.

Typed SDKs

TypeScript, Pydantic and Java types generated directly from our OpenAPI spec.

Live logs

Every request, response and webhook is visible in your dashboard within milliseconds.

Popular endpoints

Full reference
POST/v1/paymentsCreate a payment
GET/v1/payments/{id}Retrieve a payment
POST/v1/payments/{id}/refundRefund a payment
GET/v1/paymentsList payments
POST/v1/customersCreate a customer
POST/v1/customers/{id}Update a customer
POST/v1/subscriptionsCreate a subscription
POST/v1/subscriptions/{id}/cancelCancel a subscription
POST/v1/payment_linksCreate a payment link
POST/v1/invoicesDraft an invoice
POST/v1/invoices/{id}/sendSend an invoice
POST/v1/payoutsSend a payout
GET/v1/balanceRetrieve your balance
GET/v1/eventsList events (webhooks)
POST/v1/connect/accountsCreate a connected account
POST/v1/disputes/{id}/evidenceSubmit dispute evidence
SDKs

Install and go.

Node.js
npm install paytab
Python
pip install paytab
PHP
composer require paytab/paytab-php
Ruby
gem install paytab
Go
go get github.com/paytab/paytab-go
Java
implementation 'uk.paytab:paytab-java:5.2.0'
Rate limits

100 read + 100 write requests per second in live mode. 25 rps in test mode. Higher limits by request.

Versioning

Date-based API versions (e.g. 2026-06-01). Breaking changes are opt-in — your integration never breaks without warning.

Sandboxing

Test mode is byte-for-byte identical to live, including timing, webhook delivery, and error responses.

Ready to write some code?

Take your first API payment in the next five minutes.