Ga naar inhoud

Geld: facturen, offertes, abonnementen

Facturen en offertes die uit het werk zelf komen, terugkerende afspraken, de betaalprovider die ze vereffent en het boekhoudpakket waar ze in belanden.

106 endpoints, verdeeld over 4 groepen. Een recht geschreven als module.resource.action:own heeft een bereik: :own dekt rijen die van jou zijn, :any die van iedereen, en :any voldoet aan een controle op :own.

EndpointRecht
GET /invoicing/invoicesinvoicing.invoice.read
POST /invoicing/invoicesinvoicing.invoice.write
GET /invoicing/invoices/{invoice_id}invoicing.invoice.read
PATCH /invoicing/invoices/{invoice_id}invoicing.invoice.write
DELETE /invoicing/invoices/{invoice_id}invoicing.invoice.delete
POST /invoicing/invoices/{invoice_id}/cancelinvoicing.invoice.write
POST /invoicing/invoices/{invoice_id}/creditinvoicing.invoice.write
POST /invoicing/invoices/{invoice_id}/exportinvoicing.invoice.write
POST /invoicing/invoices/{invoice_id}/issueinvoicing.invoice.write
GET /invoicing/invoices/{invoice_id}/payment-intentsinvoicing.invoice.read
POST /invoicing/invoices/{invoice_id}/payment-intentsinvoicing.payment.link
POST /invoicing/invoices/{invoice_id}/payment-intents/{intent_id}/syncinvoicing.payment.link:any
POST /invoicing/invoices/{invoice_id}/payment-intents/refreshinvoicing.payment.link
POST /invoicing/invoices/{invoice_id}/paymentsinvoicing.payment.write
DELETE /invoicing/invoices/{invoice_id}/payments/{payment_id}invoicing.payment.write
GET /invoicing/invoices/{invoice_id}/pdfinvoicing.invoice.read
GET /invoicing/invoices/{invoice_id}/previewinvoicing.invoice.read
GET /invoicing/invoices/{invoice_id}/refsinvoicing.invoice.read:any
POST /invoicing/invoices/{invoice_id}/remindinvoicing.invoice.send
POST /invoicing/invoices/{invoice_id}/sendinvoicing.invoice.send
GET /invoicing/invoices/{invoice_id}/ublinvoicing.invoice.read
POST /invoicing/invoices/from-timeinvoicing.invoice.write
GET /invoicing/invoices/pdfinvoicing.invoice.read
GET /invoicing/outstandinginvoicing.invoice.write
GET /invoicing/payment-accountsinvoicing.payment.link:any
POST /invoicing/payments/webhook/{provider}/{token}Bewust open
GET /invoicing/productsinvoicing.invoice.read:any
POST /invoicing/productsinvoicing.settings.manage
PATCH /invoicing/products/{product_id}invoicing.settings.manage
DELETE /invoicing/products/{product_id}invoicing.settings.manage
GET /invoicing/providersinvoicing.settings.manage
GET /invoicing/public/invoices/{token}Bewust open
POST /invoicing/public/invoices/{token}/payment-intentsBewust open
GET /invoicing/public/invoices/{token}/pdfBewust open
GET /invoicing/public/invoices/{token}/previewBewust open
POST /invoicing/public/invoices/{token}/refreshBewust open
GET /invoicing/quotesinvoicing.quote.read
POST /invoicing/quotesinvoicing.quote.write
GET /invoicing/quotes/{quote_id}invoicing.quote.read
PATCH /invoicing/quotes/{quote_id}invoicing.quote.write
DELETE /invoicing/quotes/{quote_id}invoicing.quote.delete
POST /invoicing/quotes/{quote_id}/acceptinvoicing.quote.write
POST /invoicing/quotes/{quote_id}/convertinvoicing.quote.write
POST /invoicing/quotes/{quote_id}/issueinvoicing.quote.write
GET /invoicing/quotes/{quote_id}/pdfinvoicing.quote.read
GET /invoicing/quotes/{quote_id}/previewinvoicing.quote.read
POST /invoicing/quotes/{quote_id}/rejectinvoicing.quote.write
POST /invoicing/quotes/{quote_id}/sendinvoicing.quote.send
GET /invoicing/recurring-backloginvoicing.invoice.read:any
GET /invoicing/settingsinvoicing.invoice.read:any
PUT /invoicing/settingsinvoicing.settings.manage
GET /invoicing/summaryinvoicing.invoice.read
GET /invoicing/tax-ratesinvoicing.invoice.read:any
POST /invoicing/tax-ratesinvoicing.settings.manage
PATCH /invoicing/tax-rates/{tax_rate_id}invoicing.settings.manage
DELETE /invoicing/tax-rates/{tax_rate_id}invoicing.settings.manage
GET /invoicing/template-blocksinvoicing.settings.manage
GET /invoicing/template-blocks/{design}/sourceinvoicing.template.author
GET /invoicing/templatesinvoicing.invoice.read:any
POST /invoicing/templatesinvoicing.settings.manage
PATCH /invoicing/templates/{template_id}invoicing.settings.manage
DELETE /invoicing/templates/{template_id}invoicing.settings.manage
POST /invoicing/templates/previewinvoicing.settings.manage
POST /invoicing/templates/qr-previewinvoicing.settings.manage
GET /invoicing/unbilledinvoicing.invoice.write
GET /invoicing/uninvoicedinvoicing.invoice.read:any
Parameters en schema’s per endpoint

