Inspiration
Every small business has a story—of daily earnings, bills paid, and ambitions waiting for an opportunity.
We wanted to make that financial story easier to present and understand. A borrower’s information may be spread across documents, while a lending officer needs a clear picture to review an application.
That inspired Yaqeen, meaning trust in Urdu: a platform that brings borrowers, their documents, and bank officers into one organized application process.
Take the next step for your business, with confidence.
What it does
Yaqeen is an English–Urdu loan application and review platform that combines AI-assisted document analysis with human decision-making.
Borrowers can create an account, select a bank, enter their application details, and upload a CNIC, utility bill, and transaction statement. They can then track their application and view the officer’s decision and note.
Bank officers sign in with two-factor authentication to review applications associated with their bank. They can inspect documents, read the assessment, and choose to approve, reject, or request a replacement document.
AI assists the review; the officer makes the final decision.
How we built it
We built the interface using React, Vite, and CSS, with a green-and-white design, English–Urdu language switching, and right-to-left support.
The backend uses Python and FastAPI, with SQLAlchemy for database access and Alembic for migrations. Supabase PostgreSQL stores application records, while private Supabase Storage holds uploaded documents.
Google Gemini extracts structured information from documents. Pydantic validates the output before our Python scoring engine calculates an assessment. Gemini also helps generate a readable explanation for the officer.
Authentication uses bcrypt, JWT, and TOTP for officer verification. We used AI coding assistance during development and checked the resulting workflows locally.
Challenges we ran into
Our main challenges were extracting consistent information from different document formats, handling missing fields, and making the assessment understandable.
We addressed these through structured validation, bounded retries, and a visible score breakdown. We also refined the bilingual interface so borrowers and officers could navigate their respective workflows clearly.
Accomplishments that we're proud of
We successfully ran and tested *the complete workflow *: borrower signup, application submission, document upload, AI-assisted assessment, officer authentication, and a final decision appearing in the borrower’s account.
We are proud of bringing these steps together into a working MVP with separate dashboards, bilingual support, and an explainable assessment.
What we learned
We learned that extracting information and verifying its truth are different tasks. AI can help organize documents, but its output still needs validation and human review.
We also learned that a useful assessment should explain its reasoning and make missing information visible. Clear communication matters just as much as the score itself.
What's next for Yaqeen
- Introduce bank-approved officer registration.
- Add stronger borrower-to-document identity checks.
- Flag reused documents for further review.
- Improve scoring through representative data and expert feedback.
- Expand testing and prepare a reliable public deployment.
Our goal is to help small businesses present their financial story clearly—and help officers review it with greater confidence.
Built With
- alembic
- bcrypt
- css
- devmarketplace
- fastapi
- git
- github
- googlegemini
- html
- javascript
- jwt
- postgresql
- pydantic
- python
- react
- sqlalchemy
- supabase
- totp
- vite
Log in or sign up for Devpost to join the conversation.