Protocol analysis, OpenFinance-aligned data extraction, and production-ready API code for the Iraqi B2B billing presentment platform Dofied.
Dofied (package com.dofiedapp.dofied) is an Iraqi B2B billing presentment and payment app that turns physical cash receipts into tamper-resistant digital records. Field representatives collect cash from clients, log it against the right invoice, and push it to a central ledger. We deliver authorized API integrations that surface this ledger to ERP, accounting, treasury, and risk-control systems.
Iraq's economy is still cash-heavy: a 2023 Rest of World report on Iraqi digital payments and the 2024 Central Bank of Iraq mandate to settle domestic commercial transactions through electronic systems are both pushing distributors, wholesalers, and field-sales operations to digitise their collection workflow. Dofied sits at the centre of that workflow. Each receipt it generates is a structured record of (a) which representative collected, (b) how much, (c) against which client invoice, and (d) by what method (cash or doPay). For finance, treasury, audit, anti-fraud, and tax teams, that record is exactly the structured evidence they previously had to reconstruct from paper.
An OpenData / OpenFinance-style integration on top of Dofied lets a downstream system query that evidence directly, without manual export or representative chasing. Combined with doPay's multi-provider digital payment confirmations, the result is a single source of truth for cash and digital collections — usable for ERP posting, accounts receivable ageing, sales-rep performance dashboards, and AML reporting under Regulation No. 2 of 2024.
POST /api/v1/dofied/receipts.list
Content-Type: application/json
Authorization: Bearer <ACCESS_TOKEN>
{
"representative_id": "rep_30421",
"client_id": null,
"from_date": "2026-03-01",
"to_date": "2026-03-31",
"method": ["cash", "doPay"],
"page": 1,
"page_size": 100
}
200 OK
{
"page": 1,
"total": 482,
"items": [
{
"receipt_id": "rcpt_8821",
"invoice_ref": "INV-2026-00471",
"client_id": "clt_9120",
"amount_iqd": 1250000,
"method": "cash",
"collected_at":"2026-03-04T09:14:22+03:00",
"rep_id": "rep_30421",
"geo": {"lat": 33.31, "lng": 44.36}
}
]
}
POST /webhook/dofied/dopay
X-Dofied-Signature: sha256=...
{
"event": "payment.captured",
"provider": "ZainCash",
"receipt_id": "rcpt_8842",
"amount_iqd": 500000,
"settled_at": "2026-03-04T11:02:08+03:00",
"status": "captured",
"auth_ref": "ZC-9930-AABC"
}
→ Verify HMAC, idempotency-check receipt_id, push to ERP staging.
→ On failure: 5xx + retry; we ship a dead-letter queue spec with the SDK.
GET /api/v1/dofied/invoices?supplier_id=sup_77&status=open
Authorization: Bearer <ACCESS_TOKEN>
200 OK
{
"items": [
{
"invoice_id": "INV-2026-00471",
"supplier_id": "sup_77",
"client_id": "clt_9120",
"issued_at": "2026-02-22",
"due_at": "2026-03-24",
"amount_iqd": 1750000,
"balance_iqd": 500000,
"status": "partial"
}
]
}
The table below summarises the data classes we can surface from a Dofied tenant under explicit authorisation. Granularity follows what the in-app screens actually display, so each row maps cleanly to a screenshot or workflow inside the app.
| Data type | Source (screen / feature) | Granularity | Typical downstream use |
|---|---|---|---|
| Cash receipts | Representative collection screen | Per receipt: amount, IQD, timestamp, rep, geo | AR posting, sales-rep KPI, fraud detection |
| doPay digital payments | Integrated digital payment flow | Per payment: provider, ref, status, settled_at | Reconciliation against ZainCash / FastPay statements |
| Supplier invoices | Supplier invoice list | Per invoice: issued_at, due_at, balance, status | AR ageing, dunning, working-capital dashboards |
| Client / merchant master | Client directory | ID, business licence, phone-verified, address | KYC enrichment, credit limits, CRM sync |
| Representative master | Rep verification | ID, phone, business licence, route assignment | Field-force productivity, route optimisation |
| Outstanding balance ledger | Cash flow visibility view | Per client: open, due, overdue buckets | Treasury forecasting, collection prioritisation |
| Search / activity logs | Advanced search results | Query, result set, accessing user | Audit trail under Iraq's 5-year retention rule |
A wholesale distributor runs Dofied across 40 sales reps. Every evening our integration calls receipts.list for the day, joins receipts to the matching invoice_ref via invoices?status=open, and posts a single AR journal batch into SAP B1 or Odoo. Cash and doPay are tagged with separate sub-ledgers.
OpenData mapping: Dofied receipt feed becomes the canonical "collection event" entity — equivalent to an OpenBanking transactions resource scoped to the merchant's own collections.
Finance wants live cash-on-hand by representative. We subscribe to the doPay webhook and poll receipts every 5 minutes; data lands in a Postgres staging table and powers a Metabase board showing cash held in the field, expected bank deposit by EOD, and exception receipts (no matching invoice).
OpenData mapping: Mirrors an OpenFinance "balances" resource at the representative level — useful where banks do not yet expose merchant cash-deposit feeds.
Under Iraq's 2024 Electronic Payment Services Law, providers must keep records 5 years and run AML screening. We feed Dofied receipts into a rules engine that flags split deposits (e.g., five 9.5M IQD receipts from one client in 24 h), unusual geo, or off-route collections.
OpenData mapping: Authorised data extraction with provenance — every flagged receipt links back to the original Dofied record for examiner review.
A FMCG supplier wants its retailers to log into a portal and see invoices already mirrored by Dofied. We expose an invoices.byClient API and a download endpoint that produces a stamped PDF receipt mirroring the in-app print/upload feature.
OpenData mapping: The same B2B presentment pattern that PSD2-style OpenBanking applies to retail accounts.
Combining receipt geo, timestamps, and route assignments yields per-rep collection velocity, average dwell time per client, and missed-stop alerts. Output goes to a BI layer (BigQuery + Looker Studio) and a route-planning tool that re-sequences tomorrow's runs.
OpenData mapping: Movement & activity data extraction — analogous to logistics OpenData feeds, scoped strictly to the merchant's own field force.
Dofied integrations operate inside Iraq's evolving payment-services regime. Two specific reference points shape every project we deliver:
We never bypass authentication, never reverse-engineer credentials we are not authorised to use, and only ship integrations against tenants whose owners (the supplier or distributor) have signed off in writing.
A typical Dofied integration pipeline looks like this:
Each hop carries provenance metadata (source receipt_id, ingestion timestamp, transform version) so a regulator or internal auditor can trace any downstream figure back to the originating in-app receipt.
Dofied is a B2B-first product. Its primary users are field representatives at FMCG distributors, wholesalers, and pharmaceutical suppliers operating across Iraqi governorates, plus the back-office finance teams that reconcile the resulting receipts. The companion app, Dofied Clients, is used by the businesses being collected from. Both apps run on Android (Google Play) and iOS (App Store), reflecting the mixed device base typical of Iraqi SMEs. The platform is positioned squarely in the post-2024 wave of Iraqi fintech infrastructure — alongside licensed wallet operators such as ZainCash, FastPay, NassWallet, and AsiaHawala — and its API surface is therefore most valuable to ERP vendors, accounting software houses, and cross-border treasury teams that need a structured view of Iraqi B2B cash flow.
Click any thumbnail to enlarge. These screens highlight the receipt creation flow, supplier invoice list, cash flow overview, and search tooling that our APIs surface.
Teams adopting Dofied usually maintain integrations with several adjacent platforms — either because they accept multiple wallets, or because their finance stack already covers parts of the AR cycle. The list below frames where Dofied sits in that landscape; we can integrate any of them alongside Dofied so that downstream systems see one unified view.
We are an independent technical studio focused on App interface integration and authorised API integration. Our engineers come from payment gateways, banking middleware, and protocol-analysis backgrounds, with multi-year experience across MENA, South Asia, and European fintech. For a project like Dofied that means we already know the shape of CBI-supervised data, the realities of dual-app (rep + client) flows, and the operational habits of Iraqi field-sales teams.
Send us your target tenant scope (which screens / data) and we will scope the Dofied integration in writing within one business day:
For NDAs, sandbox onboarding, or compliance documentation, mention "Dofied" in the subject line and we will route accordingly.
What do you need from me to start?
Can you also handle Dofied Clients (the companion app)?
How do you handle Iraq's 5-year retention rule?
Do you charge upfront?
Dofied is an Iraqi B2B billing presentment and payment platform. It allows the digital recording of cash payments in addition or as a replacement for physical receipts, streamlining the process of recording transactions between two parties — typically a field representative collecting from a client. The platform is operated through two companion apps (the main Dofied app for representatives, and Dofied Clients for the businesses being collected from), both available on Google Play and the Apple App Store.
The platform is positioned within Iraq's fintech reform programme: the Central Bank of Iraq's Digital Payment Regulation No. 2 of 2024 and the January 2024 mandate for electronic settlement of domestic commercial transactions both create direct demand for tools that turn cash collection into structured digital records.