Jay GajjarSenior Software Engineer

AI-built apps and AI automation

AI invoice processing that turns supplier bills into checked purchase entries

I build AI invoice processing into the ERP, CRM or accounting setup you already run: someone uploads a photo or PDF of a supplier bill, AI reads it into structured data, and the purchase entry appears prefilled for a person to check and save. I have shipped this in production as AI invoice capture, across four business systems in CodeIgniter 3, with duplicate checks, automatic vendor creation and a staged, logged sync to the accounting system. Nobody retypes the bill, and nothing reaches your books unchecked.

ContactHire on Fiverr (opens in a new tab)Available for new projects. I reply within an hour during working hours.

What’s included

  • Upload from desktop or phone: photos, scans and PDFs, one invoice or a batch
  • Invoice data extraction into header fields, line items and tax totals using the OpenAI API
  • Indian GST fields: supplier and buyer GSTIN, HSN or SAC codes, CGST, SGST and IGST split
  • A review screen with the original document beside the prefilled entry
  • Validation rules: totals that add up, GSTIN format, dates and required fields
  • Duplicate detection before review, and new vendors created from extracted details
  • Staged, logged sync to your accounting system, Tally or ERP
  • Usage logs per document, so you can see what processing costs each month

AI invoice processing, step by step

This is how I build it, in the order a supplier bill moves through the system. The steps are the same whether you process ten bills a month or a few hundred a day.

  • Upload. Staff upload an image or PDF from the purchase screen (reading bills from a shared mailbox can be added). The file is stored first, so nothing is lost if a later step fails.
  • Extract. A queued job sends the document to the OpenAI API and asks for structured data against a fixed schema: supplier name and GSTIN, invoice number and date, line items, quantities, rates, taxable value, tax by rate and the grand total.
  • Validate. Code checks what code can check: line items add up to the taxable value, tax adds up to the total, the GSTIN has the right format and the date is plausible. Failures are highlighted, not hidden.
  • Match. The supplier is matched to an existing vendor, or a new vendor is prepared from the extracted details. Likely duplicates are flagged at this point, before anyone spends time on review.
  • Review. The purchase entry opens prefilled, with the original document beside it. A person corrects anything wrong and saves. Nothing posts on its own.
  • Sync. The saved entry passes through staging tables and mapping to the accounting system, with every call logged, so a failed sync can be retried without creating a second entry.

Accuracy, and why a person stays in the loop

I do not quote an accuracy percentage, because it depends almost entirely on your documents. Clean, computer-generated PDFs read very well. Phone photos taken at an angle, faded thermal prints, handwritten bills and long invoices with dozens of line items are harder, and some fields will come back wrong or empty. The honest way to know is to test on your own samples, which is the first thing we do.

That is why the AI only prefills. On the invoice capture project this was the main design rule: a misread total costs one correction on the review screen, not a wrong entry in the books that someone finds at year end. Over time, the corrections people make show which suppliers or fields need better instructions or extra validation, and the review gets quicker.

Never recording the same bill twice

The same invoice gets uploaded twice more often than anyone expects: once from the email, once from the paper copy, by two different people. Catching it before review saves more time than any improvement to the AI. These are the checks I build:

  • The same file uploaded again, detected from its contents rather than its name
  • The same supplier and invoice number within a financial year, the standard key for Indian purchase bills
  • The same supplier, total and a nearby date with a different invoice number, flagged as a possible duplicate for a person to decide

GST fields on Indian invoices

Indian purchase bills carry more structure than a generic invoice OCR software product expects, and getting it right is what makes the entry usable for input tax credit. I extract and check the supplier's and your GSTIN, invoice number and date, place of supply, HSN codes for goods or SAC codes for services, taxable value per rate, and the tax split.

The split is checked, not just copied: when the supplier's state (the first two digits of its GSTIN) matches the place of supply, the bill should carry CGST and SGST in equal halves, and when it does not, IGST. Bills that break that rule, or whose rate-wise tax does not match the taxable value, are flagged for review. Many larger suppliers' B2B invoices also carry an e-invoice QR code, which can be read to confirm the key details. I built GST invoicing for domestic and export cases on an export operations ERP, so these rules are familiar ground.

Connecting it to your ERP, accounting or Tally

A purchase entry is only useful once it is in the system that matters. On the case study, the accounting system stayed the source of record: entries were staged and mapped to its records before syncing, sync behaviour was configurable, and every call was logged. I build the same pattern for any target.

