For the complete documentation index, see llms.txt. This page is also available as Markdown.

Webhooks

The Accounts Payable API adds 14 new webhook topics to the existing webhook infrastructure. Partners subscribe using the same POST /webhooks endpoint with new topic values. No new webhook endpoints are needed.

Subscribing to Acc Payable Webhooks

Use the existing webhook subscription endpoint:

POST /webhooks
{
  "topic": "vendor_created",
  "endpoint_url": "https://your-server.com/webhooks",
  "secret_key": "your-webhook-secret"
}

New Webhook Topics

Vendor Events

Topic
Trigger

vendor_created

Vendor created (manual, OCR, or integration sync)

vendor_updated

Vendor details changed

vendor_deactivated

Vendor deactivated

vendor_reactivated

Vendor reactivated

Bill Events

Topic
Trigger

bill_created

Bill created (manual, OCR, or integration sync)

bill_updated

Bill details changed

bill_submitted

Bill submitted for approval

bill_rejected

Bill rejected

bill_deleted

Bill soft-deleted

Vendor Payment Events

Topic
Trigger

vendor_payment_processing

Vendor payment initiated, funds being transferred

vendor_payment_succeeded

Vendor payment completed successfully

vendor_payment_failed

Vendor payment failed

vendor_payment_canceled

Vendor payment canceled

Vendor Data Request Events

Topic
Trigger

vendor_data_request_submitted

Vendor completed the self-service data collection form

Webhook Payload Format

Webhook payloads follow the same format as existing AR webhooks. The topic field indicates the event type, and the data field contains the resource details.

Managing Webhook Subscriptions

All existing webhook management endpoints work with the new topics:

Method
Path
Description

POST

/webhooks

Subscribe to a topic

GET

/webhooks

List subscriptions

DELETE

/webhooks/{id}

Unsubscribe

GET

/webhooks/{id}/events

List events for a subscription

POST

/webhooks/{id}/retry

Retry failed webhook deliveries

Webhook Delivery

  • Webhooks are delivered via HTTP POST to the configured endpoint_url

  • If a secret_key was provided, the payload is signed using HMAC-SHA256

  • Failed deliveries are retried with exponential backoff

  • Event history is retained for 30 days

Last updated

Was this helpful?