Hoe kan ik een conceptfactuur publiceren?

Geschreven:

Nieuwe factuur

Een nieuwe factuur wordt standaard opgeslagen als een conceptfactuur. Je kan ervoor kiezen een nieuwe factuur direct te publiceren bij het aanmaken ervan. Dit doe je met behulp van de _publish trigger.

Request

curl --request POST 'https://rompslomp.nl/api/v1/companies/{company_id}/sales_invoices' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer {access_token}' \
  --data-raw '{
    "sales_invoice": {
      "date": "2020-05-11",
      "invoice_lines": [
          {
              "description": "Toner",
              "price_per_unit": "75",
              "quantity": "1"
          }
      ],
      "_publish": true
    }
  }'

Response

HTTP/1.1 201 Created

{
  "sales_invoice": {
    "id": {id},
    "status": "published",
    // ...
  }
}

Bestaande conceptfactuur

Ook een bestaande factuur kan worden gepubliceerd met behulp van de _publish trigger. Gebruik daarvoor het PATCH /companies/{company_id}/sales_invoices/{id} endpoint.

Request

curl --request PATCH 'https://rompslomp.nl/api/v1/companies/{company_id}/sales_invoices/{id}' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer {access_token}' \
  --data-raw '{
    "sales_invoice": {
      "_publish": true
    }
  }'

Response

HTTP/1.1 200 OK

{
  "sales_invoice": {
    "id": {id},
    "status": "published",
    // ...
  }
}

Let op: het publiceren van een reeds gepubliceerde factuur geeft een foutmelding (422 / client.parameters.validation).