comparison ยท 9 min read

Ethiopian Receipt Verification Services: The Full Comparison

Evidence-based comparison of Ethiopia's six receipt verification services: cheki, check.et, verify.et, qbirr, tinaverify, and tally. Pricing, features, data sources, and what's behind the paywall.

There are six receipt verification services operating in Ethiopia: cheki, check.et, verify.et, qbirr, tinaverify, and tally. This article compares all six based on publicly available evidence, not marketing claims.

โ„น

Full disclosure

cheki is the open source project we built. This comparison is based on public information from each service's website, API docs, sitemap, robots.txt, and GitHub repositories. Verify everything yourself.

If you just want the answer

Choose based on your actual need, not the longest feature list. Most people only need one thing: confirm the payment happened.

You need...Use this
Free verification with no signupcheki
A paid API with Ethiopian relay for geo-blocked banksqbirr
A cashier mobile app for physical counterstinaverify
Polished business dashboard and employee accountscheck.et
Verification inside Telegramtally
An Android app with bank status pagesverify.et
๐Ÿ’ก

No best overall, only best for you

qbirr is not better than cheki if you do not need an API key. tinaverify is not better than cheki if you do not have a cashier counter. Match the tool to the job.

The core fact

All six services verify receipts by fetching the same public bank endpoints. The data is identical. The difference is the business model wrapped around it.

Every Ethiopian bank publishes receipts at public URLs that require no authentication. These endpoints are documented in cheki's source code and can be verified by anyone. All six services use these same endpoints.

Pricing comparison

ServicePriceFree tierPer-verify cost
chekiFree foreverUnlimited0 ETB
check.et499 ETB/mo or 4,990/yr200 (one-time)~2.5 ETB at 200/mo
verify.et$20-40/mo USD200 (one-time)~$0.10-0.20
qbirr500-8,000 ETB/mo50/mo0.50-0.84 ETB
tinaverify3K-8K ETB per 90 daysNone0.84-0.91 ETB
tallyUnknown (not public)UnknownUnknown
โš 

check.et's free tier is one-time

check.et's 200 free verifications are a one-time allowance, not monthly. Once you use them, you must upgrade. cheki has no such limit, ever.

Platform comparison

Featurechekicheck.etverify.etqbirrtinaverifytally
Banks supported9910764
Banks live499764
REST APIYes (free)Yes (paid)Yes (paid)Yes (paid)NoNo
QR scanningYesYesYesNoYes (camera)No
BOA QR decryptionYesNoNoNoNoNo
Batch verificationYes (50)NoNoNoNoNo
Mobile appPWAPWAAndroidNoiOS+AndroidUnreleased
Geo-block bypassNoNoNoYes (relay)NoYes (ET IP)
Duplicate detectionNoPer-branchHistoryPer-merchantAudit trailNo
Amount toleranceNoNoNoYes (configurable)NoNo

Transparency comparison

Featurechekicheck.etverify.etqbirrtinaverifytally
Open sourceYes (MIT)NoNoNoNoNo
Self-hostingYes (Docker)NoNoNoNoNo
Source URL shownYesHiddenHiddenNoNoNo
AI crawler accessAllowedAllowedBlockedAllowedAllowedN/A
Python libraryYesNoNoAdvertised (unpublished)NoNo
TypeScript SDKYesNoYesAdvertised (unpublished)NoNo
โš 

qbirr's SDKs are vaporware

qbirr advertises Node.js, Python, PHP, and Go SDKs plus a WordPress plugin. As of launch (June 2026), none of them exist on npm, PyPI, Packagist, GitHub, or the WordPress plugin repository. The GitHub user 'qbirr' belongs to an unrelated Indonesian developer. Only the REST API works.

check.et: the details

check.et is built with Next.js and deployed on Vercel. It has a well-designed UI with bilingual support (English and Amharic), bank-specific guide pages, and a developer portal. The pricing model is:

  • Free: 200 verifications (one-time, not monthly), then you must upgrade
  • Pro Monthly: 499 ETB/month
  • Pro Yearly: 4,990 ETB/year (save 2 months)

