Fast and reliable Python library to extract and verify payment receipts from major Ethiopian banks (CBE, Dashen, Awash, BOA, Zemen, Telebirr).
# 📄 ethiobank-receipts
**🔍 Fast and Reliable Receipt Extraction from Ethiopian Banks**
Optimized for speed and accuracy, `ethiobank-receipts` enables developers to extract structured data from digital bank receipts across major Ethiopian banks using multithreading and connection pooling.
---
## ⚠️ Disclaimer
This is **not an official Python packages**.
I am not affiliated with **Ethio Telecom**, **Telebirr**, or any Ethiopian bank (CBE, Dashen, Awash, BOA, Zemen).
This package is built purely for **developer utility and research purposes** and works by scraping publicly available receipt data.
---
## ✅ Features
- 🏦 **Bank Support**
- Commercial Bank of Ethiopia (CBE)
- Dashen Bank
- Awash Bank
- Bank of Abyssinia (BOA)
- Zemen Bank
- Telebirr (Ethio telecom)
- ⚡ **High Performance**
- Multithreaded PDF parsing
- Optimized HTTP connection pooling (`requests.Session`)
- 🧠 **Smart Automation**
- Chrome WebDriver caching (for BOA receipts)
- 🧪 **Developer Friendly**
- Easy CLI interface
- Built-in test suite
---
## 📦 Installation
```bash
pip install ethiobank-receipts
````
---
## 📖 Usage (Python)
### Extract from Any Bank by URL
```python
from ethiobank_receipts import extract_receipt
from pprint import pprint
urls = {
"cbe": "
apps.cbe.com.et",
"dashen": "
receipt.dashensuperapp.com",
"awash": "
awashpay.awashbank.com",
"boa": "
cs.bankofabyssinia.com",
"zemen": "
share.zemenbank.com",
"tele": "CHQ0FJ403O"
}
for bank, url in urls.items():
print(f"Extracting from {bank}...")
try:
result = extract_receipt(bank, url)
pprint(result)
except Exception as e:
pprint(f"Failed: {e}")
```
---
### Extract CBE with FT Number + Account
```python
from ethiobank_receipts.extractors.cbe import extract_cbe_receipt_info_from_ft
data = extract_cbe_receipt_info_from_ft("FT25211G11JQ", "21827223")
print(data)
``` …