Skip to content
telos

Accepting Telebirr and Chapa payments: a practical guide

Checkout, verification, webhooks and the edge cases that cost you money if you skip them.

TTelosTeam2 Oct 20268 min read

Taking a payment is the easy part. Knowing for certain that the money arrived, and only once, is where most integrations go wrong.

Choose a gateway

Chapa gives you one hosted checkout that accepts Telebirr, CBE Birr and cards. A direct Telebirr integration takes more setup but can lower fees for businesses where most customers pay by mobile money.

Start every checkout on your server

Create the transaction on your server, never in the browser, and give it a reference you control, such as your order ID. Store that reference before redirecting the customer.

Never mark an order paid because the customer came back to your site. Verify it from your server.

Verify every payment

  1. Receive the webhook and check its signature.
  2. Call the verify endpoint with your reference.
  3. Compare amount and currency with the order.
  4. Mark it paid inside a database transaction, so it happens once.

Handle failures calmly

Payments fail for ordinary reasons: low balance, a closed app, a dropped connection. Keep the order pending, let the customer retry, and run a daily job that verifies anything still pending.

Keep reading

More from the team

All articles