check.et supports 9 banks and wallets: CBE, Telebirr, Dashen, Awash, BOA, Zemen, CBE Birr, M-Pesa, and Siinqee. It has a REST API that requires a business account and API key.

Strengths: polished UI, bilingual, good SEO content (15+ guide pages), developer documentation, employee management features.

Weaknesses: charges for public data, 200 free verifications are one-time not monthly, API requires business account signup, no self-hosting, no open source.

verify.et: the details

verify.et is built by Suba Software. It uses Cloudflare and has an Android app on the Play Store. Signup is Telegram-only (OAuth via Telegram bot).

verify.et supports 10 banks: CBE, Telebirr, Dashen, BOA, CBE Birr, Awash, M-Pesa, Siinqee, Kaafi Ebirr, and Zemen. It has a blog with categories for payment verification, bank guides, wallet guides, fraud prevention, API integration, merchant operations, and finance basics.

โš 

verify.et blocks AI crawlers

verify.et's robots.txt explicitly blocks GPTBot, ClaudeBot, CCBot, Google-Extended, Applebot-Extended, Bytespider, meta-externalagent, and Amazonbot. This prevents ChatGPT, Claude, Google AI Overview, and other AI tools from reading verify.et's content. The stated reason is EU copyright directive compliance, but the practical effect is that users can't ask AI assistants about verify.et.

Strengths: Android app, blog content, status pages per bank, published TypeScript SDK.

Weaknesses: charges in USD, requires Telegram signup, blocks AI crawlers, no open source, no self-hosting, no batch verification, no Python library.

qbirr: the details

qbirr is the newest entrant, launched June 2026. It is a developer-first API platform built with NestJS on a Contabo VPS in France. The API is at verify.qbirr.com/api/v1/verify with X-API-Key authentication.

qbirr supports 7 providers: CBE, Telebirr, Awash, Dashen, M-Pesa, BOA, and eBirr (COOPay, KAAFI, Nib, Wegagen, Ahadu). All 7 are live.

Pricing: 50 free verifications/month, then Starter (1K for 500 ETB/mo), Pro (10K for 2,000 ETB/mo), or Scale (100K for 8,000 ETB/mo with dedicated relay and 99.9% SLA).

Strengths: clean API design, Ethiopian relay for Telebirr/M-Pesa geo-block bypass, configurable amount tolerance, per-merchant duplicate ref locking, Scale plan with SLA.

Weaknesses: brand new with no track record, SDKs advertised but unpublished, no web UI for verification, no mobile app, no QR scanning, fewer banks than check.et/verify.et, English only.

tinaverify: the details

tinaverify is a mobile-first product focused on the cashier workflow. It has published apps on both Google Play (com.tina.verify) and the App Store (id6764829142). Built with Next.js (App Router, Turbopack).

tinaverify supports 6 banks: CBE, CBE Birr, Awash, Dashen, BOA, and Telebirr. All 6 are live.

Pricing is credit-based with 90-day validity: Starter (3,000 ETB for 3,300 credits) or Business (8,000 ETB for 9,500 credits). Custom credits at 1.50 ETB each, minimum 500.

Strengths: published iOS and Android apps, cashier workflow (scan, verify, audit trail), multi-branch support, searchable audit history by cashier/branch/amount/reference, daily sales tracking.

Weaknesses: no REST API, credit-based pricing with expiry (90 days), no open source, no self-hosting, no batch verification, fewer banks than check.et/verify.et.

tally: the details

tally is a Telegram bot-based service by Sabi LLC (sabi.works), a tech talent marketplace. The website is a static marketing page with no web app, dashboard, login, API, or docs. Every CTA links to the Telegram bot (@TallyETBot).

tally supports 4 banks: CBE, Telebirr, BOA, and Awash. The website claims direct bank verification, but their Terms section 3 explicitly states they use 'publicly accessible verification endpoints and APIs provided by financial institutions.'

