IbejuPaySelf-Service Portal
IbejuPay for Developers

Accept payments in your application

The IbejuPay merchant API lets any business, school, association or app in Ibeju-Lekki take bank-transfer payments with a clean REST API, a hosted checkout your customers trust, signed webhooks and full test mode — and every transaction reported on ibejupay.com.

Already registered? Sign in to your dashboard · API reference

Initialize a payment
curl https://ibejupay.com/api/v1/transactions/initialize \
  -H "Authorization: Bearer sk_test_xxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
        "amount": 500000,
        "email": "customer@example.com",
        "reference": "order-8021",
        "callback_url": "https://yourapp.com/payment/complete"
      }'

How it works

1

Initialize

Your server calls POST /transactions/initialize with the amount (in kobo), the customer's email and your unique reference. You get back an authorization_url.

2

Customer pays

Redirect the customer to the hosted checkout. They pick a bank, get a one-time virtual account, and transfer from any bank app or USSD. Confirmation is automatic.

3

Get notified

The customer is bounced back to your callback_url, a signed charge.success webhook hits your server, and you confirm with GET /transactions/verify/{reference}.

Built for production

Test mode, first

Every merchant gets test keys immediately. Test payments simulate the full flow — checkout, settlement, webhook, callback — without moving a naira.

Signed webhooks

Every event is signed with HMAC-SHA512 over the exact request body, retried with backoff, and idempotent via a unique event_id.

Bank-transfer rails

Payments settle over dedicated one-time virtual accounts on Fidelity and Access Bank — the rails already processing Ibeju-Lekki's revenue.

Secure by design

Secret keys stored only as one-way hashes, strict test/live isolation, per-merchant rate limits, and no card data anywhere in the flow.

Transparent reporting

Every transaction, fee and settlement batch is visible to the gateway team on ibejupay.com — reconciliation is built in, not bolted on.

Simple, predictable API

A small REST surface with one envelope, kobo-integer amounts, clear error codes, and an X-Request-Id on every response for support.

Get your API keys in minutes

  1. Register. Create your merchant account and verify your email — no waiting for approval.
  2. Integrate in test mode. Your sk_test_… key and webhook signing secret are issued instantly. Test the full flow right in your dashboard's API playground.
  3. Go live. Once your integration passes the go-live checklist, request approval — we enable live payments and issue your sk_live_… key.

The merchant service is operated by IBEJU-LEKKI LOCAL GOVERNMENT on the IbejuPay platform. Fees are shown in your dashboard and applied automatically per transaction. Prefer a hand: email info@ibejulekki.lg.gov.ng.