Docs

API Reference

Choose your collection flow

OasisPay supports two common integration paths. Use virtual accounts for transfer-first collections, or Checkout when you want a hosted payment experience.

Integration flow

Persistent / Virtual Account

Use this when you want to issue a bank account for transfer collections and reconcile credits by account or payment reference.

Create endpoint

POST /api/v1/virtual-accounts/reserved

Alternative endpoint

POST /api/v1/virtual-accounts/dynamic

Request
await fetch("https://api.oasispayhq.com/api/v1/virtual-accounts/reserved", {
  method: "POST",
  headers: {
    Authorization: "Bearer osk_test_xxx",
    "Content-Type": "application/json",
    "Idempotency-Key": "customer_account_1001"
  },
  body: JSON.stringify({
    customer: {
      email: "[email protected]",
      firstName: "Francis",
      lastName: "Samuel",
      phone: "08012345678"
    },
    preferredAccountName: "DAILYICTSOLUTIONS FRANCIS"
  })
});
Response
{
  "id": "va_xxx",
  "reference": "va_xxx",
  "type": "RESERVED",
  "status": "ACTIVE",
  "accountName": "DAILYICTSOLUTIONS FRANCIS",
  "accountNumber": "1234567890",
  "bankName": "Paga Bank",
  "providerReference": "paga_reference"
}

Important

  • Reserved accounts are persistent and reusable for a customer.
  • Dynamic accounts are amount-bound and expire after the configured payment window.
  • Use webhooks to confirm credits before fulfilling value.