Skip to content

Quick Start ​

Welcome to Zoxupay API! This guide will help you quickly integrate our payment solutions.

Overview ​

Zoxupay provides secure, fast, and reliable cross-border payment API services, supporting multiple regions:

  • Philippines - Complete payment and payout solutions
  • Bangladesh - Localized payment services
  • Pakistan - E-wallet and bank transfer payment services
  • Mexico - Localized collection and payout services

Before You Begin ​

Before starting integration, you need:

  1. Get API Credentials

    • API Key (passed via x-access-key header)
    • Secret Key (used for generating signatures)
  2. Choose Integration Region

    • Select the appropriate regional API based on your business needs
  3. Understand Signature Mechanism

    • All API requests require signature authentication via headers

Basic Flow ​

1. Generate Signature ​

Each request must include x-access-key and signature in the headers. Signature algorithm steps:

  1. Collect all body parameters, excluding the signature field and empty values
  2. Sort parameters alphabetically by key name
  3. Concatenate in key=value format, joined with &
  4. Append the Secret Key directly at the end
  5. Calculate SHA256 hash and convert to lowercase hexadecimal
javascript
const crypto = require('crypto');

function generateSignature(params, secretKey) {
  const filteredParams = {};
  for (const [key, value] of Object.entries(params)) {
    if (value !== null && value !== '' && key !== 'signature') {
      filteredParams[key] = value;
    }
  }

  const sortedKeys = Object.keys(filteredParams).sort();
  const signStr = sortedKeys
    .map(key => `${key}=${filteredParams[key]}`)
    .join('&');

  const finalStr = signStr + secretKey;
  return crypto.createHash('sha256').update(finalStr).digest('hex').toLowerCase();
}

2. Make Request ​

The example below uses the Bangladesh collection API. Replace the base path and business fields when integrating other regions.

javascript
const axios = require('axios');

async function makePayment() {
  const params = {
    timestamp: String(Date.now()),
    merchantOrderNo: 'BDC202604240001',
    orderAmount: '12000',
    payMethod: 'BKASH',
    callbackUrl: 'https://merchant.example.com/payments/notify'
  };

  const signature = generateSignature(params, 'your_secret_key');

  const response = await axios.post(
    'https://openapi.zoxupay.com/bd-pay/api/v2/pay/submit',
    params,
    {
      headers: {
        'Content-Type': 'application/json',
        'x-access-key': 'your_api_key',
        signature
      }
    }
  );

  return response.data;
}

Choose Region ​

🌏 Philippines Market ​

Complete payment and payout API with cashier, collection, and bank list services

Start Integration →

🏦 Bangladesh Market ​

Integrated local payment solutions including TrxID submission, payout, and balance query

Start Integration →

🇵🇰 Pakistan Market ​

E-wallet (Easypaisa, JazzCash) and 42+ bank transfer collection and payout services

Start Integration →

🇲🇽 Mexico Market ​

Localized collection and payout services with cashier, collection, payout, and bank list capabilities

Start Integration →