360 Secure SkillHub
360 安全技能中心

DeepRead Purchase Orders

核心功能:将PDF或扫描采购单转为结构化JSON,提取PO号、买卖方、明细、金额、交付日期等字段,带字段置信标记,支持与发票做2/3-way自动匹配。典型场景:采购数据自动化录入ERP、应付账款对账、供应商管理、支出分析。输入为PDF或扫描件采购单,输出规范JSON,每月免费2000页,需配置API密钥,可搭配其他DeepRead技能拓展功能

uday390
uday390
热度 21.46
最近更新 2026-06-11 16:53:26
分类:效率依赖:读写文件 / 第三方 API应用场景:数据处理 / 财务 / 文件转换 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add deepread-purchase-orders
Metadata
name
deepread-purchase-orders
title
DeepRead Purchase Orders
description
Extract structured data from purchase orders — PO number, buyer/supplier, line items, quantities, prices, delivery dates, totals — as typed JSON. 2-way/3-way match against invoices. Per-field confidence flags. Free 2,000 pages/month.
metadata
{"openclaw":{"requires":{"env":["DEEPREAD_API_KEY"]},"primaryEnv":"DEEPREAD_API_KEY","homepage":"https://www.deepread.tech"}}

DeepRead Purchase Orders

Turn purchase orders — PDF or scanned — into clean, typed JSON: PO number, buyer and supplier, every line item with quantity and price, delivery dates, and totals. Pair it with extracted invoices for automated 2-way / 3-way matching.

This skill instructs the agent to POST documents to https://api.deepread.tech and poll for results. No system files are modified.

What You Get Back

{
  "schema_version": "dp02",
  "status": "completed",
  "extraction": {
    "fields": [
      {"key": "po_number", "value": "PO-2026-5512", "needs_review": false, "location": {"page": 1}},
      {"key": "order_date", "value": "2026-04-02", "needs_review": false, "location": {"page": 1}},
      {"key": "supplier_name", "value": "Globex Supplies", "needs_review": false, "location": {"page": 1}},
      {"key": "buyer_name", "value": "Initech Inc", "needs_review": false, "location": {"page": 1}},
      {"key": "delivery_date", "value": "2026-04-20", "needs_review": false, "location": {"page": 1}},
      {"key": "total", "value": 4860.00, "needs_review": false, "location": {"page": 1}},
      {"key": "line_items", "value": [
        {"sku": "WDG-100", "description": "Widget A", "quantity": 200, "unit_price": 18.00, "amount": 3600.00},
        {"sku": "WDG-200", "description": "Widget B", "quantity": 60, "unit_price": 21.00, "amount": 1260.00}
      ], "needs_review": false, "location": {"page": 1}}
    ]
  }
}

Setup

open "https://www.deepread.tech/dashboard/?utm_source=clawhub"
export DEEPREAD_API_KEY="sk_live_your_key_here"

Schema

{
  "type": "object",
  "properties": {
    "po_number":     {"type": "string", "description": "Purchase order number"},
    "order_date":    {"type": "string", "description": "PO date (YYYY-MM-DD)"},
    "supplier_name": {"type": "string", "description": "Supplier / vendor name"},
    "buyer_name":    {"type": "string", "description": "Buyer / ordering company"},
    "delivery_date": {"type": ["string","null"], "description": "Requested delivery date (YYYY-MM-DD)"},
    "ship_to":       {"type": ["string","null"], "description": "Ship-to address"},
    "currency":      {"type": "string", "description": "Currency code"},
    "subtotal":      {"type": ["number","null"], "description": "Subtotal before tax"},
    "tax":           {"type": ["number","null"], "description": "Tax amount"},
    "total":         {"type": "number", "description": "Total order amount"},
    "line_items": {
      "type": "array",
      "description": "Ordered line items",
      "items": {"type": "object", "properties": {
        "sku":         {"type": ["string","null"], "description": "SKU / item code"},
        "description": {"type": "string", "description": "Item description"},
        "quantity":    {"type": "number", "description": "Quantity ordered"},
        "unit_price":  {"type": "number", "description": "Price per unit"},
        "amount":      {"type": "number", "description": "Line total"}
      }, "required": ["description", "quantity"]}
    }
  }
}

2-Way Match (PO vs Invoice)

Extract both the PO and the matching invoice (use deepread-invoice), then reconcile in code:

po_total = po_fields["total"]
inv_total = invoice_fields["total"]
if abs(po_total - inv_total) > 0.01:
    print(f"⚠ MISMATCH: PO {po_total} vs invoice {inv_total} — hold for review")
else:
    print("✓ PO and invoice match — approve for payment")

Use Cases

  • Procurement automation — capture POs into your ERP without manual entry
  • AP 2-way / 3-way matching — reconcile PO ↔ invoice ↔ receipt automatically
  • Supplier management — track ordered SKUs, quantities, and delivery commitments
  • Spend analysis — aggregate line items across POs

Tips

  • Capture sku when present — it's the most reliable key for matching.
  • Recurring supplier format? Build a blueprint at https://www.deepread.tech/dashboard/optimizer.
  • Check needs_review — only flagged fields need a human.

Related DeepRead Skills

  • deepread-invoice — match POs against invoices — clawhub install uday390/deepread-invoice
  • deepread-ocr — general extraction — clawhub install uday390/deepread-ocr
  • deepread-byok — bring your own AI key — clawhub install uday390/deepread-byok

Support


Get started free: https://www.deepread.tech/dashboard/?utm_source=clawhub