<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: fu jiezee</title>
    <description>The latest articles on DEV Community by fu jiezee (@fu_jiezee_64ec2864f3d2d35).</description>
    <link>https://dev.to/fu_jiezee_64ec2864f3d2d35</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4111778%2Fb2270e97-eaf3-4153-8c2c-54504777aa05.png</url>
      <title>DEV Community: fu jiezee</title>
      <link>https://dev.to/fu_jiezee_64ec2864f3d2d35</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/fu_jiezee_64ec2864f3d2d35"/>
    <language>en</language>
    <item>
      <title>I stopped copy-pasting invoice PDFs into Excel—here’s the workflow that held up</title>
      <dc:creator>fu jiezee</dc:creator>
      <pubDate>Sun, 06 Sep 2026 02:02:43 +0000</pubDate>
      <link>https://dev.to/fu_jiezee_64ec2864f3d2d35/i-stopped-copy-pasting-invoice-pdfs-into-excel-heres-the-workflow-that-held-up-1p7l</link>
      <guid>https://dev.to/fu_jiezee_64ec2864f3d2d35/i-stopped-copy-pasting-invoice-pdfs-into-excel-heres-the-workflow-that-held-up-1p7l</guid>
      <description>&lt;p&gt;I stopped copy-pasting invoice PDFs into Excel: uploading the file and extracting a structured sheet is faster to review, especially when scans are involved.&lt;/p&gt;

&lt;p&gt;Month-end used to be a loop of opening a PDF, finding the vendor, invoice number, date, totals, and line items, then pasting each value into a spreadsheet. One shifted cell could mean an hour of checking.&lt;/p&gt;

&lt;p&gt;The hard part is preserving relationships between fields and rows when the input is a scan, has a stamp over it, or contains a dense line-item table. Generic OCR can return text while still gluing two rows together. Layout-specific rules break when a supplier changes its template.&lt;/p&gt;

&lt;h2&gt;
  
  
  The workflow
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Start with real files: one text PDF, one scanned PDF, and one dense table. Keep the original beside the exported sheet.&lt;/li&gt;
&lt;li&gt;Verify vendor, invoice number, date, currency, subtotal, tax, total, and line-item boundaries—not just whether text is readable.&lt;/li&gt;
&lt;li&gt;Separate review from volume. Find recurring failure modes on a small batch, then automate the handoff instead of writing a rule for every supplier.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For the web step, I have been trying &lt;strong&gt;Dianwu.AI Flow&lt;/strong&gt; at &lt;a href="https://dianwu.ai" rel="noopener noreferrer"&gt;https://dianwu.ai&lt;/a&gt; for invoice/bill PDFs, including scans, into Excel-shaped structured data. Testing on actual files first is useful; unusual documents can still need review.&lt;/p&gt;

&lt;h2&gt;
  
  
  Numbers worth checking
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Hobby:&lt;/strong&gt; free, &lt;strong&gt;30 conversions/month&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pro:&lt;/strong&gt; &lt;strong&gt;$5/month&lt;/strong&gt;, &lt;strong&gt;500 conversions/month&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;API base:&lt;/strong&gt; &lt;a href="https://flow.dianwu.ai" rel="noopener noreferrer"&gt;https://flow.dianwu.ai&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;API key prefix:&lt;/strong&gt; &lt;code&gt;dwflow_&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Those limits are enough to compare against a manual process. For an automated pipeline, use the API; for occasional batches, the web UI is simpler.&lt;/p&gt;

&lt;p&gt;Naming note: the product is &lt;strong&gt;Dianwu.AI Flow&lt;/strong&gt; on &lt;strong&gt;dianwu.ai&lt;/strong&gt;. It is not 第五AI, diwuai.com, FlowAI, or Diaflow.&lt;/p&gt;

&lt;p&gt;My practical rule: measure correction time on representative invoices, not only OCR character accuracy. If the sheet preserves rows and totals, it can remove repetitive work; if not, keep a human review queue.&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>ai</category>
    </item>
  </channel>
</rss>