If your books are in Tally, the saved entry can become a purchase voucher through Tally integration. If your purchasing lives in an ERP, or you need one, see custom ERP development. Purchase invoice automation can go further than data entry: matching the bill against the purchase order and goods received, or updating stock as the entry is saved.

Custom build, invoice OCR software, or an invoice OCR API?

Some accounting products now include bill scanning of their own. If yours does, and it reads your suppliers' bills well enough, use it: it will be cheaper than anything I build. Dedicated invoice OCR API services from the large cloud providers are another option when you have a developer and high volume.

A custom build pays off when the result must land inside your own ERP or CRM, when your validation rules are specific (GST checks, vendor matching, approval steps), when you want one review screen your staff already know, or when bills, receipts and delivery notes all need handling in one place. I have shipped this with the OpenAI API. If a dedicated invoice OCR API suits your documents better, I can integrate it instead, after testing both on your samples.

AI bill processing for receipts and expenses

The same pipeline handles smaller documents. AI receipt processing for fuel, travel, courier and small purchase receipts uses a shorter schema (vendor, date, amount, tax, category) and often a cheaper model. AI bill processing for utility and rent bills can pick out account numbers, periods and due dates and create a payment reminder.

The cost has two parts: a fixed quote for the build, and the AI provider's usage per document on your own account, which I estimate from your samples. The build depends on the document types, how many validation rules apply, the review screens and which systems the result must sync to.

How the work runs

  1. Collect real invoices

    You send twenty or more real bills, including the awkward ones: phone photos, multi-page invoices and your messiest suppliers. Clean samples hide the problems.

  2. Test extraction field by field

    I run them through the extraction and show you what came back for every field, right and wrong, so we agree what the review screen must catch before building it.

  3. Build into your purchase flow

    Upload, queued extraction, validation, duplicate checks, vendor matching and the review screen go into your existing system with your users and permissions.

  4. Connect accounting

    Saved entries sync to your accounting system, Tally or ERP through staging and mapping, with logs and safe retries.

  5. Launch and tune

    A few users start first. Their corrections show where instructions or rules need work, and become the test set for later changes.

Tools and technologies

  • OpenAI API
  • Structured outputs (JSON Schema)
  • PHP 8
  • CodeIgniter 3
  • Laravel
  • Queues
  • MySQL
  • REST APIs
  • Tally integration

Proof from real projects

Questions

  • How accurate is AI invoice processing?

    It depends on your documents. Clean PDFs read very well, while angled photos, faded prints and handwriting produce more errors. I test on your own samples and show you the results field by field before you commit, and a person reviews every entry before it is saved.

  • Can it read handwritten or photographed bills?

    Photographed bills, yes, when the photo is reasonably sharp and the whole page is in frame. Handwritten bills are much less reliable, so they are flagged for closer review rather than trusted.

  • Does it handle GST invoices correctly?

    It extracts GSTIN, HSN or SAC codes, taxable value and the tax split, and code checks them: CGST and SGST for a supplier in your state, IGST otherwise, and rate-wise tax that matches the taxable value. Anything that does not add up is flagged.

  • How do you stop duplicate invoices?

    Before review, each upload is checked for the same file, the same supplier and invoice number in the financial year, and the same supplier and amount near the same date. Likely duplicates are shown to a person instead of being saved.

  • Can it post entries to Tally or my accounting software?

    Yes. Confirmed entries pass through staging and mapping to your vendors and ledgers, then sync to Tally, your ERP or another accounting system with an API, with every call logged and failed syncs retried safely.

  • Is invoice data sent to OpenAI kept private?

    OpenAI states that data sent through its API is not used to train its models unless you opt in. The integration runs on your own API account, sends only what extraction needs, and keeps the original files on your own server.

  • What does AI invoice processing cost?

    A fixed quote for the build, plus the AI provider's per-document usage billed to your own account. The quote depends on document types, validation rules, review screens and integrations. I estimate usage from your samples before you commit.

  • Can it process receipts and expense bills too?

    Yes. Receipts and expense bills use a shorter set of fields and often a cheaper model, and they can flow into the same review screen or a separate expense entry.

Tell me what you are building.

A few lines about the project, who will use it and when it needs to ship are enough to start. You get a straight answer on whether ai invoice processing is the right fit, and what it would take.

Status
Available for new projects
Reply time
I reply within an hour during working hours.
Working hours
9 AM to 9 PM IST (UTC+5:30)
Languages
English, Hindi, Gujarati

How pricing, payments and terms work

Prefer email? Write to jaygajjar.dev@gmail.com.