Pricing is not public. The footer 'Pricing' link is a dead anchor. Terms have no billing section.

Strengths: Telegram bot delivery (low friction for Telegram-heavy market), Ethiopian-hosted (Ethio Telecom IP), workspace codes for staff.

Weaknesses: only 4 banks, no web app, no API, no docs, mobile app claimed but store links are dead, SSL certificate expired April 2026 (unrenewed for 2+ months), no pricing transparency, made by a dev shop not a dedicated fintech.

cheki: the details

cheki is MIT licensed open source built with Next.js. It requires no signup, no API key, and has no limits. The hosted version is at chekiapp.vercel.app, and the full source code is on GitHub.

cheki supports 31 banks with 10 live (CBE, Telebirr, BOA, M-Pesa, Dashen, Awash, Zemen, CBE Birr, Siinqee, eBirr) and 21 in development. eBirr alone covers 4 additional banks through a single integration (Nib International, Wegagen, Ahadu, KAAFI Microfinance). It supports both the old and new CBE receipt systems, BOA QR code decryption, and unified QR scanning with multi-scale auto-detection.

Recent updates: cheki now parses mobile 'Select All' receipt text. This matters because Telebirr and M-Pesa block cloud servers from reaching their endpoints. If you copy the receipt text from the Telebirr app and paste it into cheki, the parser extracts the full transaction details locally without ever calling the geo-blocked endpoint.

Strengths: free, open source, no signup, self-hosting, batch verification, Python library, TypeScript SDK, Docker, QR code scanning with BOA AES decryption, URL auto-detection, allows AI crawlers, shows receipt source URLs, and now parses pasted receipt text.

Weaknesses: no mobile app (web only, but PWA-installable), no employee management, no dashboard for businesses, no duplicate detection built-in, no geo-block bypass relay, fewer live banks than check.et/verify.et/qbirr/tinaverify.

Geo-blocking: the shared problem

Telebirr and M-Pesa block non-Ethiopian IP addresses at the network level. This affects every service that does not have an Ethiopian relay or server, including cheki's hosted version and check.et's servers.

If you hit a geo-blocked bank, cheki returns a fallbackUrl that points to the bank's public receipt page. You can open that URL in your browser (which uses your Ethiopian IP) to see the receipt. For the hosted version, you can also paste the receipt text directly into cheki's parser to bypass the block.

The only permanent fixes are: self-host cheki on an Ethiopian server, or use a service with an Ethiopian relay (qbirr's Scale plan, tally's Ethio Telecom IP).

โš 

No service has a secret inside line

check.et, verify.et, and the others do not have a special deal with Ethio Telecom or Safaricom. They face the same geo-block. If they work for Telebirr/M-Pesa, they are either running traffic through an Ethiopian relay or falling back to the public receipt page.

The data source question

Some users ask whether check.et, verify.et, qbirr, tinaverify, or tally have access to private bank APIs that cheki doesn't. The answer is no. All six services use the same public endpoints. Here's the evidence:

  • cheki's source code shows the exact endpoints it uses (public on GitHub)
  • check.et's API response includes verification_method: 'official' but the data fields match the public endpoint responses exactly
  • verify.et's data fields match the public endpoint responses exactly
  • qbirr's FAQ explicitly states: 'We fetch the same public receipt pages and APIs that the banks themselves expose to customers'
  • tally's Terms section 3 explicitly states they use 'publicly accessible verification endpoints and APIs provided by financial institutions'
  • The bank endpoints require no authentication, so there's no private API to access
  • CBE's new receipt system (mbreciept) uses hardcoded app headers, not authentication, and these are extractable from the public JavaScript
๐Ÿ’ก

Verify it yourself

Open a CBE receipt link in your browser. You'll see the receipt without logging in. That's the same data all six services return. The endpoints are public by design.

Frequently asked questions

Edit this article on GitHubReport an issue โ†’

Continue reading