Developer

Document Extraction Webhooks — HMAC-signed JSON delivered in real time | DocPeel

Receive clean JSON at any HTTPS endpoint the second a document finishes extracting. HMAC-SHA256 signatures, automatic retries, no polling. Free to try, no credit card.

7 min readUpdated April 23, 2026

How it works

  1. 1Add your destination URL in Settings → Webhooks. DocPeel sends a test event immediately so you can verify connectivity.
  2. 2Your endpoint receives a POST request with the extraction result as a JSON body and an HMAC-SHA256 signature header.
  3. 3Respond with HTTP 200 to acknowledge. Failed deliveries are automatically retried up to three times.

No polling — real-time push delivery

Polling APIs on a schedule wastes compute, introduces latency, and makes latency unpredictable. DocPeel webhooks push extraction results to your endpoint the moment a job completes — typically within one second of the AI returning the structured output.

This makes webhooks the foundation of low-latency document automation pipelines. An invoice extracted at 2:14:07 AM reaches your endpoint and can be posted to your ERP by 2:14:08 AM, without any scheduled jobs or cron processes.

Payload structure and field schema

The webhook body is a JSON object containing the job ID, parser name, document filename, extraction status, a timestamp, and the full extracted fields array. Each field includes its name, extracted value, confidence score (0–1), and an explanation of how it was identified.

The structure is consistent across all document types so your endpoint handler only needs to be written once, regardless of whether it receives invoices, contracts, or ID documents.

HMAC-SHA256 signature verification

Every webhook delivery includes an X-DocPeel-Signature header containing an HMAC-SHA256 hash of the raw request body, signed with your unique webhook secret. Always verify this header in your handler before processing the payload.

Verification prevents malicious third parties from sending fake extraction results to your endpoint. Your secret can be rotated at any time from the webhook settings page without interrupting delivery.

Retry policy and delivery guarantees

If your endpoint returns a non-200 status or does not respond within 10 seconds, DocPeel retries the delivery with exponential backoff: first retry after 15 seconds, second after 60 seconds, third after 5 minutes. If all three retries fail, the delivery is marked as failed and logged for inspection.

All delivery attempts — successful and failed — are logged in the DocPeel dashboard with response codes and timestamps, giving you full visibility into your pipeline health.

Integrate with any system

Webhooks are the most flexible integration path because they work with any system that can receive HTTP requests — QuickBooks, Xero, Salesforce, HubSpot, Zapier, Make (Integromat), n8n, a custom internal API, or a serverless function.

Many teams use DocPeel webhooks as the first step in a larger automation: the webhook triggers a Zapier or Make scenario that routes the data to multiple downstream systems simultaneously.

Who uses this integration

  • Developers building custom document automation pipelines
  • Teams integrating with ERP and accounting systems via their own APIs
  • Engineers connecting DocPeel to Zapier, Make, or n8n
  • Businesses with internal APIs that need document data in real time
  • Any team that needs extraction results delivered to a specific URL

Output formats

HTTP POST (JSON)JSONCSV

Frequently asked questions

Can I have multiple webhook endpoints configured at once?
Yes. You can configure multiple webhook destinations, each with its own secret. DocPeel delivers to all configured endpoints for every completed extraction.
What is the timeout for webhook delivery?
Your endpoint must respond within 10 seconds. If it does not, DocPeel treats the delivery as failed and begins the retry sequence.
How do I test my webhook endpoint before going live?
After adding a webhook URL, DocPeel sends a test event with a sample payload immediately. You can also trigger test deliveries at any time from the webhook settings panel.

Ready to connect DocPeel to Custom Webhooks?

Sign up free and connect your first integration in minutes. No credit card required.