Make Global Payments

Initiate various types of payment transactions including top-ups, payments, withdrawals, utility payments, and bill payments

POST https://upesipay.com/api/global/payments

Headers

Parameter Type Description
Authorization* String Bearer token
Content-Type* String application/json

Request Body

Parameter Type Description
request_type* String Type of transaction. Valid values: topup, payment, withdrawal, utility, bills
provider* String Payment provider. Valid values: bitlipa, intasend, sasapay, pesapal, m-pesa, bank
amount* Number Transaction amount (e.g., 10)
currency* String Currency code (e.g., KES)
country* String Country code (e.g., KE)
reference* String Unique external reference for the transaction
description String Description or reason for the transaction
callback_url String URL for callback notifications

Responses

200 OK

{
  "success": true,
  "transaction_id": "TXN-12345",
  "status": "PENDING"
}

Notes

  • Use provider_id from the discovery API response
  • request_type can be: topup, payment, withdrawal, utility, bills
  • provider can be: bitlipa, intasend, sasapay, pesapal, m-pesa, bank
  • Customer address is required for card payments

Try It Out

Please set your authentication token in the sidebar to test this API.

Headers

Request Body

Code Samples

curl -X POST \
  'https://upesipay.com/api/global/payments' \
  -H 'Content-Type: application/json' \
  -d '{"request_type":"payment","provider":"bitlipa","amount":10,"currency":"KES","country":"KE","reference":"TXN-12345","description":"Payment for invoice #20260102-001","callback_url":"https://example.com/callback"}'

Was this page helpful?

Previous

Discover global payment solutions and capabilities.

Discover Global Payments

Next

Get detailed fee information for transactions.

Get Transaction Fees