Bank Receipt Verification in 1 Second
Your operator checks every receipt by eye: amount, card, bank. Our API does it in 1 second — automatically matches the amount and recipient card against expected values, and filters out rejection screens and incomplete payments.
Drop a receipt photo or click to upload
Manual Receipt Checking Doesn't Scale
Operator Time
Each receipt takes a minute of human attention. At scale, that's hours every day
Errors at Scale
Wrong amount, wrong card, an incomplete payment screen instead of a receipt — a tired eye misses these
Obvious Fakes
Screenshots with wrong amounts or cards and rejection screens are filtered out automatically
How It Works
Send Photo
POST /verify with a receipt photo, expected amount, and last 4 digits of the recipient's card.
Model Verifies
A proprietary ML model trained on 16,000+ real Ukrainian bank receipts matches the amount and recipient card, filters out rejection screens.
Get Verdict
verified: true/false with an explanation — typically in 1 second.
curl -X POST https://check.sarmkadan.com/api/v1/verify \
-H "X-API-Key: chk_your_key" \
-F "image=@receipt.jpg" \
-F "expectedAmount=2450" \
-F "expectedCardLast4=7731"
{
"verified": true,
"detectedAmount": 2450.0,
"detectedCardLast4": "7731",
"reason": "confirmed",
"durationMs": 940
}
Supported banks: PrivatBank · monobank · OTP Bank · A-Bank · Raiffeisen — other banks added on request.
Pricing
Half the price of Western recognition services — and this is verification, not just recognition.
Custom
A separate product for your use case: your banks, your verification rules, turnkey integration with your system.
DiscussPayment in USDT or by invoice. No monthly fees or minimums.
What Clients Say
Average rating 4.6 out of 5 — based on reviews from real users
Set up in one day. We run a currency exchange — our operator used to manually check every receipt. Now 90% of the flow is handled automatically. Only the edge cases need human eyes.
Alex K.
Currency exchange, Kyiv
Fast and straightforward to integrate. Occasionally unsure about dark photos — but honestly reports "not found" instead of guessing. For our volume (200–300 receipts per day) it's more than enough.
Dmitry M.
P2P platform
We looked at US-based services first — expensive, and your data ends up on their cloud. Here everything runs on their own servers, pricing is fair, and the model actually understands Ukrainian banks.
Iryna S.
Financial company, Dnipro
Does its core job well: extracts amount and card accurately. Would like PUMB and Ukrsib support, but they say it's coming. No complaints for PrivatBank and mono.
Andrew V.
Online store, Odesa
We came with a specific need — verifying monobank receipts with non-standard fields. They built a Custom solution for us in a week. Response in one second, practically zero errors.
Vitaly T.
Payment service
Frequently Asked Questions
Do you detect fake receipts?
The service automates verification: amount, recipient card, rejection screen detection. Receipts with wrong data and incomplete payment screenshots won't pass. But this is a verification automation tool, not forensic image analysis — no automated service can guarantee catching a well-crafted fake with correct data.
Do you store receipts?
No. The image is processed on our servers and deleted immediately after verification. No data is sent to third-party cloud services — that's our key difference from Western alternatives.
Which banks are supported?
PrivatBank, monobank, OTP Bank, A-Bank, Raiffeisen. Need another bank? We'll add it for you — the model retrains on new receipt formats within a few days.
What if the model is unsure?
~4% of receipts (cropped or very dark photos) get a "not found" verdict — those should be reviewed by an operator. 96% of the flow is handled automatically.
Can you build a solution specifically for us?
Yes, that's the Custom plan: a separate product tailored to your case — your banks, your verification rules, integration with your system. Processing runs on our servers.
How do I verify a monobank receipt?
Send a photo of the monobank receipt via API or the demo on this page. The service automatically recognizes the amount and recipient card — even if the photo is at an angle or has a dark background.
How do I verify a PrivatBank receipt?
Same way — upload a photo of the Privat24 receipt. The model is trained on thousands of real PrivatBank receipts and correctly reads the amount, card, and payment status.
How long does integration take?
One POST request with a receipt photo — you get a JSON response in ~1 second. Typical integration from zero to production takes one day. Documentation with examples: check.sarmkadan.com/docs
Stop Checking Receipts by Eye
Message us on Telegram — we'll have you set up in one day.
Message on Telegram — @sarmkadan