Introduction

Welcome to the Transactpay API β€” your toolkit for building fast, secure, and flexible payment solutions.

Use our APIs to process payments, send money, manage transactions, and integrate with your financial systems seamlessly.


What Can You Do?

With the Transactpay API, you can:

  • πŸ’³ Accept payments via cards, transfers, or QR codes
  • πŸ’Έ Send payouts β€” individually or in bulk β€” to bank accounts or wallets
  • πŸ” Access real-time transaction history
  • πŸ“¬ Subscribe to webhooks for events like payments and payouts

Before You Start

πŸ› οΈ

Prerequisite

You need a Transactpay account to access the API.πŸ‘‰ Create one here

Once registered:

  1. Log in to the Dashboard
  2. Go to Settings > API Keys & Webhooks
  3. Copy your API keys to get started

Authentication

All API requests must be authenticated using your api-key.

api-key was not passed in the header
⚠️

Security Warning

  • Never expose your Secret Key in client-side code
  • Never commit it to Git or public repositories
  • Store it securely in environment variables

Sandbox: Test Without Real Money

πŸ§ͺ

Test Environment

Use the sandbox to simulate requests and test integrations without real transactions.

Sandbox base URL:

https://sandbox.transactpay.co
  • Use test API keys (found in your dashboard)
  • Simulate full payment and payout flows
  • Test error handling and webhook delivery
⚠️

Note:

Sandbox and Live API keys are not interchangeable.


API Basics

HTTP Methods

MethodPurpose
GETFetch data
POSTCreate new records
PUTUpdate existing items
DELETERemove data

Request Format

All requests should:

  • Include an api-key header with your Public or Secret Key
  • Include Content-Type: application/json in headers
  • Use a JSON-formatted request body

Example:

POST /invoice
api-key: YOUR_PUBLIC_KEY or YOUR_SECRET_KEY
Content-Type: application/json

Response Format

Successful responses follow this structure:

{
  "status": true,
  "message": "Request successful",
  "data": {
    // Your payload here
  }
}

On failure:

{
  "status": false,
  "message": "Invalid input",
  "errors": {
    "field_name": "Error description"
  }
}

Rate Limiting

⚠️

Rate Limit Policy

Excessive requests will return a 429 Too Many Requests error. Use retries and exponential backoff in your implementation.


Webhooks

Stay informed in real time by subscribing to webhooks for:

  • βœ… Payment success/failure
  • πŸ’Έ Payout completion or failure
  • πŸ” Refund events
πŸ“˜

See Setting Up Webhooks for configuration and sample payloads.


Next Steps

Start exploring the API:


πŸ’¬

Need Help?

Contact Support or join the Developer Community for help and updates.