List Invoices

Recht: invoicing.invoice.read

Queryparameters:

NaamTypeBetekenis
limitinteger(default 100)
offsetinteger(default 0)
statusstringdraft | open | paid | cancelled
company_idstring
kindstringinvoice | credit_note
overduebooleanonly open invoices past their due date (default false)
qstringmatches number and reference
sortstringnumber | status | issue_date | due_date | total | created_at
linesbooleanInclude each row’s lines and tax groups. False for list views (#290). (default true)

Antwoord: 200 · Page_InvoiceRead_

Create Invoice

Recht: invoicing.invoice.write

Request body: InvoiceCreate

Antwoord: 201 · InvoiceRead

GET /api/v1/invoicing/invoices/{invoice_id}

Section titled “GET /api/v1/invoicing/invoices/{invoice_id}”

Get Invoice

Recht: invoicing.invoice.read

Padparameters: invoice_id

Antwoord: 200 · InvoiceRead

PATCH /api/v1/invoicing/invoices/{invoice_id}

Section titled “PATCH /api/v1/invoicing/invoices/{invoice_id}”

Update Invoice

Recht: invoicing.invoice.write

Padparameters: invoice_id

Request body: InvoiceUpdate

Antwoord: 200 · InvoiceRead

DELETE /api/v1/invoicing/invoices/{invoice_id}

Section titled “DELETE /api/v1/invoicing/invoices/{invoice_id}”

Delete Invoice

Recht: invoicing.invoice.delete

Padparameters: invoice_id

Antwoord: 204

POST /api/v1/invoicing/invoices/{invoice_id}/cancel

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/cancel”

Cancel Invoice

Recht: invoicing.invoice.write

Padparameters: invoice_id

Antwoord: 200 · InvoiceRead

POST /api/v1/invoicing/invoices/{invoice_id}/credit

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/credit”

Credit Invoice — Draft credit note mirroring this invoice with negated prices.

Recht: invoicing.invoice.write

Padparameters: invoice_id

Antwoord: 201 · InvoiceRead

POST /api/v1/invoicing/invoices/{invoice_id}/export

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/export”

Export Invoice — Push this invoice to a live accounting provider (#31). Until an adapter module is installed the registry is empty and this reports the provider as unknown — UBL download is the always-available path.

Recht: invoicing.invoice.write

Padparameters: invoice_id

Queryparameters:

NaamTypeBetekenis
providerstring · verplichta registered accounting provider key

Antwoord: 200 · ExternalRefRead

POST /api/v1/invoicing/invoices/{invoice_id}/issue

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/issue”

Issue Invoice — Assign the number, freeze the bill-to, open the invoice.

Recht: invoicing.invoice.write

Padparameters: invoice_id

Request body: InvoiceIssue

Antwoord: 200 · InvoiceRead

GET /api/v1/invoicing/invoices/{invoice_id}/payment-intents

Section titled “GET /api/v1/invoicing/invoices/{invoice_id}/payment-intents”

List Payment Intents — This invoice’s payment attempts. _READ’s floor, not _MODULE: a client must be able to see the state of the payment they just made.

Recht: invoicing.invoice.read

Padparameters: invoice_id

Antwoord: 200 · InvoicePaymentIntentRead[]

POST /api/v1/invoicing/invoices/{invoice_id}/payment-intents

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/payment-intents”

Start Payment — Open a hosted checkout for this invoice’s outstanding balance.

Recht: invoicing.payment.link

Padparameters: invoice_id

Request body: InvoicePaymentIntentCreate

Antwoord: 200 · InvoicePaymentIntentRead

POST /api/v1/invoicing/invoices/{invoice_id}/payment-intents/{intent_id}/sync

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/payment-intents/{intent_id}/sync”

Sync Payment Intent — Re-ask the provider about one attempt, by hand.

Recht: invoicing.payment.link:any

Padparameters: invoice_id, intent_id

Antwoord: 200 · InvoicePaymentIntentRead

POST /api/v1/invoicing/invoices/{invoice_id}/payment-intents/refresh

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/payment-intents/refresh”

Refresh Payments — “Did my payment land?” — asked by the page a payer returns to (#304).

Recht: invoicing.payment.link

Padparameters: invoice_id

Antwoord: 200 · InvoicePaymentRefresh

POST /api/v1/invoicing/invoices/{invoice_id}/payments

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/payments”

Add Payment

Recht: invoicing.payment.write

Padparameters: invoice_id

Request body: PaymentWrite

Antwoord: 200 · InvoiceRead

DELETE /api/v1/invoicing/invoices/{invoice_id}/payments/{payment_id}

Section titled “DELETE /api/v1/invoicing/invoices/{invoice_id}/payments/{payment_id}”

Delete Payment

Recht: invoicing.payment.write

Padparameters: invoice_id, payment_id

Antwoord: 200 · InvoiceRead

GET /api/v1/invoicing/invoices/{invoice_id}/pdf

Section titled “GET /api/v1/invoicing/invoices/{invoice_id}/pdf”

Download Invoice Pdf — The rendered invoice document (owner feedback): the same PDF the send path attaches.

Recht: invoicing.invoice.read

Padparameters: invoice_id

Antwoord: 200

GET /api/v1/invoicing/invoices/{invoice_id}/preview

Section titled “GET /api/v1/invoicing/invoices/{invoice_id}/preview”

Preview Invoice — The invoice as HTML — the same artefact /pdf prints.

Recht: invoicing.invoice.read

Padparameters: invoice_id

Antwoord: 200

GET /api/v1/invoicing/invoices/{invoice_id}/refs

Section titled “GET /api/v1/invoicing/invoices/{invoice_id}/refs”

Invoice Refs — What accounting packages know about this invoice (the #31 sync bookkeeping).

Recht: invoicing.invoice.read:any

Padparameters: invoice_id

Antwoord: 200 · ExternalRefRead[]

POST /api/v1/invoicing/invoices/{invoice_id}/remind

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/remind”

Remind Invoice — A payment reminder on demand — same mail, same bookkeeping as the daily cron.

Recht: invoicing.invoice.send

Padparameters: invoice_id

Antwoord: 200 · InvoiceRead

POST /api/v1/invoicing/invoices/{invoice_id}/send

Section titled “POST /api/v1/invoicing/invoices/{invoice_id}/send”

Send Invoice

Recht: invoicing.invoice.send

Padparameters: invoice_id

Request body: DocumentSend

Antwoord: 200 · InvoiceRead

GET /api/v1/invoicing/invoices/{invoice_id}/ubl

Section titled “GET /api/v1/invoicing/invoices/{invoice_id}/ubl”

Download Ubl — UBL 2.1 XML — importable by Exact Online, SnelStart, Moneybird, e-Boekhouden.

Recht: invoicing.invoice.read

Padparameters: invoice_id

Antwoord: 200

Invoice From Time — Draft invoice from unbilled approved billable time; stamps the entries invoiced.

Recht: invoicing.invoice.write

Request body: InvoiceFromTime

Antwoord: 201 · InvoiceRead

Download Invoices Zip — A selection of invoices as one zip of PDFs — the bulk half of /{invoice_id}/pdf.

Recht: invoicing.invoice.read

Queryparameters:

NaamTypeBetekenis
idsstring[] · verplichtThe invoices to pack, by id — the list screen’s ✎ selection (#307).

Antwoord: 200

Outstanding — Everything a client still has to be invoiced for: hours, agreement periods, renewals.

Recht: invoicing.invoice.write

Queryparameters:

NaamTypeBetekenis
company_idstring · verplicht

Antwoord: 200 · OutstandingRead

List Payment Accounts — Which payment credentials this org has connected, across every enabled provider module.

Recht: invoicing.payment.link:any

Antwoord: 200 · InvoicePaymentAccountRead[]

POST /api/v1/invoicing/payments/webhook/{provider}/{token}

Section titled “POST /api/v1/invoicing/payments/webhook/{provider}/{token}”

Payment Webhook — The provider’s callback. Returns bare statuses and no body, by design.

Recht: Bewust open

Padparameters: provider, token

Antwoord: 200

List Products

Recht: invoicing.invoice.read:any

Queryparameters:

NaamTypeBetekenis
include_inactiveboolean(default false)

Antwoord: 200 · ProductRead[]

Create Product

Recht: invoicing.settings.manage

Request body: ProductCreate

Antwoord: 201 · ProductRead

PATCH /api/v1/invoicing/products/{product_id}

Section titled “PATCH /api/v1/invoicing/products/{product_id}”

Update Product

Recht: invoicing.settings.manage

Padparameters: product_id

Request body: ProductUpdate

Antwoord: 200 · ProductRead

DELETE /api/v1/invoicing/products/{product_id}

Section titled “DELETE /api/v1/invoicing/products/{product_id}”

Delete Product

Recht: invoicing.settings.manage

Padparameters: product_id

Antwoord: 204

List Providers — The registered accounting adapters (#31). UBL export is always available and is not a provider — it’s a download, listed by the web from its own knowledge.

Recht: invoicing.settings.manage

Antwoord: 200 · array

GET /api/v1/invoicing/public/invoices/{token}

Section titled “GET /api/v1/invoicing/public/invoices/{token}”

Public Invoice — This invoice, as the person holding its link sees it.

Recht: Bewust open

Padparameters: token

Antwoord: 200 · PublicInvoiceRead

POST /api/v1/invoicing/public/invoices/{token}/payment-intents

Section titled “POST /api/v1/invoicing/public/invoices/{token}/payment-intents”

Public Start Payment — Open a checkout for what this invoice still owes, and hand back where to go.

Recht: Bewust open

Padparameters: token

Antwoord: 200 · PublicCheckout

GET /api/v1/invoicing/public/invoices/{token}/pdf

Section titled “GET /api/v1/invoicing/public/invoices/{token}/pdf”

Public Invoice Pdf — The PDF, for the client who wants it in their own bookkeeping.

Recht: Bewust open

Padparameters: token

Antwoord: 200

GET /api/v1/invoicing/public/invoices/{token}/preview

Section titled “GET /api/v1/invoicing/public/invoices/{token}/preview”

Public Invoice Preview — The rendered document — the same HTML the signed-in preview and the PDF produce.

Recht: Bewust open

Padparameters: token

Antwoord: 200

POST /api/v1/invoicing/public/invoices/{token}/refresh

Section titled “POST /api/v1/invoicing/public/invoices/{token}/refresh”

Public Refresh Payments — “Did my payment land?”, for the payer coming back from a checkout (#304).

Recht: Bewust open

Padparameters: token

Antwoord: 200 · InvoicePaymentRefresh

List Quotes

Recht: invoicing.quote.read

Queryparameters:

NaamTypeBetekenis
limitinteger(default 100)
offsetinteger(default 0)
statusstringdraft | open | accepted | rejected | expired | invoiced
company_idstring
qstringmatches number and reference
sortstringnumber | status | issue_date | valid_until | total | created_at
linesbooleanInclude each row’s lines and tax groups. False for list views (#290). (default true)

Antwoord: 200 · Page_QuoteRead_

Create Quote

Recht: invoicing.quote.write

Request body: QuoteCreate

Antwoord: 201 · QuoteRead

Get Quote

Recht: invoicing.quote.read

Padparameters: quote_id

Antwoord: 200 · QuoteRead

Update Quote

Recht: invoicing.quote.write

Padparameters: quote_id

Request body: QuoteUpdate

Antwoord: 200 · QuoteRead

DELETE /api/v1/invoicing/quotes/{quote_id}

Section titled “DELETE /api/v1/invoicing/quotes/{quote_id}”

Delete Quote

Recht: invoicing.quote.delete

Padparameters: quote_id

Antwoord: 204

POST /api/v1/invoicing/quotes/{quote_id}/accept

Section titled “POST /api/v1/invoicing/quotes/{quote_id}/accept”

Accept Quote

Recht: invoicing.quote.write

Padparameters: quote_id

Request body: QuoteDecision

Antwoord: 200 · QuoteRead

POST /api/v1/invoicing/quotes/{quote_id}/convert

Section titled “POST /api/v1/invoicing/quotes/{quote_id}/convert”

Convert Quote — Accepted quote → draft invoice carrying the lines at their accepted prices.

Recht: invoicing.quote.write

Padparameters: quote_id

Antwoord: 201 · InvoiceRead

POST /api/v1/invoicing/quotes/{quote_id}/issue

Section titled “POST /api/v1/invoicing/quotes/{quote_id}/issue”

Issue Quote

Recht: invoicing.quote.write

Padparameters: quote_id

Request body: InvoiceIssue

Antwoord: 200 · QuoteRead

GET /api/v1/invoicing/quotes/{quote_id}/pdf

Section titled “GET /api/v1/invoicing/quotes/{quote_id}/pdf”

Download Quote Pdf

Recht: invoicing.quote.read

Padparameters: quote_id

Antwoord: 200

GET /api/v1/invoicing/quotes/{quote_id}/preview

Section titled “GET /api/v1/invoicing/quotes/{quote_id}/preview”

Preview Quote

Recht: invoicing.quote.read

Padparameters: quote_id

Antwoord: 200

POST /api/v1/invoicing/quotes/{quote_id}/reject

Section titled “POST /api/v1/invoicing/quotes/{quote_id}/reject”

Reject Quote

Recht: invoicing.quote.write

Padparameters: quote_id

Request body: QuoteDecision

Antwoord: 200 · QuoteRead

POST /api/v1/invoicing/quotes/{quote_id}/send

Section titled “POST /api/v1/invoicing/quotes/{quote_id}/send”

Send Quote

Recht: invoicing.quote.send

Padparameters: quote_id

Request body: DocumentSend

Antwoord: 200 · QuoteRead

Recurring Backlog — Org-wide recurring work still to invoice (#302): agreement periods and domain renewals that no document claims yet.

Recht: invoicing.invoice.read:any

Queryparameters:

NaamTypeBetekenis
groupcompany · month · sourcecompany | month | source (default company)
sourceall · subscription · domainall | subscription | domain (default all)
limitintegercap on the item detail, not the totals (default 500)

Antwoord: 200 · RecurringBacklogReport

Get Settings — Read by the editor too (defaults, numbering preview) — not only by admins.

Recht: invoicing.invoice.read:any

Antwoord: 200 · InvoicingSettingsRead

Save Settings

Recht: invoicing.settings.manage

Request body: InvoicingSettingsWrite

Antwoord: 200 · InvoicingSettingsRead

Summary

Recht: invoicing.invoice.read

Antwoord: 200 · InvoicingSummary

List Tax Rates

Recht: invoicing.invoice.read:any

Queryparameters:

NaamTypeBetekenis
include_inactiveboolean(default false)

Antwoord: 200 · TaxRateRead[]

Create Tax Rate

Recht: invoicing.settings.manage

Request body: TaxRateCreate

Antwoord: 201 · TaxRateRead

PATCH /api/v1/invoicing/tax-rates/{tax_rate_id}

Section titled “PATCH /api/v1/invoicing/tax-rates/{tax_rate_id}”

Update Tax Rate

Recht: invoicing.settings.manage

Padparameters: tax_rate_id

Request body: TaxRateUpdate

Antwoord: 200 · TaxRateRead

DELETE /api/v1/invoicing/tax-rates/{tax_rate_id}

Section titled “DELETE /api/v1/invoicing/tax-rates/{tax_rate_id}”

Delete Tax Rate

Recht: invoicing.settings.manage

Padparameters: tax_rate_id

Antwoord: 204

Template Blocks — What a template may rearrange: the block/field catalog plus the shipped designs.

Recht: invoicing.settings.manage

Antwoord: 200 · TemplateCatalog

GET /api/v1/invoicing/template-blocks/{design}/source

Section titled “GET /api/v1/invoicing/template-blocks/{design}/source”

Template Source — A shipped design’s own HTML and CSS, to start a custom template from.

Recht: invoicing.template.author

Padparameters: design

Antwoord: 200 · TemplateSource

List Templates

Recht: invoicing.invoice.read:any

Queryparameters:

NaamTypeBetekenis
include_inactiveboolean(default false)

Antwoord: 200 · app__modules__invoicing__schemas__TemplateRead[]

Create Template

Recht: invoicing.settings.manage

Request body: app__modules__invoicing__schemas__TemplateCreate

Antwoord: 201 · app__modules__invoicing__schemas__TemplateRead

PATCH /api/v1/invoicing/templates/{template_id}

Section titled “PATCH /api/v1/invoicing/templates/{template_id}”

Update Template

Recht: invoicing.settings.manage

Padparameters: template_id

Request body: app__modules__invoicing__schemas__TemplateUpdate

Antwoord: 200 · app__modules__invoicing__schemas__TemplateRead

DELETE /api/v1/invoicing/templates/{template_id}

Section titled “DELETE /api/v1/invoicing/templates/{template_id}”

Delete Template

Recht: invoicing.settings.manage

Padparameters: template_id

Antwoord: 204

Preview Template — Render a sample document with an unsaved config — the editor’s live preview.

Recht: invoicing.settings.manage

Request body: TemplatePreview

Antwoord: 200

POST /api/v1/invoicing/templates/qr-preview

Section titled “POST /api/v1/invoicing/templates/qr-preview”

Preview Template Qr — The payment QR alone, as an unsaved config would draw it (#305).

Recht: invoicing.settings.manage

Request body: TemplatePreview

Antwoord: 200 · QrPreview

Unbilled

Recht: invoicing.invoice.write

Queryparameters:

NaamTypeBetekenis
company_idstring · verplicht
project_idstring
untilstringorg-local date (YYYY-MM-DD), inclusive

Antwoord: 200 · UnbilledRead

Uninvoiced — Org-wide report of approved + billable + not-yet-invoiced hours (#277), bucketed server-side with exact per-group subtotals. Read-only: the per-company /unbilled stays the invoice-build preview, and building happens via /invoices/from-time.

Recht: invoicing.invoice.read:any

Queryparameters:

NaamTypeBetekenis
groupday · week · month · year · company · project · userday | week | month | year | company | project | user (default company)
limitintegercap on the entry detail, not the totals (default 500)

Antwoord: 200 · UninvoicedReport

EndpointRecht
GET /subscriptionssubscriptions.subscription.read
POST /subscriptionssubscriptions.subscription.write
GET /subscriptions/{subscription_id}subscriptions.subscription.read
PATCH /subscriptions/{subscription_id}subscriptions.subscription.write
DELETE /subscriptions/{subscription_id}subscriptions.subscription.delete
GET /subscriptions/{subscription_id}/pricessubscriptions.subscription.read
POST /subscriptions/price-increasesubscriptions.subscription.write
POST /subscriptions/price-increase/previewsubscriptions.subscription.write
GET /subscriptions/summarysubscriptions.subscription.read
GET /subscriptions/templatessubscriptions.subscription.read
POST /subscriptions/templatessubscriptions.template.manage
PATCH /subscriptions/templates/{template_id}subscriptions.template.manage
DELETE /subscriptions/templates/{template_id}subscriptions.template.manage
GET /subscriptions/typessubscriptions.subscription.read
POST /subscriptions/typessubscriptions.type.manage
PATCH /subscriptions/types/{type_id}subscriptions.type.manage
DELETE /subscriptions/types/{type_id}subscriptions.type.manage
Parameters en schema’s per endpoint

List Subscriptions

Recht: subscriptions.subscription.read

Queryparameters:

NaamTypeBetekenis
limitinteger(default 100)
offsetinteger(default 0)
company_idstring
statusstring
subscription_type_idstring
sortstringname | status | next_invoice_date | start_date | company | type | amount | included_hours
entity_typestringwith entity_id: linked-entity filter
entity_idstring
usagebooleaninclude current-period usage per row (default false)

Antwoord: 200 · Page_SubscriptionRead_

Create Subscription

Recht: subscriptions.subscription.write

Request body: SubscriptionCreate

Antwoord: 201 · SubscriptionRead

GET /api/v1/subscriptions/{subscription_id}

Section titled “GET /api/v1/subscriptions/{subscription_id}”

Get Subscription

Recht: subscriptions.subscription.read

Padparameters: subscription_id

Queryparameters:

NaamTypeBetekenis
usagebooleanInclude current-period included-hours usage (default false)

Antwoord: 200 · SubscriptionRead

PATCH /api/v1/subscriptions/{subscription_id}

Section titled “PATCH /api/v1/subscriptions/{subscription_id}”

Update Subscription

Recht: subscriptions.subscription.write

Padparameters: subscription_id

Request body: SubscriptionUpdate

Antwoord: 200 · SubscriptionRead

DELETE /api/v1/subscriptions/{subscription_id}

Section titled “DELETE /api/v1/subscriptions/{subscription_id}”

Delete Subscription

Recht: subscriptions.subscription.delete

Padparameters: subscription_id

Antwoord: 204

GET /api/v1/subscriptions/{subscription_id}/prices

Section titled “GET /api/v1/subscriptions/{subscription_id}/prices”

Price History — The append-only price history, newest first.

Recht: subscriptions.subscription.read

Padparameters: subscription_id

Antwoord: 200 · PriceRead[]

Apply Price Increase — Apply the increase: one price-history row per subscription (and optionally the matching templates’ default amounts).

Recht: subscriptions.subscription.write

Request body: PriceIncreaseRequest

Antwoord: 200 · PriceIncreaseResult

POST /api/v1/subscriptions/price-increase/preview

Section titled “POST /api/v1/subscriptions/price-increase/preview”

Preview Price Increase — Every in-scope subscription with its current and would-be amount — nothing written.

Recht: subscriptions.subscription.write

Request body: PriceIncreaseRequest

Antwoord: 200 · PriceIncreaseResult

Summary — MRR/ARR + the invoices due within a month, for Overzicht → Omzet.

Recht: subscriptions.subscription.read

Antwoord: 200 · SubscriptionSummary

List Subscription Templates

Recht: subscriptions.subscription.read

Antwoord: 200 · SubscriptionTemplateRead[]

Create Subscription Template

Recht: subscriptions.template.manage

Request body: SubscriptionTemplateCreate

Antwoord: 201 · SubscriptionTemplateRead

PATCH /api/v1/subscriptions/templates/{template_id}

Section titled “PATCH /api/v1/subscriptions/templates/{template_id}”

Update Subscription Template — A rename carries over to the agreements made from this preset that still bear its old name; renamed_subscriptions reports how many, so the screen can say so.

Recht: subscriptions.template.manage

Padparameters: template_id

Request body: SubscriptionTemplateUpdate

Antwoord: 200 · SubscriptionTemplateSaved

DELETE /api/v1/subscriptions/templates/{template_id}

Section titled “DELETE /api/v1/subscriptions/templates/{template_id}”

Delete Subscription Template

Recht: subscriptions.template.manage

Padparameters: template_id

Antwoord: 204

List Subscription Types

Recht: subscriptions.subscription.read

Queryparameters:

NaamTypeBetekenis
include_inactiveboolean(default false)

Antwoord: 200 · SubscriptionTypeRead[]

Create Subscription Type

Recht: subscriptions.type.manage

Request body: SubscriptionTypeCreate

Antwoord: 201 · SubscriptionTypeRead

PATCH /api/v1/subscriptions/types/{type_id}

Section titled “PATCH /api/v1/subscriptions/types/{type_id}”

Update Subscription Type

Recht: subscriptions.type.manage

Padparameters: type_id

Request body: SubscriptionTypeUpdate

Antwoord: 200 · SubscriptionTypeRead

DELETE /api/v1/subscriptions/types/{type_id}

Section titled “DELETE /api/v1/subscriptions/types/{type_id}”

Delete Subscription Type

Recht: subscriptions.type.manage

Padparameters: type_id

Antwoord: 204

EndpointRecht
GET /mollie/accountsmollie.settings.manage
POST /mollie/accountsmollie.settings.manage
PATCH /mollie/accounts/{account_id}mollie.settings.manage
DELETE /mollie/accounts/{account_id}mollie.settings.manage
POST /mollie/accounts/{account_id}/verifymollie.settings.manage
Parameters en schema’s per endpoint

List Accounts — Connected Mollie keys. The key itself is never part of the response.

Recht: mollie.settings.manage

Antwoord: 200 · MollieAccountRead[]

Create Account — Store a credential. Creating does not verify it — /verify is the explicit probe, so a typo is reported on the settings screen rather than as a failed save.

Recht: mollie.settings.manage

Request body: MollieAccountCreate

Antwoord: 201 · MollieAccountRead

PATCH /api/v1/mollie/accounts/{account_id}

Section titled “PATCH /api/v1/mollie/accounts/{account_id}”

Update Account — Rename, re-link or rotate. An omitted api_key keeps the stored one.

Recht: mollie.settings.manage

Padparameters: account_id

Request body: MollieAccountUpdate

Antwoord: 200 · MollieAccountRead

DELETE /api/v1/mollie/accounts/{account_id}

Section titled “DELETE /api/v1/mollie/accounts/{account_id}”

Delete Account

Recht: mollie.settings.manage

Padparameters: account_id

Antwoord: 204

POST /api/v1/mollie/accounts/{account_id}/verify

Section titled “POST /api/v1/mollie/accounts/{account_id}/verify”

Verify Account — Ask Mollie whether this key works, and which methods it can take.

Recht: mollie.settings.manage

Padparameters: account_id

Antwoord: 200 · MollieAccountVerifyResult

EndpointRecht
GET /snelstart/accountssnelstart.settings.manage
POST /snelstart/accountssnelstart.settings.manage
PATCH /snelstart/accounts/{account_id}snelstart.settings.manage
DELETE /snelstart/accounts/{account_id}snelstart.settings.manage
GET /snelstart/accounts/{account_id}/ledgerssnelstart.sync.run
POST /snelstart/accounts/{account_id}/links/{link_id}/adoptsnelstart.sync.run
POST /snelstart/accounts/{account_id}/push/articlessnelstart.ledger.write
POST /snelstart/accounts/{account_id}/push/invoicessnelstart.ledger.write, invoicing.invoice.write
POST /snelstart/accounts/{account_id}/push/invoices/{invoice_id}snelstart.ledger.write, invoicing.invoice.write
POST /snelstart/accounts/{account_id}/push/relationssnelstart.ledger.write
GET /snelstart/accounts/{account_id}/relationssnelstart.sync.run
GET /snelstart/accounts/{account_id}/runssnelstart.sync.run
POST /snelstart/accounts/{account_id}/sync/paymentssnelstart.sync.run
POST /snelstart/accounts/{account_id}/sync/referencesnelstart.sync.run
POST /snelstart/accounts/{account_id}/sync/relationssnelstart.sync.run
POST /snelstart/accounts/{account_id}/verifysnelstart.settings.manage
GET /snelstart/accounts/optionssnelstart.sync.run
POST /snelstart/coupling/callbackBewust open
Parameters en schema’s per endpoint

List Accounts — Connected administrations. The koppelsleutel is never part of the response.

Recht: snelstart.settings.manage

Antwoord: 200 · SnelstartAccountRead[]

Create Account — Store a credential, or open a pending one for the activation flow to fill.

Recht: snelstart.settings.manage

Request body: SnelstartAccountCreate

Antwoord: 201 · SnelstartAccountRead

PATCH /api/v1/snelstart/accounts/{account_id}

Section titled “PATCH /api/v1/snelstart/accounts/{account_id}”

Update Account — Rename, rotate, or change what this connection does. An omitted key keeps the stored one.

Recht: snelstart.settings.manage

Padparameters: account_id

Request body: SnelstartAccountUpdate

Antwoord: 200 · SnelstartAccountRead

DELETE /api/v1/snelstart/accounts/{account_id}

Section titled “DELETE /api/v1/snelstart/accounts/{account_id}”

Delete Account

Recht: snelstart.settings.manage

Padparameters: account_id

Antwoord: 204

GET /api/v1/snelstart/accounts/{account_id}/ledgers

Section titled “GET /api/v1/snelstart/accounts/{account_id}/ledgers”

Ledger Options — The revenue accounts a line may book to — the picker behind the per-rate mapping.

Recht: snelstart.sync.run

Padparameters: account_id

Antwoord: 200 · SnelstartLedgerOption[]

POST /api/v1/snelstart/accounts/{account_id}/links/{link_id}/adopt

Section titled “POST /api/v1/snelstart/accounts/{account_id}/links/{link_id}/adopt”

Adopt Link — Pair a SnelStart row with a schakl record by hand — the reviewer’s one click.

Recht: snelstart.sync.run

Padparameters: account_id, link_id

Request body: SnelstartLinkAdopt

Antwoord: 200 · SnelstartLinkRead

POST /api/v1/snelstart/accounts/{account_id}/push/articles

Section titled “POST /api/v1/snelstart/accounts/{account_id}/push/articles”

Push Articles — schakl’s products into SnelStart’s article file, matched on the article code.

Recht: snelstart.ledger.write

Padparameters: account_id

Antwoord: 200 · SnelstartSyncRunRead

POST /api/v1/snelstart/accounts/{account_id}/push/invoices

Section titled “POST /api/v1/snelstart/accounts/{account_id}/push/invoices”

Push Invoices — Every issued invoice not yet in SnelStart, or a named selection.

Recht: snelstart.ledger.write, invoicing.invoice.write

Padparameters: account_id

Request body: Body_push_invoices_api_v1_snelstart_accounts__account_id__push_invoices_post

Antwoord: 200 · SnelstartSyncRunRead

POST /api/v1/snelstart/accounts/{account_id}/push/invoices/{invoice_id}

Section titled “POST /api/v1/snelstart/accounts/{account_id}/push/invoices/{invoice_id}”

Push Invoice — One invoice, from its own detail page.

Recht: snelstart.ledger.write, invoicing.invoice.write

Padparameters: account_id, invoice_id

Antwoord: 200 · SnelstartPushResult

POST /api/v1/snelstart/accounts/{account_id}/push/relations

Section titled “POST /api/v1/snelstart/accounts/{account_id}/push/relations”

Push Relations — Push paired and invoiced companies into SnelStart’s relation file.

Recht: snelstart.ledger.write

Padparameters: account_id

Antwoord: 200 · SnelstartSyncRunRead

GET /api/v1/snelstart/accounts/{account_id}/relations

Section titled “GET /api/v1/snelstart/accounts/{account_id}/relations”

Relation Candidates — Every SnelStart customer and what schakl believes it is. Writes nothing.

Recht: snelstart.sync.run

Padparameters: account_id

Antwoord: 200 · SnelstartRelationCandidate[]

GET /api/v1/snelstart/accounts/{account_id}/runs

Section titled “GET /api/v1/snelstart/accounts/{account_id}/runs”

List Runs — What the last syncs did, and what they could not do (#31: failures are visible).

Recht: snelstart.sync.run

Padparameters: account_id

Queryparameters:

NaamTypeBetekenis
limitinteger(default 20)

Antwoord: 200 · SnelstartSyncRunRead[]

POST /api/v1/snelstart/accounts/{account_id}/sync/payments

Section titled “POST /api/v1/snelstart/accounts/{account_id}/sync/payments”

Sync Payments — Fold SnelStart’s outstanding balances back into schakl as payments.

Recht: snelstart.sync.run

Padparameters: account_id

Antwoord: 200 · SnelstartSyncRunRead

POST /api/v1/snelstart/accounts/{account_id}/sync/reference

Section titled “POST /api/v1/snelstart/accounts/{account_id}/sync/reference”

Sync Reference — Pull the administration’s chart of accounts, journals, countries and article groups.

Recht: snelstart.sync.run

Padparameters: account_id

Antwoord: 200 · SnelstartSyncRunRead

POST /api/v1/snelstart/accounts/{account_id}/sync/relations

Section titled “POST /api/v1/snelstart/accounts/{account_id}/sync/relations”

Link Relations — Adopt every SnelStart customer schakl can identify without guessing.

Recht: snelstart.sync.run

Padparameters: account_id

Antwoord: 200 · SnelstartSyncRunRead

POST /api/v1/snelstart/accounts/{account_id}/verify

Section titled “POST /api/v1/snelstart/accounts/{account_id}/verify”

Verify Account — Ask SnelStart which administration this key opens, and what it may do there.

Recht: snelstart.settings.manage

Padparameters: account_id

Antwoord: 200 · SnelstartVerifyResult

Account Options — The accounts a sync or push may run against.

Recht: snelstart.sync.run

Antwoord: 200 · SnelstartAccountRead[]

Coupling Callback — Receive a koppelsleutel SnelStart has just granted.

Recht: Bewust open

Antwoord: 200 · object