Treat optical character recognition (OCR) as a draft. Keep unreadable fields blank, compare quantities and units with the bill and receipt, check duplicates, and verify the system before retrying an unknown post.

Extraction is a draft, not an entry

Optical character recognition (OCR) can turn a bill photo into text. It can also crop a page, confuse 1 with 7, miss a second page or attach a value to the wrong label. Review the draft against the source image and receipt before anyone uses it.

Bill-photo review fields and exceptions
FieldCheckIf unclear
Supplier, bill number and dateMatch the document headerLeave unresolved; name the page and ask a reviewer
Item and unitConfirm boxes, pieces, metres or kilogramsDo not convert without the stated pack rule
Quantity and rateRecalculate line quantity × rateKeep the conflicting values and source locations
Tax and totalCheck printed subtotals and roundingEscalate to the person responsible for accounts
Page countConfirm every page and continuation lineRequest a complete image set

Review a fictional line calculation

A fictional bill says 12 boxes, 10 pieces per box and ₹500 per box. The ordered quantity is 120 pieces, while the bill line value before tax is 12 × ₹500 = ₹6,000. Multiplying 120 pieces by the box rate would produce the wrong value.

Now suppose only 11 boxes arrived. Keep the billed 12 boxes and received 11 boxes as separate facts. The difference is one box, or 10 pieces under the stated pack size.

Fictional discrepancy record for a later receipt
ReferenceBilledReceived nowOpen differenceNext action
Bill B-104 / receipt R-7712 boxes11 boxes1 boxKeep open until a linked receipt or supplier resolution is recorded

If the final box arrives later, add the later receipt reference and resolution date. Do not overwrite the original billed or first-received quantities.

Check duplicates and conflicting extracts

Use a stable supplier, bill number, date and line reference where available. A revised export or clearer photo may be another version of the same bill, not a new purchase. Compare versions before deciding which fields are authoritative. Do not delete a possible duplicate until the source and existing entry have been investigated.

If two pages or two extraction attempts disagree, retain both values, their page or image reference and the reviewer’s decision. An unreadable field remains blank or unresolved; it is never filled from a guess.

Separate capture, review and posting

Suggested control states; this is a workflow, not a Dhandha GPT feature claim
StateMeaningAllowed next step
CapturedDraft fields extractedCheck source and duplicates
Needs reviewUnreadable, conflicting or receipt differenceResolve or retain as open
CheckedNamed reviewer accepted fields for the stated purposePrepare for the authorised posting process
PostedSystem shows a confirmed entry referenceReconcile to the source
Posting status unknownTimeout or interrupted responseLook up the transaction or entry before any retry

When a post fails or times out

  1. Save the attempted transaction reference and time.
  2. Search the target system for an entry with the bill identity and amount.
  3. If found, verify its status and reference; do not post again.
  4. If not found, follow the authorised retry procedure.
  5. If status cannot be established, leave it unresolved and escalate. Do not assume the system is idempotent.

Dhandha GPT is currently read-only. This guide describes checks around a separate authorised entry process; it does not claim that Dhandha GPT posts bills.

Questions you might ask

What should OCR do with an unreadable invoice field?

Leave it blank or unresolved, retain the source page or image reference, and assign a reviewer action. Never guess the value.

How should I record a bill quantity that differs from the receipt?

Keep billed and received quantities separately, link the bill and receipt, and retain the open difference until a later receipt or supplier resolution closes it.

Should I retry after a posting timeout?

First look up the transaction or entry using the reference and bill identity. If status remains unknown, keep it unresolved and escalate rather than risking a duplicate.

Sources and further reading

  1. ERPNext: purchase invoice