Get Started

The Paisr API is built on the REST architecture and returns structured JSON responses. You can use the API to add core Paisr functionalities to your applications and build tailored payment experiences for your end-users.

OpenAPI File

The Paisr OpenAPI spec is available on Github. This file describes the APIs exposed in a standardized way suitable for testing, SDK generation, and other purposes that ingest OpenAPI definition files.

Environments

We have a live and sandbox environment. To access our Sandbox, please get in touch with our team.

https://api.live.paisr.tech
https://api.staging.paisr.tech

Authentication

The API uses JWT tokens to authenticate requests. To authenticate your requests, set the Authorization header for each request to Bearer <token>, where <token> is a valid access token.

Authorization: Bearer <token>

You can easily create, and manage access tokens from the Developers section in your Dashboard, or by using the Tokens API.

Your tokens carry many privileges so keep them secure! Do not share them in publicly visible places, such as committing them to GitHub or deploying them in client-side code. If your tokens have been compromised, you must revoke them immediately or reach out to our team for assistance.

Rate limits

The API uses a number of safegaurds against bursts of incoming traffic to help maximise its stability. Multiple requests in quick succession might return responses that show up as status 429.

Up to 250 requests are allowed per minute. Treat these limits as maximums and don't generate unnecessary load. We may reduce limits to prevent abuse, or increase limits to enable high-traffic applications. If you suddenly see a rising number of rate limited requests, please contact support.

Error Codes

Responses in the 2XX range indicate a successful request, while responses in the 3XX to 4XX range indicate a client-side error, and responses in the 5XX range indicite an issue with our systems.

An error returned by the API will have the following schema:

{
  "success": false,
  "message": "a clear error message"
}