Extract invoice data API

Extract supplier, invoice number, dates, currency, purchase-order number, terms, and amounts from a supplied invoice or a text-based PDF. Missing fields stay unavailable. No tax rule or payment term is invented.

The Extract invoice data operation is part of the Accounts Payable API on BRAINIAC.software. Extract supplier, invoice number, dates, currency, purchase-order number, terms, and amounts from a supplied invoice or a text-based PDF. Missing fields stay unavailable. No tax rule or payment term is invented. It is exposed as POST /api/v1/accounts-payable/invoice-data-extract and priced at $0.06 USDC on Base. Payment uses the x402 exact scheme: an unpaid call returns HTTP 402 with payment requirements; after paying the exact USDC amount, retry the same request with a payment-signature header and Idempotency-Key. No account and no API key are required. Data sources for this product: The invoice file or structured invoice supplied in the request. Purchase orders and prior invoices supplied in the same request. Limitations: Text is read from text-based PDFs and labeled text or CSV. Scanned pages are not OCR-read. Missing tax, discount, shipping, purchase orders, and payment terms are not filled in. Duplicate detection compares only the invoices in the request. No payment is initiated, and a clear review is not an approval to pay. Outputs are compliance prechecks, drafts, or data lookups for human review. They are not official determinations, legal advice, identity confirmation, or certified filings. Related operations in this group include Extract invoice line items, Validate invoice totals, Detect duplicate invoices, Match an invoice to a purchase order. Open the group documentation for the full request schema, field notes, and response examples before integrating.

POST$0.06 USDC
/api/v1/accounts-payable/invoice-data-extract

Example request

curl -i -X POST "https://www.brainiac.software/api/v1/accounts-payable/invoice-data-extract" \
  -H 'content-type: application/json' \
  -H 'Idempotency-Key: <fresh-64-character-random-hex-key>' \
  --data-binary @- <<'JSON'
{
  "file": {
    "mediaType": "text/plain",
    "fileBase64": "U3VwcGxpZXI6IE5vcnRod2luZCBQYXBlciBMdGQKSW52b2ljZSBudW1iZXI6IElOVi0xMDAKSW52b2ljZSBkYXRlOiAyMDI2LTEwLTAxCkR1ZSBkYXRlOiAwMi8xMS8yMDI2CkN1cnJlbmN5OiBVU0QKUHVyY2hhc2Ugb3JkZXI6IFBPLTU1ClBheW1lbnQgdGVybXM6IE5ldCAzMApQYXBlciByZWFtIDIgMTIuNTAgMjUuMDAKSW5rIGNhcnRyaWRnZSAxIDMwLjAwIDMwLjAwClN1YnRvdGFsOiA1NS4wMApUYXg6IDAuMDAKVG90YWw6IDU1LjAwCg=="
  }
}
JSON

An unpaid probe returns HTTP 402 with x402 payment requirements. After paying the exact USDC amount on Base, retry the identical request with a payment-signature header.

FAQ

  • Do I need an API key? No. Pay the listed USDC amount with x402.
  • What network? Base (eip155:8453), USDC.
  • Is this an official determination? No. Results are for human review against the cited sources.

Related APIs

Accounts Payable APIFull docsHow it works