Skip to main content

Platform / Payments

One payment flow.A clearer way to operate.

Bring payment acceptance into your customer journey, then keep the result connected to the work your team does next.

zapi / payment activityETB

PAYMENT / SAMPLE

ETB 1,000.00 Completed

Source

Customer checkout

Next step

Update order

InitiatedConfirmedRecorded
Illustrative activity, not a live dashboard screenshot.

The payment layer

Everything you need to accept and operate on payments.

A single API surface for accepting money, recording the outcome, and keeping every downstream system in sync.

Unified acceptance

Cards, bank transfers, and mobile money through one integration. Add methods without re-platforming.

Outcome webhooks

Every payment emits structured events so your product reacts to the result, not a polling loop.

Reconciliation

Connect each payment to the order, invoice, or account it belongs to without manual matching.

Built-in security

Sensitive data stays inside Zapi. Your servers never touch card details you don't need to hold.

Operational reporting

See volume, success rates, and failure reasons in the same place your team works from.

Connected records

Payment outcomes flow into the records your finance and operations teams already use.

One connected journey

A payment is more than a button.

The moment a customer pays is only the beginning. Your product, operations team, and finance workflow all need to understand what happened.

01 / PAYMENT FLOW

Accept

Give customers a clear way to pay in the flow they already use.

02 / PAYMENT FLOW

Respond

Keep the outcome connected to the order or service it belongs to.

03 / PAYMENT FLOW

Review

Bring activity into the operational picture your team works from.

Build with Zapi

Start with a single request.

Create a payment, redirect your customer, and listen for the result. The same flow scales from a one-off charge to a full checkout.

  1. 01

    Create a payment intent

    Send the amount and currency. Zapi returns a reference your customer can act on.

  2. 02

    Send the customer to pay

    Redirect to the hosted payment page or embed the flow where your customer already is.

  3. 03

    Receive the outcome

    A webhook confirms the result. Update your order, trigger fulfilment, and record the payment.

Developer documentation
POST /v1/payments
curl https://api.zapihq.com/v1/payments \
  -H "Authorization: Bearer sk_live_..." \
  -d amount=1000 \
  -d currency=ETB \
  -d reference=order_8821

# -> 200 OK
{
  "id": "pay_9f2c1a",
  "status": "initiated",
  "amount": 1000,
  "currency": "ETB",
  "checkout_url": "https://pay.zapihq.com/pay_9f2c1a"
}

Good to know

Payments, explained.

The questions teams ask before they build on Zapi.

Zapi supports the methods your customers in Ethiopia already use — cards, bank transfers, and mobile money. Add or remove methods from your integration without rebuilding your checkout.

No. Sensitive card data is captured inside Zapi's hosted surfaces, so it never touches your servers. You work with payment references and outcomes, not raw card details.

Every payment emits a webhook with the final outcome. Use webhooks as your source of truth and update your order, fulfilment, and records from there — no polling required.

Yes. Each payment carries a reference you control, and outcomes flow into the records your finance and operations teams already use, so reconciliation stays connected to your systems.

Start building with Zapi

Build what moves your business forward.

One integration for payments, payouts, and virtual accounts. Start in test mode and grow from there.