---
title: "External Billing Document (Invoice/Credit-Note) Update"
method: POST
path: "/v1/webhook/billing-document-update"
tags: ["Use case / Accounting", "Webhooks / Inbound"]
---

# External Billing Document (Invoice/Credit-Note) Update

`POST /v1/webhook/billing-document-update`

Update billing document metadata (invoices, credit notes) from an external accounting system.

This webhook uses **Basic Auth** (webhook credentials), not the OAuth credentials used for the API.
Contact integrations@qargo.com to request credentials.

Use this endpoint to push document status changes or related metadata updates back to Qargo.
This is typically triggered when your external accounting system processes billing documents.

## Request body

- BillingDocumentUpdatePayload
  - `updates` BillingDocumentUpdate[] — List of updates to process
    - `sales_invoice` SalesInvoiceUpdate
      - `id` string, nullable
      - `custom_fields` object, nullable
      - `match` BillingDocumentMatchTarget
        - `matches_all` BillingDocumentMatchInput[]
          - `sales_invoice` SalesInvoiceMatch, required
            - `name` FieldMatchInput
              - …

## Response `200`

Successful Response

- unknown

## Other responses

- `400` — Bad Request — invalid input or malformed request
- `401` — Unauthorized — missing or invalid authentication credentials
- `403` — Forbidden — insufficient permissions for this operation
- `422` — Validation Error
- `429` — Too Many Requests — rate limit exceeded. See the `Retry-After` header
- `500` — Internal Server Error
- `503` — Service Unavailable — temporarily unable to handle the request

---

[API](https://skmtc.dev/qargo/apis/qargo-tms-api.md) · [All operations](https://skmtc.dev/qargo/apis/qargo-tms-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/qargo/qargo-tms-api/revisions/17297902e7ce/schema)
