ovpay/src/openapi/fiko/fiko-crud.yaml

5116 lines
176 KiB
YAML

openapi: "3.0.3"
info:
title: FIKO CRUD APIs v2.2
version: "1.0"
description: |
CRUD APIs for FIKO resource model v2.2. This version of the API corresponds with version 2.2
of the data model in [Lucid Chart](https://lucid.app/lucidchart/50c0ff9d-48ba-4ea9-8182-10bede07d3b1/edit?page=LL7PJg1Y_GOA>).
servers:
- url: https://services.acc.api.htm.nl/fiko/1.0
paths:
/Odata/TransactionItem:
get:
summary: Find transaction items.
description: Find transaction items.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- transactionItemRowId
- transactionItemId
- transactionType
- sourceName
- transactionId
- transactionLineId
- name
- quantity
- taxCode
- amountExclTax
- amountInclTax
- amountTax
- occurredOn
- type
- articleNumber
- status
- aggregationReference
- accountingSystemReference
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- transactionItemRowId
- transactionItemId
- transactionType
- sourceName
- transactionId
- transactionLineId
- name
- quantity
- taxCode
- amountExclTax
- amountInclTax
- amountTax
- occurredOn
- type
- articleNumber
- status
- aggregationReference
- accountingSystemReference
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TransactionItemsGetResponseBody"
examples:
No transaction items:
summary: No transaction items were found
description: No transaction items that match the search criteria were found.
value:
"@odata.context": "$metadata#TransactionItem"
value: []
List containing multiple sales transaction items:
summary: List containing multiple sales transaction items
description: List containing multiple sales transaction items of transaction type 'sales' with different statuses.
value:
"@odata.context": "$metadata#TransactionItem"
value:
- "@odata.etag": 6962e56b-c7dd-3336-9627-6687f007ee07
transactionItemRowId: 3231
transactionItemId: afce35b2-1dff-4ace-98d0-4b9ac405c87d
transactionType: sales
sourceName: HTM-website
transactionId: "1001236"
transactionLineId: "1"
name: HTM Maandkorting 20%
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "4031"
status: created
aggregationReference: null
accountingSystemReference: null
- "@odata.etag": e671c8a1-b918-4867-bf12-5289822479c3
transactionItemRowId: 3232
transactionItemId: 1c1fc1c8-57f4-4336-9b43-a974eae5afbf
transactionType: sales
sourceName: HTM-website
transactionId: "1002001"
transactionLineId: "1"
name: Reisproduct HTM 3 dag Anoniem
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "4051"
status: failed
aggregationReference: null
accountingSystemReference: null
- "@odata.etag": be2715d4-4eff-4562-9bf3-5c43ad23e2c8
transactionItemRowId: 3233
transactionItemId: 3f58441e-dc8f-4956-9bc5-c952312476db
transactionType: sales
sourceName: HTM-website
transactionId: "1001871"
transactionLineId: "1"
name: Reisproduct HTM 3 dag Anoniem
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "4051"
status: returned to src
aggregationReference: FIKO-171f40609e
accountingSystemReference: null
- "@odata.etag": 52130c4d-e944-4454-a73e-8d55449a4bd1
transactionItemRowId: 3234
transactionItemId: 4418825f-3f9b-45bc-b662-dc3cd4ce6599
transactionType: sales
sourceName: HTM-website
transactionId: "1001131"
transactionLineId: "1"
name: Reisproduct HTM 3 dag Anoniem
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "4051"
status: returned to trx-db
aggregationReference: null
accountingSystemReference: null
- "@odata.etag": 7da305e1-85cd-4250-ad77-8b54b2649cfb
transactionItemRowId: 3235
transactionItemId: 2ddc1831-cf7b-4a77-8aa1-11aaf8e98d9f
transactionType: sales
sourceName: HTM-website
transactionId: "1001885"
transactionLineId: "1"
name: Reisproduct HTM 3 dag Anoniem
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "4051"
status: re-entered
aggregationReference: null
accountingSystemReference: null
- "@odata.etag": c3b17d21-0506-474d-b3d4-7ff654f368b9
transactionItemRowId: 3236
transactionItemId: 5ab2513d-f334-4cf8-8895-4e7269374a4b
transactionType: sales
sourceName: HTM-website
transactionId: "1001679"
transactionLineId: "1"
name: Reisproduct HTM 1 dag Anoniem
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "1737"
status: succeeded
aggregationReference: FIKO-6a4fca8cd6
accountingSystemReference: U4F-123456
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/transactionitems:
post:
summary: Add one ore more finanicial transaction items in bulk.
description: Add one ore more finanicial transaction items in bulk.
tags:
- Transactions v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TransactionItemsBulkRequestBody"
examples:
Add single transaction item:
summary: Add single transaction item
description: Add single transaction item of type sales.
value:
transactionItems:
- transactionType: sales
sourceName: HTM-website
transactionId: "1001236"
transactionLineId: "1"
name: HTM Maandkorting 20%
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "4031"
Add multiple transaction items:
summary: Add multiple transaction items
description: Add multiple transaction items of type sales.
value:
transactionItems:
- transactionType: sales
sourceName: HTM-website
transactionId: "1001236"
transactionLineId: "1"
name: HTM Maandkorting 20%
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "4031"
- transactionType: sales
sourceName: HTM-website
transactionId: "1001237"
transactionLineId: "1"
name: HTM Maandkorting 20%
quantity: 1
taxCode: V21
amountExclTax: 100
amountInclTax: 121
amountTax: 21
occurredOn: 2024-10-04T00:00:00Z
type: debit
articleNumber: "4031"
responses:
"202":
description: Accepted
content:
application/json:
schema:
$ref: "#/components/schemas/BulkResponseBody"
examples:
Array of transaction items accepted:
summary: Array of transaction items accepted
description: |
The array of transaction items was accepted successfully.
The transaction items will be processed asynchronously.
In the response body the consumer will find information on how to retrieve the processing status.
value:
startTime: 2025-02-14T05:32:47.0672237Z
status: Running
clientTrackingId: 08584620957189579629541919368CU00
callbackurl: https://api.integratielaag.nl/transactionitems/responsestatus/runtime/webhooks/workflow/scaleUnits/prod-00/workflows/6fd466916c
retryAfter: 10
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/transactionitems/{transactionItemId}:
parameters:
- in: path
name: transactionItemId
schema:
type: string
format: uuid
example: 9834b346-d68c-438d-9bd5-6716422c2657
required: true
description: The id of the transaction item.
patch:
summary: Update a transaction item.
description: Update a transaction item.
tags:
- Transactions v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TransactionItemsPatchRequestBody"
examples:
Return transaction item to transaction database:
summary: Return transaction item to transaction database
description: |
FMT updates the transaction item so that it is returned to the transaction database.
This is done by changing the status to 'returned to trx-db' and emptying the
aggregationReference and accountingSystemReference.
value:
status: returned to trx-db
aggregationReference: null
accountingSystemReference: null
Return transaction item to source:
summary: Return transaction item to source
description: |
FMT updates the transaction item so that it is returned to the source.
This is done by changing the status to 'returned to src' and emptying the
aggregationReference and accountingSystemReference.
value:
status: returned to src
aggregationReference: null
accountingSystemReference: null
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TransactionItemsPatchResponseBody"
examples:
Transaction item successfully updated:
summary: Transaction item successfully updated
description: The transaction item was successfully updated in the database.
value:
transactionItemId: 7c3a5b0f-b89e-4f02-8b09-d11c5a050a07
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/transactionitems/responsestatus/{clientTrackingId}:
get:
tags:
- Transactions v2.2
summary: Get the status of the transaction items POST.
description: Get the status of the asynchronous transaction items POST processing.
parameters:
- in: path
name: clientTrackingId
schema:
type: string
required: true
description: The clientTrackingId of the transaction items POST.
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/GetResponseStatus"
examples:
Batch successfully processed:
summary: Batch successfully processed
description: |
Body of a batch of transaction items that was successfully processed.
A number of transaction items were inserted and another number was updated.
value:
summary:
created: 15
updated: 2
total: 17
"409":
description: Conflict
content:
application/json:
schema:
$ref: "#/components/schemas/409Response"
examples:
A transaction item already exists:
summary: A transaction item already exists
description: |
In this batch of transaction items, a transaction with same transactionId and
transactionLineId already exists. Therefore, the whole batch is rolled back and
rejected.
value:
code: "409"
type: error
message: conflict
description: A transaction with the same TransactionId and TransactionLineId already exists.
errors:
- detail: Transaction is a duplicate of a transaction already in the system.
pointer: "#/transactionItems/0"
transactionId: 1ad109d3-fd7d-4b6f-872b-220d492f385f
transactionLineId: fee907dd-e59d-44f5-a63b-bbdec38f79b7
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/transactionitems/{transactionItemId}/processingfailures:
parameters:
- in: path
name: transactionItemId
schema:
type: string
format: uuid
example: 9834b346-d68c-438d-9bd5-6716422c2657
required: true
description: The id of the transaction item to process.
post:
summary: Add a processing failure.
description: Add a processing failure.
tags:
- Failures v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/ProcessingFailuresPostRequestBody"
examples:
Add new processing failure for a transaction item:
summary: Add new processing failure for a transaction item
description: |
Add a new processing failure for a transaction item. This usually happens when
a transaction item has failed validation. In this specific example, the transaction
item has a timestamp in the future.
value:
timestamp: 2025-01-01 12:34:00
element: occuredOn
value: 2027-01-01 12:34:00
reasonCode: "012"
reasonDescription: Transaction date is in the future.
resolved: false
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/ProcessingFailuresPostResponseBody"
examples:
Processing failure successfully added:
summary: Processing failure successfully added
description: The processing failure was successfully added to the database.
value:
processingFailureId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/transactionitems/{transactionItemId}/transactionaudittrails:
parameters:
- in: path
name: transactionItemId
schema:
type: string
format: uuid
example: 9834b346-d68c-438d-9bd5-6716422c2657
required: true
description: The id of the transaction item to process.
post:
summary: Add an audit trail entry.
description: Add an audit trail entry.
tags:
- Audit Trail v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TransactionAuditTrailsPostRequestBody"
examples:
Add new transaction audit trail for created transaction item:
summary: Add new transaction audit trail for created transaction item
description: Add a new audit trail record for a newly created transaction item.
value:
user: fiko
timestamp: 2022-01-01 12:34:00
action: create
status: created
description: Transaction item created.
correlationId: null
Add new transaction audit trail for updated transaction item:
summary: Add new transaction audit trail for updated transaction item
description: Add a new audit trail record for an updated transaction item.
value:
user: ad.vogelaar
timestamp: 2022-01-02 12:34:00
action: update
status: return to src
description: Transaction item returned to source.
correlationId: 0dc216ea-58e7-4a5e-aa18-449f0304209c
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/TransactionAuditTrailsPostResponseBody"
examples:
Transaction audit trail record created:
summary: Transaction audit trail record created
description: |
A new audit trail record for this transaction item was successfully created.
The transactionAuditTrailId is returned as a reference for the consumer.
value:
transactionAuditTrailId: 37a8095b-19db-498f-9349-5f37d21c5bdf
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/TransactionAuditTrail:
get:
summary: Find audit trail entries.
description: Find audit trail entries.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- transactionAuditTrailRowId
- transactionAuditTrailId
- transactionItemId
- user
- timestamp
- action
- status
- correlationId
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- transactionAuditTrailRowId
- transactionAuditTrailId
- transactionItemId
- user
- timestamp
- action
- status
- correlationId
- name: $expand
in: query
description: Expand related entities
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- TransactionItem
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TransactionAuditTrailsGetResponseBody"
examples:
No transaction item audit trails:
summary: No transaction audit trails were found
description: No transaction audit trails that match the search criteria were found.
value:
"@odata.context": "$metadata#TransactionAuditTrail"
value: []
List containing multiple transaction audit trails:
summary: List containing multiple transaction audit trails
description: List containing multiple transaction audit trails of different transaction items (no filters applied).
value:
"@odata.context": "$metadata#TransactionAuditTrail"
value:
- "@odata.etag": 0d22aa9e-2183-4f2d-aa5b-98c362683529
transactionAuditTrailRowId: 8218
transactionAuditTrailId: afce35b2-1dff-4ace-98d0-4b9ac405c87d
transactionItemId: d667d293-aa82-4c9e-9b10-77cffc9058a1
user: fiko
timestamp: 2025-01-01 12:34:51
action: create
status: created
description: Transaction created.
correlationId: null
- "@odata.etag": 1ce407d3-4725-46b8-92b2-47282ccd38f5
transactionAuditTrailRowId: 8219
transactionAuditTrailId: 1d234fc1-eb16-41d3-b2e0-e400e17b017f
transactionItemId: urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b
user: fiko
timestamp: 2025-01-01 12:34:50
action: create
status: created
description: Transaction created.
correlationId: null
- "@odata.etag": c8dec28b-bb85-4cb2-8a56-4a95fb2ed7bb
transactionAuditTrailRowId: 8220
transactionAuditTrailId: f4798a84-489d-4533-9dfe-42423c70f6b6
transactionItemId: e8891be1-1b8a-4a0f-91e2-6b523b6497dd
user: ad.vogelaar
timestamp: 2025-01-01 12:34:48
action: update
status: return to src
description: Transaction retunred to source.
correlationId: a3891560-3084-42cb-867c-f289e7cda47d
- "@odata.etag": 967ddfa0-835e-4954-a4af-2eb11de325dc
transactionAuditTrailRowId: 8221
transactionAuditTrailId: cc80d58d-6ee7-409a-8c14-b1f807e67c10
transactionItemId: 34ba3d7c-3ca1-4fa4-aa42-23d4c4fc767b
user: fiko
timestamp: 2025-01-01 12:34:47
action: update
status: failed
description: Validation XYZ failed.
correlationId: null
List containing multiple transaction audit trails of one transaction item:
summary: List containing multiple audit trails of one transaction item
description: List containing multiple audit trail records of one transaction item (with id `d667d293-aa82-4c9e-9b10-77cffc9058a1`).
value:
"@odata.context": "$metadata#TransactionAuditTrail"
value:
- "@odata.etag": 0d22aa9e-2183-4f2d-aa5b-98c362683529
transactionAuditTrailRowId: 8218
transactionAuditTrailId: d571ff7c-eaa5-428a-9bc3-5a0fa3e5ee2e
transactionItemId: d667d293-aa82-4c9e-9b10-77cffc9058a1
user: fiko
timestamp: 2025-01-07 12:34:59
action: update
status: re-entered
description: Transaction re-entered.
correlationId: null
- "@odata.etag": 1ce407d3-4725-46b8-92b2-47282ccd38f5
transactionAuditTrailRowId: 8219
transactionAuditTrailId: b2192e6c-ab79-4000-a04d-d8f4d574a82f
transactionItemId: d667d293-aa82-4c9e-9b10-77cffc9058a1
user: ad.vogelaar
timestamp: 2025-01-04 12:34:54
action: update
status: return to src
description: Transaction retunred to source.
correlationId: a3891560-3084-42cb-867c-f289e7cda47d
- "@odata.etag": c8dec28b-bb85-4cb2-8a56-4a95fb2ed7bb
transactionAuditTrailRowId: 8220
transactionAuditTrailId: 1d759985-7f1a-48bd-8dd1-efa30ce26423
transactionItemId: d667d293-aa82-4c9e-9b10-77cffc9058a1
user: fiko
timestamp: 2025-01-02 00:34:50
action: update
status: failed
description: Validation XYZ failed.
correlationId: null
- "@odata.etag": 967ddfa0-835e-4954-a4af-2eb11de325dc
transactionAuditTrailRowId: 8221
transactionAuditTrailId: afce35b2-1dff-4ace-98d0-4b9ac405c87d
transactionItemId: d667d293-aa82-4c9e-9b10-77cffc9058a1
user: fiko
timestamp: 2025-01-01 12:34:47
action: create
status: created
description: Transaction created.
correlationId: null
List containing multiple audit trails of different failed transactions:
summary: List containing multiple audit trails of different failed transactions
description: List containing multiple audit trails of different failed transactions (status = failed).
value:
"@odata.context": "$metadata#TransactionAuditTrail"
value:
- "@odata.etag": 0d22aa9e-2183-4f2d-aa5b-98c362683529
transactionAuditTrailRowId: 8218
transactionAuditTrailId: afce35b2-1dff-4ace-98d0-4b9ac405c87d
transactionItemId: d667d293-aa82-4c9e-9b10-77cffc9058a1
user: fiko
timestamp: 2025-01-01 00:34:51
action: update
status: failed
description: Validation XYZ failed.
correlationId: null
- "@odata.etag": 1ce407d3-4725-46b8-92b2-47282ccd38f5
transactionAuditTrailRowId: 8219
transactionAuditTrailId: 1d234fc1-eb16-41d3-b2e0-e400e17b017f
transactionItemId: urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b
user: fiko
timestamp: 2025-01-01 00:34:50
action: update
status: failed
description: Validation XYZ failed.
correlationId: null
- "@odata.etag": c8dec28b-bb85-4cb2-8a56-4a95fb2ed7bb
transactionAuditTrailRowId: 8220
transactionAuditTrailId: f4798a84-489d-4533-9dfe-42423c70f6b6
transactionItemId: e8891be1-1b8a-4a0f-91e2-6b523b6497dd
user: fiko
timestamp: 2025-01-01 00:34:48
action: update
status: failed
description: Validation XYZ failed.
correlationId: null
- "@odata.etag": 967ddfa0-835e-4954-a4af-2eb11de325dc
transactionAuditTrailRowId: 8221
transactionAuditTrailId: cc80d58d-6ee7-409a-8c14-b1f807e67c10
transactionItemId: 34ba3d7c-3ca1-4fa4-aa42-23d4c4fc767b
user: fiko
timestamp: 2025-01-01 00:34:47
action: update
status: failed
description: Validation XYZ failed.
correlationId: null
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/ProcessingFailure:
get:
summary: Find processing failures.
description: Find processing failures.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- processingFailureRowId
- processingFailureId
- transactionItemId
- timestamp
- element
- value
- reasonCode
- reasonDescription
- resolved
- change
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- processingFailureRowId
- processingFailureId
- transactionItemId
- timestamp
- element
- value
- reasonCode
- reasonDescription
- resolved
- change
- name: $expand
in: query
description: Expand related entities
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- TransactionItem
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ProcessingFailuresGetResponseBody"
examples:
No processing failures were found:
summary: No processing failures were found
description: No processing failures were found (for example for a single transaction item).
value:
"@odata.context": "$metadata#ProcessingFailure"
value: []
Multiple processing failures for a single transaction item:
summary: Multiple processing failures for a single transaction item
description: |
In this example multiple processing failures were found for a single transaction item.
This example shows how a single transaction items has failed validation two times, in which the
the first failure has two validation errors, which have been resolved, and the second failure
hasn't been. Which makes three processing failures total.
value:
"@odata.context": "$metadata#ProcessingFailure"
value:
- "@odata.etag": 0d22aa9e-2183-4f2d-aa5b-98c362683529
processingFailureRowId: 9
processingFailureId: 37a8095b-19db-498f-9349-5f37d21c5bdf
transactionItemId: 2d77d978-7141-499a-84ad-93fad8ee03ce
timestamp: 2022-01-01 00:00:00
element: costType
value: 901
reasonCode: "004"
reasonDescription: Cost type does not exist.
resolved: false
change: null
- "@odata.etag": ff49829d-a5de-4c1a-b331-15fd9c71dfe9
processingFailureRowId: 10
processingFailureId: ccc06dc9-956d-47d8-bde7-9644ddde2193
transactionItemId: 2d77d978-7141-499a-84ad-93fad8ee03ce
timestamp: 2025-01-01 00:43:01
element: costCenter
value: 84955
reasonCode: "002"
reasonDescription: Cost center does not exist.
resolved: true
change: Adapt config
- "@odata.etag": 5d5d3351-d3f1-49b2-905f-4dbbe1cc30e3
processingFailureRowId: 11
processingFailureId: 96bf8d44-0030-4509-b24e-2d62299779c5
transactionItemId: 2d77d978-7141-499a-84ad-93fad8ee03ce
timestamp: 2025-01-01 00:43:01
element: department
value: 1337
reasonCode: "001"
reasonDescription: Department does not exist.
resolved: true
change: Adapt config
List of unfiltered processing failures:
summary: List of unfiltered processing failures
description: |
In this example there is a list of processing failures where no filters have been applied.
This results in a list of all processing failures, for different transaction items.
value:
"@odata.context": "$metadata#ProcessingFailure"
value:
- "@odata.etag": 0d22aa9e-2183-4f2d-aa5b-98c362683529
processingFailureRowId: 9
processingFailureId: 1d0f237e-5fbe-4107-8bdf-a41f43307ac0
transactionItemId: d0425652-07a3-4b95-bb37-8bb15ea1b9b5
timestamp: 2022-01-01 00:00:00
element: occuredOn
value: 2027-01-01
reasonCode: "009"
reasonDescription: Transaction date is in the future
resolved: false
change: null
- "@odata.etag": 584d3a8a-48bc-45f9-99be-8dd70399e6e4
processingFailureRowId: 10
processingFailureId: 76aa82e1-a10f-4664-a84f-1f30d60884b3
transactionItemId: 3f0a8a74-c642-441e-a187-d32fedb77fdf
timestamp: 2025-01-01 00:43:01
element: costCenter
value: 84955
reasonCode: "002"
reasonDescription: Cost center does not exist.
resolved: false
change: null
- "@odata.etag": df4ade9b-1bda-4d91-a5ba-4dbe067568a0
processingFailureRowId: 11
processingFailureId: 25d2dd6f-ae17-44a7-b7a5-43eaf6de78e1
transactionItemId: 446ad396-41f6-4c1f-942c-a131e620075d
timestamp: 2025-01-01 00:43:01
element: department
value: 1337
reasonCode: "001"
reasonDescription: Department does not exist.
resolved: false
change: null
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/processingfailures/{processingFailureId}:
parameters:
- in: path
name: processingFailureId
schema:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required: true
description: The id of the processing failure.
patch:
summary: Update processing failure.
description: Update processing failure.
tags:
- Failures v2.2
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/ProcessingFailuresPatchRequestBody"
examples:
Resolve an existing processing failure:
summary: Resolve an existing processing failure
description: |
In this example, the processing failure with the id `37a8095b-19db-498f-9349-5f37d21c5bdf`
has been resolved by chaning the config.
value:
resolved: true
change: Adapt config
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ProcessingFailuresPatchResponseBody"
examples:
Processing failure updated successfully:
summary: Processing failure updated successfully
description: The processing failure has been updated successfully.
value:
processingFailureId: 37a8095b-19db-498f-9349-5f37d21c5bdf
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/BookingProcess:
get:
summary: Find booking processes.
description: Find booking processes.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- bookingProcessRowId
- bookingProcessId
- name
- transactionType
- identifyingFieldName
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- bookingProcessRowId
- bookingProcessId
- name
- transactionType
- identifyingFieldName
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/BookingProcessesGetResponseBody"
examples:
List containing all booking processes:
summary: List containing all booking processes
description: Returns a list containing all booking processes (no filters applied).
value:
"@odata.context": "$metadata#BookingProcess"
value:
- "@odata.etag": df4ade9b-1bda-4d91-a5ba-4dbe067568a0
bookingProcessRowId: 10
bookingProcessId: 37a8095b-19db-498f-9349-5f37d21c5bdf
name: Verkooptransacties
transactionType: sales
identifyingFieldName: articleNumber
- "@odata.etag": 97c65a01-f5ac-4081-b731-137622c4630d
bookingProcessRowId: 11
bookingProcessId: 03105285-3c4c-477a-821c-0fae801d9d26
name: Inkooptransacties
transactionType: purchase
identifyingFieldName: null
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/bookingprocesses:
post:
summary: Add a booking process.
description: Add a booking process.
tags:
- Booking Processes v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/BookingProcessesPostRequestBody"
examples:
Add a new booking process:
summary: Add a new booking process
description: |
This example shows how a new booking process for purchase orders can be added.
value:
name: Inkooptransacties
transactionType: purchase
identifyingFieldName: articleNumber
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/BookingProcessesPostResponseBody"
examples:
New booking process added successfully:
summary: New booking process added successfully
description: The new booking process was successfully added to the database.
value:
bookingProcessId: 03105285-3c4c-477a-821c-0fae801d9d26
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/bookingprocesses/{bookingProcessId}:
parameters:
- in: path
name: bookingProcessId
schema:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required: true
description: The id of the booking process.
patch:
summary: Update a booking process.
description: Update a booking process.
tags:
- Booking Processes v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/BookingProcessesPatchRequestBody"
examples:
Update a booking process:
summary: Update a booking process
description: |
This example shows how a booking process can be updated.
value:
name: Verkooptransacties
transactionType: sales
identifyingFieldName: orderNumber
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/BookingProcessesPatchResponseBody"
examples:
Booking process successfully updated:
summary: Booking process successfully updated
description: The booking process was successfully updated in the database.
value:
bookingProcessId: 37a8095b-19db-498f-9349-5f37d21c5bdf
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/bookingprocesses/{bookingProcessId}/bookingmetadata:
parameters:
- in: path
name: bookingProcessId
schema:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required: true
description: The id of the booking process.
post:
summary: Add booking metadata.
description: Add booking metadata.
tags:
- Booking Processes v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/BookingMetadataPostRequestBody"
examples:
Add a new booking metadata:
summary: Add a new booking metadata
description: |
This example shows how a new booking metadata for a booking process can be added.
value:
name: Saldoreizen
description: Saldoreizen nov. 2024
documentCode: OPBR-FIKO
hasSeparateTaxLine: true
hasLinePerIdentifyingField: false
hasLinePerSource: true
hasLinePerConcession: true
validFrom: 2024-03-22T09:00:00
validUntil: null
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/BookingMetadataPostResponseBody"
examples:
New booking metadata added successfully:
summary: New booking metadata added successfully
description: The new booking metadata was successfully added to the database.
value:
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/BookingMetadata:
get:
summary: Find booking metadata.
description: Find booking metadata.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- bookingMetadataRowId
- bookingMetadataId
- bookingProcessId
- name
- description
- documentCode
- hasSeparateTaxLine
- hasLinePerIdentifyingField
- hasLinePerSource
- hasLinePerConcession
- validFrom
- validUntil
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- bookingMetadataRowId
- bookingMetadataId
- bookingProcessId
- name
- description
- documentCode
- hasSeparateTaxLine
- hasLinePerIdentifyingField
- hasLinePerSource
- hasLinePerConcession
- validFrom
- validUntil
- name: $expand
in: query
description: Expand related entities
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- BookingProcess
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/BookingMetadataGetResponseBody"
examples:
List containing all booking metadata:
summary: List containing all booking metadata
description: Returns a list containing all booking metadata (no filters applied).
value:
"@odata.context": "$metadata#BookingMetadata"
value:
- "@odata.etag": 6962e56b-c7dd-3336-9627-6687f007ee07
bookingMetadataRowId: 13
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
bookingProcessId: 37a8095b-19db-498f-9349-5f37d21c5bdf
name: Dagkaarten
description: Dagkaarten nov. 2024
documentCode: OPBR-FIKO
hasSeparateTaxLine: true
hasLinePerIdentifyingField: true
hasLinePerSource: true
hasLinePerConcession: true
validFrom: 2022-01-01 00:00:00
validUntil: null
- "@odata.etag": 2fc41131-e875-4365-b4b4-f5babc7349b1
bookingMetadataRowId: 14
bookingMetadataId: bd290c3f-4a27-4898-911e-1aadacc4a034
bookingProcessId: 37a8095b-19db-498f-9349-5f37d21c5bdf
name: Saldoreizen
description: Saldoreizen nov. 2024
documentCode: OPBR-FIKO
hasSeparateTaxLine: true
hasLinePerIdentifyingField: true
hasLinePerSource: true
hasLinePerConcession: true
validFrom: 2022-01-01 00:00:00
validUntil: null
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/bookingmetadata/{bookingMetadataId}:
parameters:
- in: path
name: bookingMetadataId
schema:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required: true
description: The id of the booking metadata.
patch:
summary: Update booking metadata.
description: Update booking metadata.
tags:
- Booking Processes v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/BookingMetadataPatchRequestBody"
examples:
Update booking metadata:
summary: Update booking metadata
description: |
In this example the booking metadata is updated. All fields are updated.
value:
name: Dagkaarten
description: Dagkaarten nov. 2024
documentCode: OPBR-FIKO
hasSeparateTaxLine: true
hasLinePerIdentifyingField: true
hasLinePerSource: true
hasLinePerConcession: true
validFrom: 2022-01-01 00:00:00
validUntil: 2024-03-22T09:00:00
Update valid until:
summary: Update valid until
description: |
In this example the booking metadata is updated. The validUntil field is updated to 2024-03-22T09:00:00.
value:
validUntil: 2024-03-22T09:00:00
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/BookingMetadataPatchResponseBody"
examples:
Booking metadata updated successfully:
summary: Booking metadata updated successfully
description: The booking metadata was successfully updated in the database.
value:
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
delete:
summary: Delete booking metadata.
description: |
Delete booking metadata. Note that booking metadata can only be deleted
if the validFrom is in the future.
tags:
- Booking Processes v2.2
responses:
"200":
description: OK
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/bookingmetadata/{bookingMetadataId}/bookinggroupfields:
parameters:
- in: path
name: bookingMetadataId
schema:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required: true
description: The id of the booking metadata.
post:
summary: Add booking group fields.
description: Add booking group fields.
tags:
- Booking Processes v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/BookingGroupFieldsPostRequestBody"
examples:
Add a new booking group field:
summary: Add a new booking group field
description: Add a new booking group field to an existing booking.
value:
identifyingFieldValue: 4135
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/BookingGroupFieldsPostResponseBody"
examples:
New booking group field added successfully:
summary: New booking group field added successfully
description: The new booking group field was successfully added to the database.
value:
bookingGroupFieldId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/bookingmetadata/{bookingMetadataId}/bookinglinemetadata:
parameters:
- in: path
name: bookingMetadataId
schema:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required: true
description: The id of the booking metadata.
post:
summary: Add booking line metadata.
description: Add booking line metadata.
tags:
- Booking Processes v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/BookingLineMetadataPostRequestBody"
examples:
Add a new tax booking line metadata:
summary: Add a new tax booking line metadata
description: In this example a new tax booking line metadata is added to an existing booking.
value:
name: Saldoreizen - BTW
description: BTW 9%
sourceMetadataId: null
identifyingFieldValue: null
concessionId: null
isContraAccount: false
lineType: tax
lineSense: credit
department: 140
costType: 15427
costCenter: null
articleName: null
extRef1: null
extRef2: null
extRef3: null
extRef4: null
extRef5: TLS
extRef6: null
Add a new yield booking line metadata:
summary: Add a new yield booking line metadata
description: In this example a new yield booking line metadata is added to an existing booking.
value:
name: Opbrengst Saldoreizen - RAIL
description: Saldoreizen nov. 2024
sourceMetadataId: null
identifyingFieldValue: null
concessionId: 1
isContraAccount: false
lineType: analysis
lineSense: credit
department: 900
costType: 84956
costCenter: 603031
articleName: Saldoreizen
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: TLS
extRef6: null
Add a new contra account booking line metadata:
summary: Add a new contra account booking line metadata
description: In this example a new contra account booking line metadata is added to an existing booking.
value:
name: Tegenrekening productverkopen
description: ST20 produktverkopen nov 2024
sourceMetadataId: null
identifyingFieldValue: null
concessionId: null
isContraAccount: true
lineType: analysis
lineSense: debet
department: 140
costType: 15427
costCenter: null
articleName: null
extRef1: null
extRef2: null
extRef3: null
extRef4: null
extRef5: null
extRef6: null
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/BookingLineMetadataPostResponseBody"
examples:
New booking line metadata added successfully:
summary: New booking line metadata added successfully
description: The new booking line metadata was successfully added to the database.
value:
bookingLineMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/BookingGroupField:
get:
summary: Find booking group fields.
description: Find booking group fields.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- bookingGroupFieldRowId
- bookingGroupFieldId
- bookingMetadataId
- identifyingFieldValue
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- bookingGroupFieldRowId
- bookingGroupFieldId
- bookingMetadataId
- identifyingFieldValue
- name: $expand
in: query
description: Expand related entities
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- BookingMetadata
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/BookingGroupFieldsGetResponseBody"
examples:
List containing all booking group fields:
summary: List containing all booking group fields
description: Returns a list containing all booking group fields for all booking metadata (no filters applied).
value:
"@odata.context": "$metadata#BookingGroupField"
value:
- "@odata.etag": 2e52e353-bf49-4296-8dc3-bd5e6096be4e
bookingGroupFieldRowId: 8
bookingGroupFieldId: b34d0fc2-96fc-409b-93b6-ae51fb8c694a
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 1737
- "@odata.etag": 3f285dc2-6ae3-4613-a759-68fada2afcdf
bookingGroupFieldRowId: 9
bookingGroupFieldId: 3b9005f4-42c4-4e2b-b472-ba7d0926fe77
bookingMetadataId: bd290c3f-4a27-4898-911e-1aadacc4a034
identifyingFieldValue: 1748
- "@odata.etag": f6f303f9-6685-44be-9c44-aec14a59e461
bookingGroupFieldRowId: 10
bookingGroupFieldId: ae773282-ac9b-4a0b-a487-b4061ea2a42f
bookingMetadataId: bd290c3f-4a27-4898-911e-1aadacc4a034
identifyingFieldValue: 1750
- "@odata.etag": 39d5bf02-0ac3-47a2-8ba4-e00a18108e98
bookingGroupFieldRowId: 11
bookingGroupFieldId: fe1aca8c-3ef5-4e15-962b-202d28d3d761
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 1757
List containing all booking group fields for a single booking:
summary: List containing all booking group fields for a single booking
description: |
Returns a list containing all booking group fields for a single booking booking metadata 'Dagkaart'
(identified by the same bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617).
value:
"@odata.context": "$metadata#BookingGroupField"
value:
- "@odata.etag": 2e52e353-bf49-4296-8dc3-bd5e6096be4e
bookingGroupFieldRowId: 8
bookingGroupFieldId: b34d0fc2-96fc-409b-93b6-ae51fb8c694a
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 1737
- "@odata.etag": d269b9e9-2f8e-4c3d-9874-599d2e7553aa
bookingGroupFieldRowId: 9
bookingGroupFieldId: fe1aca8c-3ef5-4e15-962b-202d28d3d761
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 1757
- "@odata.etag": 8110f2ee-a37a-4e56-a3d8-5ae113675923
bookingGroupFieldRowId: 10
bookingGroupFieldId: fede01e0-86c5-47d0-9466-3093132148e5
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 4031
- "@odata.etag": 89e9ef54-138a-479d-a4ce-5e01d3f8bb14
bookingGroupFieldRowId: 11
bookingGroupFieldId: d7c25182-b64e-4e47-8998-19ddb65b8f2c
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 4032
- "@odata.etag": ab2242f7-b891-40fe-86c0-34e0f4453316
bookingGroupFieldRowId: 12
bookingGroupFieldId: ea02d3eb-29e6-42fd-b7eb-dfbfd2231090
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 4033
- "@odata.etag": 9244dd72-fcc0-4578-97cc-9dcc55429eb4
bookingGroupFieldRowId: 13
bookingGroupFieldId: a73407a6-ff8c-4924-a7ac-5cd605e1793c
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 4034
- "@odata.etag": 057281d9-65ef-46b9-b7d3-efee2968a438
bookingGroupFieldRowId: 14
bookingGroupFieldId: d9af4bf1-4e85-4eb6-ae5d-d2020b18d63c
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 4051
- "@odata.etag": 95e91fe2-e990-4b9e-a146-b44142d66b90
bookingGroupFieldRowId: 15
bookingGroupFieldId: c1ba494b-249a-475b-a542-19918aa36778
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 4053
- "@odata.etag": c346c96d-acac-4e2b-a652-219983fc5bca
bookingGroupFieldRowId: 16
bookingGroupFieldId: 69be1be0-c600-492d-aec1-8490409371da
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 4054
- "@odata.etag": 39635b84-551e-4927-9787-28f6868d3b18
bookingGroupFieldRowId: 17
bookingGroupFieldId: d7d00ec1-6d53-44e9-bcd8-01f6a523f771
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
identifyingFieldValue: 4055
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/bookinggroupfields/{bookingGroupFieldId}:
parameters:
- in: path
name: bookingGroupFieldId
schema:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required: true
description: The id of the booking group field.
delete:
summary: Delete booking group field.
description: Delete booking group field.
tags:
- Booking Processes v2.2
responses:
"200":
description: OK
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/BookingLineMetadata:
get:
summary: Find booking line metadata.
description: Find booking line metadata.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- bookingLineMetadataRowId
- bookingLineMetadataId
- bookingMetadataId
- name
- description
- sourceMetadataId
- identifyingFieldValue
- concessionId
- isContraAccount
- lineType
- lineSense
- department
- costType
- costCenter
- articleName
- extRef1
- extRef2
- extRef3
- extRef4
- extRef5
- extRef6
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- bookingLineMetadataRowId
- bookingLineMetadataId
- bookingMetadataId
- name
- description
- sourceMetadataId
- identifyingFieldValue
- concessionId
- isContraAccount
- lineType
- lineSense
- department
- costType
- costCenter
- articleName
- extRef1
- extRef2
- extRef3
- extRef4
- extRef5
- extRef6
- name: $expand
in: query
description: Expand related entities
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- BookingMetadata
- SourceMetadata
- Concession
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/BookingLineMetadataGetResponseBody"
examples:
List containing two different booking lines:
summary: List containing two different booking lines
description: List containing two different booking line metadata records, for two different booking processes (no filters applied).
value:
"@odata.context": "$metadata#BookingLineMetadata"
value:
- "@odata.etag": 511fb29c-47d6-4af9-bc54-cbbf3de27dae
bookingLineMetadataRowId: 10
bookingLineMetadataId: 98dccb4c-f24f-4acd-a036-f4b465124842
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
name: Webshop - Dagkaart - BUS
description: Dagkaarten nov. 2024 BUS
sourceMetadataId: 2c55f374-8ef8-4615-bc0a-5c92184ff4b2
identifyingFieldValue: null
concessionId: 2
isContraAccount: false
lineType: summary
lineSense: credit
department: 900
costType: 84956
costCenter: 603031
articleName: dagkaart
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: Webshop
extRef6: null
- "@odata.etag": 42b91a85-0771-4cde-92ff-fe4a42bb6cf7
bookingLineMetadataRowId: 11
bookingLineMetadataId: 1bca01db-40d3-4447-9f28-41475ec6877d
bookingMetadataId: bd290c3f-4a27-4898-911e-1aadacc4a034
name: TLS - Saldoreizen - RAIL
description: Saldoreizen nov. 2024 RAIL
sourceMetadataId: 4dab350d-a47c-4cc0-80e8-404e099f5c24
identifyingFieldValue: null
concessionId: 1
isContraAccount: false
lineType: summary
lineSense: credit
department: 900
costType: 84955
costCenter: 603007
articleName: Opbrengst TLS
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: TLS
extRef6: null
List containing booking line metadata of one booking:
summary: List containing booking line metadata of one booking
description: |
Returns a list containing all booking line metadata a single booking.
This example contains all the booking lines for a 'Dagkaart' booking
(bookingMetadataId: "6ce10520-9a73-4cb4-b8dd-39ee46ceb617").
value:
"@odata.context": "$metadata#BookingLineMetadata"
value:
- "@odata.etag": 42b91a85-0771-4cde-92ff-fe4a42bb6cf7
bookingLineMetadataRowId: 11
bookingLineMetadataId: 98dccb4c-f24f-4acd-a036-f4b465124842
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
name: Webshop - Dagkaart - BUS
description: Dagkaarten nov. 2024 BUS
sourceMetadataId: 2c55f374-8ef8-4615-bc0a-5c92184ff4b2
identifyingFieldValue: null
concessionId: 2
isContraAccount: false
lineType: summary
lineSense: credit
department: 900
costType: 84956
costCenter: 619031
articleName: dagkaart
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: Webshop
extRef6: null
- "@odata.etag": 8513d1aa-5cba-4765-81ca-56ca1272cc05
bookingLineMetadataRowId: 12
bookingLineMetadataId: a4464b5c-9a8e-4e48-a0a0-5500b1ca0885
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
name: Webshop - Dagkaart - RAIL
description: Dagkaarten nov. 2024 RAIL
sourceMetadataId: 2c55f374-8ef8-4615-bc0a-5c92184ff4b2
identifyingFieldValue: null
concessionId: 1
lineType: summary
lineSense: credit
department: 900
costType: 84956
costCenter: 603031
articleName: dagkaart
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: Webshop
extRef6: null
- "@odata.etag": 63e1c54d-7c6b-4b77-ab7f-86a5e9ce9e53
bookingLineMetadataRowId: 13
bookingLineMetadataId: feaa7b33-ba49-40a2-90f3-5dd70d591f17
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
name: Ticketapp - Dagkaart - BUS
description: Dagkaarten nov. 2024 BUS
sourceMetadataId: 2c55f374-8ef8-4615-bc0a-5c92184ff4b2
identifyingFieldValue: null
concessionId: 2
isContraAccount: false
lineType: summary
lineSense: credit
department: 900
costType: 84956
costCenter: 619031
articleName: dagkaart
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: Webshop
extRef6: null
- "@odata.etag": 576446b0-b3c4-4a63-bff4-939d44104572
bookingLineMetadataRowId: 14
bookingLineMetadataId: ea6ce4e7-4d52-4b89-bbea-ffe0ef6c48ff
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
name: Ticketapp - Dagkaart - RAIL
description: Dagkaarten nov. 2024 RAIL
sourceMetadataId: 2c55f374-8ef8-4615-bc0a-5c92184ff4b2
identifyingFieldValue: null
concessionId: 1
isContraAccount: false
lineType: summary
lineSense: credit
department: 900
costType: 84956
costCenter: 603031
articleName: dagkaart
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: Webshop
extRef6: null
- "@odata.etag": cbd3968b-8e73-4c43-847b-a680e43e67cb
bookingLineMetadataRowId: 15
bookingLineMetadataId: 0a8dbb7d-73c8-451e-9028-e4613283c7bd
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
name: Dagkaart - BTW
description: BTW 9%
sourceMetadataId: null
identifyingFieldValue: null
concessionId: null
isContraAccount: false
lineType: tax
lineSense: credit
department: 140
costType: 15427
costCenter: null
articleName: dagkaart
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: null
extRef6: null
- "@odata.etag": 26c89ff7-2fc3-4cc5-ae80-7e1e90886148
bookingLineMetadataRowId: 16
bookingLineMetadataId: d8c8b3b8-e996-463e-9c32-f0878ebfbcbb
bookingMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
name: Dagkaart - Tegenrekening
description: ST20 produktverkopen nov 2024
sourceMetadataId: null
identifyingFieldValue: null
concessionId: null
isContraAccount: true
lineType: analysis
lineSense: credit
department: 220
costType: 10486
costCenter: null
articleName: null
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: null
extRef6: null
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/bookinglinemetadata/{bookingLineMetadataId}:
parameters:
- in: path
name: bookingLineMetadataId
schema:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required: true
description: The id of the booking line metadata.
patch:
summary: Update booking line metadata.
description: Update booking line metadata.
tags:
- Booking Processes v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/BookingLineMetadataPatchRequestBody"
examples:
Update a booking line:
summary: Update a booking line
description: |
In this example an existing booking line metadata is updated.
value:
name: Ticketapp - Dagkaart - RAIL
description: Dagkaarten nov. 2024 RAIL
sourceMetadataId: 8cddd157-c9ea-4027-9e8b-f1c5201440f1
identifyingFieldValue: null
concessionId: 1
isContraAccount: false
lineType: summary
lineSense: credit
department: 900
costType: 84956
costCenter: 603031
articleName: dagkaart
extRef1: null
extRef2: null
extRef3: 2025-02-17
extRef4: null
extRef5: Webshop
extRef6: null
Update cost center of a booking line:
summary: Update cost center of a booking line
description: |
In this example the cost center of an existing booking line metadata is updated.
value:
costCenter: 84957
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/BookingLineMetadataPatchResponseBody"
examples:
Booking line metadata updated successfully:
summary: Booking line metadata updated successfully
description: The booking line metadata was successfully updated in the database.
value:
bookingLineMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
delete:
summary: Delete booking line metadata.
description: Delete booking line metadata.
tags:
- Booking Processes v2.2
responses:
"200":
description: OK
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/TaxMetadata:
get:
summary: Find tax metadata.
description: Find tax metadata.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- taxMetadataRowId
- taxMetadataId
- taxCode
- taxPercentage
- description
- weFactTaxCode
- validFrom
- validUntil
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- taxMetadataRowId
- taxMetadataId
- taxCode
- taxPercentage
- description
- validFrom
- validUntil
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TaxMetadataGetResponseBody"
examples:
List containing all tax metadata:
summary: List containing all tax metadata
description: Returns a list containing all tax metadata (no filters applied).
value:
"@odata.context": "$metadata#TaxMetadata"
value:
- "@odata.etag": 4a758689-c28f-47d1-a230-e5422e9ad3be
taxMetadataRowId: 13
taxMetadataId: 2d444740-4131-4169-bb47-2d125641dc87
taxCode: V00
taxPercentage: 0
description: BTW VERKOOP NUL
weFactTaxCode: V0
validFrom: 2024-03-22T09:00:00
validUntil: null
- "@odata.etag": f848cce9-7fbe-4371-a70c-085fefe4613e
taxMetadataRowId: 14
taxMetadataId: b5f879d1-043d-4357-9655-2eeca8ebe9bf
taxCode: V09
taxPercentage: 9
description: BTW VERKOOP LAAG 9%
weFactTaxCode: V9
validFrom: 2024-03-22T09:00:00
validUntil: null
- "@odata.etag": db06ae45-710d-4a4b-958b-cba61a8ba027
taxMetadataRowId: 15
taxMetadataId: 62e1abe7-d76f-4364-9207-591c0601ba55
taxCode: V21
taxPercentage: 21
description: BTW VERKOOP HOOG 21%
weFactTaxCode: V21
validFrom: 2024-03-22T09:00:00
validUntil: null
- "@odata.etag": 3bc97433-06f8-431c-b931-f5e33641bf88
taxMetadataRowId: 16
taxMetadataId: 9a253fc3-e562-4c4a-925c-d9caf0dcc549
taxCode: I00
taxPercentage: 0
description: BTW DEBIT NUL
weFactTaxCode: I0
validFrom: 2024-03-22T09:00:00
validUntil: null
- "@odata.etag": 2262ab02-57a8-4425-a823-88d3c8d956bf
taxMetadataRowId: 17
taxMetadataId: 6243b848-5ca3-44e0-9860-4fb3a817f148
taxCode: I09
taxPercentage: 9
description: BTW DEBIT laag 9%
weFactTaxCode: I9
validFrom: 2024-03-22T09:00:00
validUntil: null
- "@odata.etag": 261794fa-11fa-47a2-9429-1e671638cb9d
taxMetadataRowId: 18
taxMetadataId: 0240d6e4-6037-4da0-ac10-1fde0229d439
taxCode: I21
taxPercentage: 21
description: BTW DEBIT hoog 21%
weFactTaxCode: I21
validFrom: 2024-03-22T09:00:00
validUntil: null
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/taxmetadata:
post:
summary: Add tax metadata.
description: Add tax metadata.
tags:
- Metadata v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TaxMetadataPostRequestBody"
examples:
Add new tax metadata:
summary: Add new tax metadata
description: This example adds a new tax metadata record to the database.
value:
taxCode: V21.4
taxPercentage: 21.4
description: BTW VERKOOP HOOG 21.4%
weFactTaxCode: V21.4
validFrom: 2025-03-22T09:00:00
validUntil: null
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/TaxMetadataPostResponseBody"
examples:
Tax metadata created successfully:
summary: Tax metadata created successfully
description: The tax metadata was successfully added to the database.
value:
taxMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/taxmetadata/{taxMetadataId}:
parameters:
- in: path
name: taxMetadataId
schema:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required: true
description: The id of the tax metadata.
patch:
summary: Update tax metadata.
description: Update tax metadata.
tags:
- Metadata v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TaxMetadataPatchRequestBody"
examples:
Update tax metadata:
summary: Update tax metadata
description: In this example the tax metadata is updated.
value:
taxCode: V09
taxPercentage: 9
description: BTW VERKOOP LAAG 9%
weFactTaxCode: V9
validFrom: 2024-03-22T09:00:00
validUntil: 2025-03-22T09:00:00
Update tax metadata validity:
summary: Update tax metadata validity
description: In this example the validity of a tax metadata is updated. The validUntil field is updated to 2025-03-22T09:00:00.
value:
validUntil: 2025-03-22T09:00:00
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/TaxMetadataPatchResponseBody"
examples:
Tax metadata updated successfully:
summary: Tax metadata updated successfully
description: The tax metadata was successfully updated in the database.
value:
taxMetadataId: 7c3a5b0f-b89e-4f02-8b09-d11c5a050a07
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
delete:
summary: Delete tax metadata.
description: |
Delete tax metadata. Note that tax metadata can only be deleted
if the validFrom is in the future.
tags:
- Metadata v2.2
responses:
"200":
description: OK
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/SourceMetadata:
get:
summary: Find source metadata.
description: Find source metadata.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- sourceMetadataRowId
- sourceMetadataId
- incomingName
- incomingEntity
- outgoingName
- businessOwner
- rejectionProcessing
- rejectionInfo
- validFrom
- validUntil
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- sourceMetadataRowId
- sourceMetadataId
- incomingName
- incomingEntity
- outgoingName
- businessOwner
- rejectionProcessing
- rejectionInfo
- validFrom
- validUntil
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/SourceMetadataGetResponseBody"
examples:
List containing all source metadata:
summary: List containing all source metadata
description: Returns a list containing all source metadata (no filters applied).
value:
"@odata.context": "$metadata#SourceMetadata"
value:
- "@odata.etag": 309ac952-12ad-4f13-a19d-f7443b8a1e93
sourceMetadataRowId: 2
sourceMetadataId: bc4ea24a-27a5-40e8-bbbc-57a105afaaa0
incomingName: HTM-web
incomingEntity: OrderLine
outgoingName: webshop
businessOwner: Koos Verweg
rejectionProcessing: system
rejectionInfo: api.htm.nl/v2/account/12345/msgs/abc
validFrom: 2025-01-01T00:00.000
validUntil: null
- "@odata.etag": 4b743da5-4195-4b2e-a11b-6e5393a94c0a
sourceMetadataRowId: 3
sourceMetadataId: c3a9ef01-06c6-4c05-8fc7-df825f676dfc
incomingName: HTM-app
incomingEntity: OrderLine
outgoingName: ticketapp
businessOwner: Danny Negen
rejectionProcessing: mail
rejectionInfo: d.negen@htm.nl
validFrom: 2025-01-01T00:00.000
validUntil: null
- "@odata.etag": 502e2f58-b4e1-4dd0-947a-db6eea726e3a
sourceMetadataRowId: 4
sourceMetadataId: 0b6e3e07-c4e0-42bf-86f2-9c9522b71209
incomingName: SMP
incomingEntity: OrderLine
outgoingName: balieverkoop
businessOwner: Guus Geluk
rejectionProcessing: mail
rejectionInfo: ao@htm.nl
validFrom: 2025-01-01T00:00.000
validUntil: null
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/sourcemetadata:
post:
summary: Add source metadata.
description: Add source metadata.
tags:
- Metadata v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/SourceMetadataPostRequestBody"
examples:
Add a new source to the metadata:
summary: Add a new source to the metadata
description: Add a new record to the source metadata in the database.
value:
incomingName: HTM-app
incomingEntity: OrderLine
outgoingName: ticketapp
businessOwner: Danny Negen
rejectionProcessing: mail
rejectionInfo: d.negen@htm.nl
validFrom: 2025-01-01T00:00.000
validUntil: null
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/SourceMetadataPostResponseBody"
examples:
Source metadata created successfully:
summary: Source metadata created successfully
description: The source metadata was successfully added to the database.
value:
sourceMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/sourcemetadata/{sourceMetadataId}:
parameters:
- in: path
name: sourceMetadataId
schema:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required: true
description: The id of the source metadata.
patch:
summary: Update source metadata.
description: Update source metadata.
tags:
- Metadata v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/SourceMetadataPatchRequestBody"
examples:
Update a source:
summary: Update a source
description: In this example we update a single source.
value:
incomingName: HTM-app
incomingEntity: OrderLine
outgoingName: ticketapp
businessOwner: Danny Negen
rejectionProcessing: mail
rejectionInfo: d.negen@htm.nl
validFrom: 2025-01-01T00:00.000
validUntil: 2025-01-31T23:59:59.999
Update a source validity:
summary: Update a source validity
description: In this example we update the validity of a single source.
value:
validUntil: 2025-01-31T23:59:59.999
Update a business owner of a source:
summary: Update a business owner of a source
description: In this example we update the business owner of a single source.
value:
businessOwner: Chef Erwin
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/SourceMetadataPatchResponseBody"
examples:
Source metadata updated successfully:
summary: Source metadata updated successfully
description: The source metadata was successfully updated in the database.
value:
sourceMetadataId: 37a8095b-19db-498f-9349-5f37d21c5bdf
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
delete:
summary: Delete source metadata.
description: |
Delete source metadata. Note that source metadata can only be deleted
if the validFrom is in the future.
tags:
- Metadata v2.2
responses:
"200":
description: OK
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/AccountingPeriodMetadata:
get:
summary: Find accounting period metadata.
description: Find accounting period metadata.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- accountingPeriodMetadataRowId
- accountingPeriodMetadataId
- accountingPeriod
- isOpen
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- accountingPeriodMetadataRowId
- accountingPeriodMetadataId
- accountingPeriod
- isOpen
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/AccountingPeriodMetadataGetResponseBody"
examples:
List containing all accounting period metadata:
summary: List containing all accounting period metadata
description: Returns a list containing all accounting period metadata (no filters applied).
value:
"@odata.context": "$metadata#AccountingPeriodMetadata"
value:
- "@odata.etag": 8f085711-eeae-44ed-bac1-06779bedb480
accountingPeriodMetadataRowId: 1
accountingPeriodMetadataId: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
accountingPeriod: 2025/01
isOpen: true
- "@odata.etag": 66c033af-fc67-4eb2-9d17-d74a0166470f
accountingPeriodMetadataRowId: 2
accountingPeriodMetadataId: 36a34bd8-2b84-4c89-87a4-22e809f6ed4a
accountingPeriod: 2024/12
isOpen: false
- "@odata.etag": fc1aa814-ede9-4f99-b09b-b969c8738003
accountingPeriodMetadataRowId: 3
accountingPeriodMetadataId: 33b4889b-0036-4870-87df-be43f9316cdf
accountingPeriod: 2024/11
isOpen: false
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/accountingperiodmetadata:
post:
summary: Add accounting period metadata.
description: Add accounting period metadata.
tags:
- Metadata v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AccountingPeriodMetadataPostRequestBody"
examples:
Add a new accounting period metadata:
summary: Add a new accounting period metadata
description: In this example we add a new accounting period metadata.
value:
accountingPeriod: 2025/03
isOpen: true
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/AccountingPeriodMetadataPostResponseBody"
examples:
Accounting period metadata created successfully:
summary: Accounting period metadata created successfully
description: The accounting period metadata was successfully added to the database.
value:
accountingPeriodMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/accountingperiodmetadata/{accountingPeriodMetadataId}:
parameters:
- in: path
name: accountingPeriodMetadataId
schema:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required: true
description: The id of the accounting period metadata.
patch:
summary: Update accounting period metadata.
description: Update accounting period metadata.
tags:
- Metadata v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AccountingPeriodMetadataPatchRequestBody"
examples:
Update an accounting period metadata:
summary: Update an accounting period metadata
description: In this example we close an existing accounting period in the metadata.
value:
isOpen: false
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/AccountingPeriodMetadataPatchResponseBody"
examples:
Accounting period metadata updated successfully:
summary: Accounting period metadata updated successfully
description: The accounting period metadata was successfully updated in the database.
value:
accountingPeriodMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/ConcessionMetadata:
get:
summary: Find concession metadata.
description: Find concession metadata.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- concessionMetadataRowId
- concessionMetadataId
- concessionId
- percentage
- validFrom
- validUntil
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- concessionMetadataRowId
- concessionMetadataId
- concessionId
- percentage
- validFrom
- validUntil
- name: $expand
in: query
description: Expand related entities
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- Concession
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ConcessionMetadataGetResponseBody"
examples:
List containing all concession metadata:
summary: List containing all concession metadata
description: Returns a list containing all concession metadata (no filters applied).
value:
"@odata.context": "$metadata#ConcessionMetadata"
value:
- "@odata.etag": 8a7c6124-574b-4725-9105-834924437087
concessionMetadataRowId: 14
concessionMetadataId: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
concessionId: 1
percentage: 84.021
validFrom: 2025-01-01T00:00:00.000
validUntil: null
- "@odata.etag": 90d4cf7b-86c8-4111-975b-af332b1507e5
concessionMetadataRowId: 15
concessionMetadataId: 39720be0-af88-486a-b5e2-faea7eb5b352
concessionId: 2
percentage: 15.979
validFrom: 2025-01-01T00:00:00.000
validUntil: null
- "@odata.etag": 08b684af-7fe5-44ee-ad99-dab0f57c42bb
concessionMetadataRowId: 16
concessionMetadataId: 274db383-96dd-410e-a07e-0b9e3040ac91
concessionId: 1
percentage: 83.021
validFrom: 2024-12-01T00:00:00.000
validUntil: 2024-12-31T23:59:59.999
- "@odata.etag": 640270c1-8dff-468e-9a5b-459e57b3ae13
concessionMetadataRowId: 17
concessionMetadataId: 03959bc5-83f2-4ac7-9bf5-67e0f2a6eace
concessionId: 2
percentage: 16.979
validFrom: 2024-12-01T00:00:00.000
validUntil: 2024-12-31T23:59:59.999
- "@odata.etag": a03c2a52-d65d-40c6-828b-18ce07df1d68
concessionMetadataRowId: 18
concessionMetadataId: d5b7d8f6-5cb8-482e-9d9a-68909dc7b5d3
concessionId: 1
percentage: 85.021
validFrom: 2024-11-01T00:00:00.000
validUntil: 2024-11-30T23:59:59.999
- "@odata.etag": 4eb2fbe7-8dca-4ac9-a59d-379d56611bb4
concessionMetadataRowId: 19
concessionMetadataId: 5ee5f86f-ab00-4630-b130-4714fd060d1a
concessionId: 2
percentage: 14.979
validFrom: 2024-11-01T00:00:00.000
validUntil: 2024-11-30T23:59:59.999
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/concessionmetadata:
post:
summary: Add concession metadata.
description: Add concession metadata.
tags:
- Metadata v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/ConcessionMetadataPostRequestBody"
examples:
Add a new concession distribution:
summary: Add a new concession distribution
description: |
Every month, the administrator determines the concession distribution for the next month.
In this example, a new concession distribution for RAIL is added to the metadata.
value:
concessionId: 1
percentage: 83.041
validFrom: 2025-03-01T00:00:00.000
validUntil: null
responses:
"201":
description: Created
content:
application/json:
schema:
$ref: "#/components/schemas/ConcessionMetadataPostResponseBody"
examples:
Concession metadata added succesfully:
summary: Concession metadata added succesfully
description: The new concession metadata was successfully added to the database.
value:
concessionMetadataId: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/concessionmetadata/{concessionMetadataId}:
parameters:
- in: path
name: concessionMetadataId
schema:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required: true
description: The id of the concession metadata.
patch:
summary: Update concession metadata.
description: Update concession metadata.
tags:
- Metadata v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/ConcessionMetadataPatchRequestBody"
examples:
Update a concession distribution:
summary: Update a concession distribution
description: |
In this example, the whole concession distribution is updated.
value:
concessionId: 1
percentage: 80.042
validFrom: 2025-02-01T00:00:00.000
validUntil: 2025-02-28T23:59:59.999
Update the validity of a concession distribution:
summary: Update the validity of a concession distribution
description: |
Every month, the administrator determines the concession distribution for the next month.
In this example, the concession distribution for last month gets an end date.
value:
validUntil: 2025-02-28T23:59:59.999
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ConcessionMetadataPatchResponseBody"
examples:
Concession metadata updated successfully:
summary: Concession metadata updated successfully
description: The concession metadata was successfully updated in the database.
value:
concessionMetadataId: 37a8095b-19db-498f-9349-5f37d21c5bdf
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
delete:
summary: Delete concession metadata.
description: |
Delete concession metadata. Note that concession metadata can only be deleted
if the validFrom is in the future.
tags:
- Metadata v2.2
responses:
"200":
description: OK
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/Odata/Concession:
get:
summary: Find concessions.
description: Find concessions.
tags:
- Odata
parameters:
- $ref: "#/components/parameters/top"
- $ref: "#/components/parameters/skip"
- $ref: "#/components/parameters/filter"
- $ref: "#/components/parameters/count"
- name: $orderby
in: query
description: Order items by property values
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- concessionMetadataRowId
- concessionMetadataId
- concessionId
- percentage
- validFrom
- validUntil
- name: $select
in: query
description: Select properties to be returned
required: false
style: form
explode: false
schema:
uniqueItems: true
type: array
items:
type: string
enum:
- concessionMetadataRowId
- concessionMetadataId
- concessionId
- percentage
- validFrom
- validUntil
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ConcessionsGetResponseBody"
examples:
List containing all concessions:
summary: List containing all concessions
description: Returns a list containing all concessions (no filters applied).
value:
"@odata.context": "$metadata#Concession"
value:
- "@odata.etag": 6962e56b-c7dd-3336-9627-6687f007ee07
concessionRowId: 1
concessionId: 1
name: RAIL
- "@odata.etag": b4eb7b82-9ecb-424f-a3e3-c532f0b763a4
concessionRowId: 2
concessionId: 2
name: BUS
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/transactionitems/bulk:
patch:
summary: Patch transaction items in bulk.
description: Patch transaction items in bulk.
tags:
- Bulk processing v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TransactionItemsBulkRequestBody"
examples:
List of transactions items to reject:
summary: List of transaction items to reject to source
description: List of transaction items to reject to source in bulk.
value:
transactionItems:
- transactionItemId: d8ee7035-fa3d-400e-9ad5-4fe8c4c73eb7
status: returned to src
aggregationReference: null
accountingSystemReference: null
- transactionItemId: 88910e83-4b1e-4fde-ab13-bd8bb60cbcd3
status: returned to src
aggregationReference: null
accountingSystemReference: null
List of transactions items to return:
summary: List of transaction items to return to transaction database
description: List of transaction items to return to transaction database in bulk.
value:
transactionItems:
- transactionItemId: eacb9bdc-c6b5-4277-942b-cebb102944f5
status: returned to trx-db
aggregationReference: null
accountingSystemReference: null
- transactionItemId: 2f361bfb-9df0-4e0f-af7c-7b9be3e7bc61
status: returned to trx-db
aggregationReference: null
accountingSystemReference: null
responses:
"202":
description: Accepted
content:
application/json:
schema:
$ref: "#/components/schemas/BulkResponseBody"
examples:
Array of transaction items accepted:
summary: Array of transaction items accepted
description: |
The array of transaction items was accepted successfully.
The transaction items will be processed asynchronously.
In the response body the consumer will find information on how to retrieve the processing status.
value:
startTime: 2025-02-14T05:32:47.0672237Z
status: Running
clientTrackingId: 08584620957189579629541919368CU00
callbackurl: https://api.integratielaag.nl/transactionitems/bulk/responsestatus/webhooks/workflow/scaleUnits/prod-00/workflows/6fd466916c
retryAfter: 10
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/transactionitems/bulk/responsestatus/{clientTrackingId}:
get:
tags:
- Bulk processing v2.2
summary: Get the status of the transaction item bulk patch.
description: Get the status of the asynchronous transaction item bulk patch.
parameters:
- in: path
name: clientTrackingId
schema:
type: string
required: true
description: The clientTrackingId of the transaction item bulk patch.
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/GetResponseStatus"
examples:
Batch successfully processed:
summary: Batch successfully processed
description: |
Body of a batch of transaction items that was successfully patched.
A number of transaction items were patched.
value:
startTime: 2025-02-14T05:32:47.067Z
status: Finished
clientTrackingId: 08584620957189579629541919368CU00
summary:
created: 0
updated: 15
total: 15
"202":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/GetResponseStatus"
examples:
Batch is still being processed:
summary: Batch is still being processed
description: |
Batch is still being processed
value:
startTime: 2025-02-14T05:32:47.067Z
status: Running
clientTrackingId: 08584620957189579629541919368CU00
summary:
created: 0
updated: 0
total: 0
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/processingfailures/bulk:
patch:
summary: Patch processing failures in bulk.
description: Patch processing failures in bulk.
tags:
- Bulk processing v2.2
requestBody:
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/ProcessingFailuresBulkRequestBody"
examples:
List of processing failures to resolve:
summary: List of processing failures to resolve
description: List of processing failures to resolve in bulk.
value:
processingFailures:
- processingFailureId: d8ee7035-fa3d-400e-9ad5-4fe8c4c73eb7
resolved: true
change: Configuratie aangepast voor artikelnummer 1337.
- processingFailureId: 88910e83-4b1e-4fde-ab13-bd8bb60cbcd3
resolved: true
change: Configuratie aangepast voor artikelnummer 1337.
responses:
"202":
description: Accepted
content:
application/json:
schema:
$ref: "#/components/schemas/BulkResponseBody"
examples:
Array of processing failures accepted:
summary: Array of processing failures accepted
description: |
The array of processing failures was accepted successfully.
The processing failures will be processed asynchronously.
In the response body the consumer will find information on how to retrieve the processing status.
value:
startTime: 2025-02-14T05:32:47.0672237Z
status: Running
clientTrackingId: 08584620957189579629541919368CU00
callbackurl: https://api.integratielaag.nl/processingfailures/bulk/responsestatus/webhooks/workflow/scaleUnits/prod-00/workflows/6fd466916c
retryAfter: 10
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/processingfailures/bulk/responsestatus/{clientTrackingId}:
get:
tags:
- Bulk processing v2.2
summary: Get the status of the processing failures bulk patch.
description: Get the status of the asynchronous processing failures bulk patch.
parameters:
- in: path
name: clientTrackingId
schema:
type: string
required: true
description: The clientTrackingId of the processing failures bulk patch.
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/GetResponseStatus"
examples:
Batch successfully processed:
summary: Batch successfully processed
description: |
Body of a batch of processing failures that was successfully patched.
A number of processing failures were patched.
value:
startTime: 2025-02-14T05:32:47.067Z
status: Finished
clientTrackingId: 08584620957189579629541919368CU00
summary:
created: 0
updated: 15
total: 15
"202":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/GetResponseStatus"
examples:
Batch is still being processed:
summary: Batch is still being processed
description: |
Batch is still being processed
value:
startTime: 2025-02-14T05:32:47.067Z
status: Running
clientTrackingId: 08584620957189579629541919368CU00
summary:
created: 0
updated: 0
total: 0
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
components:
securitySchemes:
default:
type: oauth2
flows:
implicit:
authorizationUrl: https://api.integratielaag.nl/authorize
scopes: {}
schemas:
unavailable:
type: object
TransactionItemsGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#TransactionItem
value:
type: array
items:
$ref: "#/components/schemas/TransactionItem"
TransactionItem:
type: object
properties:
"@odata.etag":
type: string
example: 6962e56b-c7dd-3336-9627-6687f007ee07
transactionItemRowId:
type: integer
example: 3231
transactionItemId:
type: string
example: afce35b2-1dff-4ace-98d0-4b9ac405c87d
transactionType:
type: string
enum:
- sales
example: sales
sourceName:
type: string
example: HTM-website
transactionId:
type: string
example: "1001236"
transactionLineId:
type: string
nullable: true
example: "1"
name:
type: string
example: HTM Maandkorting 20%
quantity:
type: integer
example: 1
taxCode:
type: string
example: V21
amountExclTax:
type: integer
example: 100
amountInclTax:
type: integer
example: 121
amountTax:
type: integer
example: 21
occurredOn:
type: string
format: date-time
example: 2024-10-04T00:00:00Z
type:
type: string
enum:
- debit
- credit
example: debit
articleNumber:
type: string
nullable: true
example: "4031"
status:
type: string
enum:
- created
- succeeded
- failed
- returned to trx-db
- returned to src
- re-entered
example: created
aggregationReference:
type: string
nullable: true
example: FIKO-123456
accountingSystemReference:
type: string
nullable: true
example: U4F-123456
required:
- transactionItemId
- transactionType
- sourceName
- transactionId
- name
- quantity
- taxCode
- amountExclTax
- amountInclTax
- amountTax
- occurredOn
- type
- status
TransactionItemsBulkRequestBody:
type: object
properties:
transactionItems:
type: array
items:
type: object
properties:
transactionItemId:
type: string
format: uuid
example: afce35b2-1dff-4ace-98d0-4b9ac405c87d
transactionType:
type: string
enum:
- sales
example: sales
sourceName:
type: string
example: HTM-website
transactionId:
type: string
example: "1001236"
transactionLineId:
type: string
nullable: true
example: "1"
name:
type: string
example: HTM Maandkorting 20%
quantity:
type: integer
example: 1
taxCode:
type: string
example: V21
amountExclTax:
type: integer
example: 100
amountInclTax:
type: integer
example: 121
amountTax:
type: integer
example: 21
occurredOn:
type: string
format: date-time
example: 2024-10-04T00:00:00Z
type:
type: string
enum:
- debit
- credit
example: debit
articleNumber:
type: string
nullable: true
example: "4031"
required:
- sourceName
- transactionType
- transactionId
- name
- quantity
- taxCode
- amountExclTax
- amountInclTax
- amountTax
- occurredOn
- type
BulkResponseBody:
type: object
properties:
startTime:
type: string
format: date-time
example: 2025-02-14T05:32:47.0672237Z
status:
type: string
example: Running
clientTrackingId:
type: string
example: 08584620957189579629541919368CU00
callbackurl:
type: string
format: uri
example: https://services.api.htm.nl/transactionitems/responsestatus/runtime/webhooks/workflow/scaleUnits/prod-00/workflows/6fd466916c
retryAfter:
type: integer
example: 10
required:
- startTime
- status
- clientTrackingId
- callbackurl
- retryAfter
TransactionItemsBulkBadRequestResponseBody:
type: object
properties:
type:
type: string
format: url
example: https://htm.nl/api/v1/probs/fiko/validationerror
title:
type: string
example: Transaction validation failed.
detail:
type: string
example: One ore more transactions in the request are invalid.
instance:
type: string
example: urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b
errors:
type: array
items:
type: object
properties:
detail:
type: string
example: Transaction is a duplicate of a transaction already in the system.
pointer:
type: string
example: "#/transactionItems/0"
transactionId:
type: string
example: 1ad109d3-fd7d-4b6f-872b-220d492f385f
transactionLineId:
type: string
example: fee907dd-e59d-44f5-a63b-bbdec38f79b7
required:
- detail
- pointer
- transactionId
required:
- type
- title
- detail
- instance
TransactionItemsPatchRequestBody:
type: object
properties:
name:
type: string
nullable: true
example: HTM Maandkorting 20%
quantity:
type: integer
nullable: true
example: 1
taxCode:
type: string
nullable: true
example: V21
amountExclTax:
type: integer
nullable: true
example: 100
amountInclTax:
type: integer
nullable: true
example: 121
amountTax:
type: integer
nullable: true
example: 21
occurredOn:
type: string
nullable: true
format: date-time
example: 2024-10-04T00:00:00Z
type:
type: string
nullable: true
enum:
- debit
- credit
example: debit
articleNumber:
type: string
nullable: true
example: 4031
status:
type: string
enum:
- created
- succeeded
- failed
- returned to trx-db
- returned to src
- re-entered
example: created
aggregationReference:
type: string
nullable: true
example: FIKO-123456
accountingSystemReference:
type: string
nullable: true
example: U4F-123456
TransactionItemsPatchResponseBody:
type: object
properties:
transactionItemId:
type: string
format: uuid
example: afce35b2-1dff-4ace-98d0-4b9ac405c87d
required:
- transactionItemId
ProcessingFailuresPostRequestBody:
type: object
properties:
timestamp:
type: string
format: date-time
example: 2022-01-01 00:00:00
element:
type: string
example: costCenter
value:
type: string
example: 84955
reasonCode:
type: string
example: "002"
reasonDescription:
type: string
example: Contra account does not exist.
resolved:
type: boolean
example: false
change:
type: string
nullable: true
example: Adapt config
required:
- timestamp
- element
- value
- reasonCode
- reasonDescription
- resolved
ProcessingFailuresPostResponseBody:
type: object
properties:
processingFailureId:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required:
- processingFailureId
ProcessingFailuresGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#ProcessingFailure
value:
type: array
items:
$ref: "#/components/schemas/ProcessingFailure"
ProcessingFailure:
type: object
properties:
"@odata.etag":
type: string
example: 464155e4-0018-3676-8102-42429f14f2ed
processingFailureRowId:
type: integer
example: 9
processingFailureId:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
transactionItemId:
type: string
format: uuid
example: 2d77d978-7141-499a-84ad-93fad8ee03ce
timestamp:
type: string
format: date-time
example: 2022-01-01 00:00:00
element:
type: string
example: costCenter
value:
type: string
example: 84955
reasonCode:
type: string
example: "002"
reasonDescription:
type: string
example: Contra account does not exist.
resolved:
type: boolean
example: false
change:
type: string
nullable: true
example: Adapt config
required:
- processingFailureId
- transactionItemId
- timestamp
- element
- value
- reasonCode
- reasonDescription
- resolved
ProcessingFailuresPatchRequestBody:
type: object
properties:
resolved:
type: boolean
nullable: true
example: true
change:
type: string
nullable: true
example: Adapt config
ProcessingFailuresPatchResponseBody:
type: object
properties:
processingFailureId:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required:
- processingFailureId
TransactionAuditTrailsPostRequestBody:
type: object
properties:
user:
type: string
example: fiko
timestamp:
type: string
format: date-time
example: 2022-01-01 00:00:00
action:
type: string
enum:
- create
- update
example: create
status:
type: string
enum:
- created
- succeeded
- failed
- returned to trx-db
- returned to src
- re-entered
example: created
description:
type: string
nullable: true
example: Transaction created.
correlationId:
type: string
format: uuid
nullable: true
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required:
- user
- timestamp
- action
- status
TransactionAuditTrailsPostResponseBody:
type: object
properties:
transactionAuditTrailId:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required:
- transactionAuditTrailId
TransactionAuditTrailsGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#TransactionAuditTrail
value:
type: array
items:
$ref: "#/components/schemas/TransactionAuditTrail"
TransactionAuditTrail:
type: object
properties:
"@odata.etag":
type: string
example: a669b92c-1a10-3dd6-b4d1-efaed0629db8
transactionAuditTrailRowId:
type: integer
example: 8218
transactionAuditTrailId:
type: string
format: uuid
example: afce35b2-1dff-4ace-98d0-4b9ac405c87d
transactionItemId:
type: string
format: uuid
example: d667d293-aa82-4c9e-9b10-77cffc9058a1
user:
type: string
example: fiko
timestamp:
type: string
format: date-time
example: 2022-01-01 00:00:00
action:
type: string
enum:
- create
- update
example: create
status:
type: string
enum:
- created
- succeeded
- failed
- returned to trx-db
- returned to src
- re-entered
example: created
description:
type: string
nullable: true
example: Transaction created.
correlationId:
type: string
format: uuid
nullable: true
example: a3891560-3084-42cb-867c-f289e7cda47d
required:
- transactionAuditTrailId
- transactionItemId
- user
- timestamp
- action
- status
BookingProcessesGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#BookingProcess
value:
type: array
items:
$ref: "#/components/schemas/BookingProcess"
BookingProcess:
type: object
properties:
"@odata.etag":
type: string
example: 9e8b14cf-c03a-3be7-b9ec-ef5dd6948217
bookingProcessRowId:
type: integer
example: 10
bookingProcessId:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
name:
type: string
example: Verkooptransacties
transactionType:
type: string
enum:
- sales
example: sales
identifyingFieldName:
type: string
nullable: true
example: articleNumber
required:
- bookingProcessId
- name
- transactionType
BookingProcessesPostRequestBody:
type: object
properties:
name:
type: string
example: Verkooptransacties
transactionType:
type: string
enum:
- sales
example: sales
identifyingFieldName:
type: string
nullable: true
example: articleNumber
required:
- name
- transactionType
BookingProcessesPostResponseBody:
type: object
properties:
bookingProcessId:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required:
- bookingProcessId
BookingProcessesPatchRequestBody:
type: object
properties:
name:
type: string
nullable: true
example: Verkooptransacties
transactionType:
type: string
nullable: true
enum:
- sales
example: sales
identifyingFieldName:
type: string
nullable: true
example: articleNumber
BookingProcessesPatchResponseBody:
type: object
properties:
bookingProcessId:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
required:
- bookingProcessId
BookingMetadataGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#BookingMetadata
value:
type: array
items:
$ref: "#/components/schemas/BookingMetadata"
BookingMetadata:
type: object
properties:
"@odata.etag":
type: string
example: f477014f-8bf2-3e72-b9b6-1bb609840b61
bookingMetadataRowId:
type: integer
example: 13
bookingMetadataId:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
bookingProcessId:
type: string
format: uuid
example: 37a8095b-19db-498f-9349-5f37d21c5bdf
name:
type: string
example: Dagkaarten
description:
type: string
example: Dagkaarten nov. 2024
documentCode:
type: string
example: OPBR-FIKO
hasSeparateTaxLine:
type: boolean
example: true
hasLinePerIdentifyingField:
type: boolean
example: true
hasLinePerSource:
type: boolean
example: true
hasLinePerConcession:
type: boolean
example: true
validFrom:
type: string
format: date-time
example: 2022-01-01 00:00:00
validUntil:
type: string
format: date-time
nullable: true
example: null
required:
- bookingMetadataId
- bookingProcessId
- name
- description
- documentCode
- hasSeparateTaxLine
- hasLinePerIdentifyingField
- hasLinePerSource
- hasLinePerConcession
- validFrom
BookingMetadataPostRequestBody:
type: object
properties:
name:
type: string
example: Dagkaarten
description:
type: string
example: Dagkaarten nov. 2024
documentCode:
type: string
example: OPBR-FIKO
hasSeparateTaxLine:
type: boolean
example: true
hasLinePerIdentifyingField:
type: boolean
example: true
hasLinePerSource:
type: boolean
example: true
hasLinePerConcession:
type: boolean
example: true
validFrom:
type: string
format: date-time
example: 2022-01-01 00:00:00
validUntil:
type: string
format: date-time
nullable: true
example: null
required:
- name
- description
- documentCode
- hasSeparateTaxLine
- hasLinePerIdentifyingField
- hasLinePerSource
- hasLinePerConcession
- validFrom
BookingMetadataPostResponseBody:
type: object
properties:
bookingMetadataId:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required:
- bookingMetadataId
BookingMetadataPatchRequestBody:
type: object
properties:
name:
type: string
nullable: true
example: Dagkaarten
description:
type: string
nullable: true
example: Dagkaarten nov. 2024
documentCode:
type: string
nullable: true
example: OPBR-FIKO
hasSeparateTaxLine:
type: boolean
nullable: true
example: true
hasLinePerIdentifyingField:
type: boolean
nullable: true
example: true
hasLinePerSource:
type: boolean
nullable: true
example: true
hasLinePerConcession:
type: boolean
nullable: true
example: true
validFrom:
type: string
format: date-time
nullable: true
example: 2022-01-01 00:00:00
validUntil:
type: string
format: date-time
nullable: true
example: null
BookingMetadataPatchResponseBody:
type: object
properties:
bookingMetadataId:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required:
- bookingMetadataId
BookingGroupFieldsPostRequestBody:
type: object
properties:
identifyingFieldValue:
type: string
example: 1737
required:
- identifyingFieldValue
BookingGroupFieldsPostResponseBody:
type: object
properties:
bookingGroupFieldId:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required:
- bookingGroupFieldId
BookingGroupFieldsGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#BookingGroupField
value:
type: array
items:
$ref: "#/components/schemas/BookingGroupField"
BookingGroupField:
type: object
properties:
"@odata.etag":
type: string
example: ef520db0-4e3d-39a0-926f-f37ad49bb7cf
bookingGroupFieldRowId:
type: integer
example: 8
bookingGroupFieldId:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
bookingMetadataId:
type: string
format: uuid
example: 12b4d128-0ab8-4a4a-944d-25b83de38b27
identifyingFieldValue:
type: string
example: 1737
required:
- bookingGroupFieldId
- bookingMetadataId
- identifyingFieldValue
BookingLineMetadataPostRequestBody:
type: object
properties:
name:
type: string
example: Dagkaart - BUS
description:
type: string
example: Dagkaarten nov. 2024 BUS
sourceMetadataId:
type: string
format: uuid
example: null
nullable: true
identifyingFieldValue:
type: string
example: null
nullable: true
concessionId:
type: integer
example: 1
nullable: true
isContraAccount:
type: boolean
example: false
lineType:
type: string
enum:
- summary
- analysis
- tax
example: summary
lineSense:
type: string
enum:
- debit
- credit
example: credit
department:
type: string
example: 900
costType:
type: string
example: 84956
costCenter:
type: string
example: 603031
nullable: true
articleName:
type: string
example: dagkaart
nullable: true
extRef1:
type: string
example: null
nullable: true
extRef2:
type: string
example: null
nullable: true
extRef3:
type: string
example: 2025-02-17
nullable: true
extRef4:
type: string
example: null
nullable: true
extRef5:
type: string
example: Webshop
nullable: true
extRef6:
type: string
example: null
nullable: true
required:
- name
- description
- isContraAccount
- lineType
- lineSense
- department
- costType
BookingLineMetadataPostResponseBody:
type: object
properties:
bookingLineMetadataId:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required:
- bookingLineMetadataId
BookingLineMetadataGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#BookingLineMetadata
value:
type: array
items:
$ref: "#/components/schemas/BookingLineMetadata"
BookingLineMetadata:
type: object
properties:
"@odata.etag":
type: string
example: c0afe2d6-f4b2-321a-ae6b-2dc72b25ebc1
bookingLineMetadataRowId:
type: integer
example: 10
bookingLineMetadataId:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
bookingMetadataId:
type: string
format: uuid
example: 12b4d128-0ab8-4a4a-944d-25b83de38b27
name:
type: string
example: Dagkaart - RAIL
description:
type: string
example: Dagkaarten nov. 2024 RAIL
sourceMetadataId:
type: string
format: uuid
example: db7e5899-3904-4b53-bd62-a56aef34c66d
nullable: true
identifyingFieldValue:
type: string
example: null
nullable: true
concessionId:
type: integer
example: 1
nullable: true
isContraAccount:
type: boolean
example: false
lineType:
type: string
enum:
- summary
- analysis
- tax
example: summary
lineSense:
type: string
enum:
- debit
- credit
example: credit
department:
type: string
example: 900
costType:
type: string
example: 84956
costCenter:
type: string
example: 603031
nullable: true
articleName:
type: string
example: dagkaart
nullable: true
extRef1:
type: string
example: null
nullable: true
extRef2:
type: string
example: null
nullable: true
extRef3:
type: string
example: 2025-02-17
nullable: true
extRef4:
type: string
example: null
nullable: true
extRef5:
type: string
example: Webshop
nullable: true
extRef6:
type: string
example: null
nullable: true
required:
- bookingLineMetadataId
- bookingMetadataId
- name
- description
- isContraAccount
- lineType
- lineSense
- department
- costType
BookingLineMetadataPatchRequestBody:
type: object
properties:
name:
type: string
example: Dagkaart - RAIL
nullable: true
description:
type: string
example: Dagkaarten nov. 2024 RAIL
nullable: true
sourceMetadataId:
type: string
format: uuid
example: null
nullable: true
identifyingFieldValue:
type: string
example: null
nullable: true
concessionId:
type: integer
example: 1
nullable: true
isContraAccount:
type: boolean
example: false
nullable: true
lineType:
type: string
enum:
- summary
- analysis
- tax
example: summary
nullable: true
lineSense:
type: string
enum:
- debit
- credit
example: credit
nullable: true
department:
type: string
example: 900
nullable: true
costType:
type: string
example: 84956
nullable: true
costCenter:
type: string
example: 603031
nullable: true
articleName:
type: string
example: dagkaart
nullable: true
extRef1:
type: string
example: null
nullable: true
extRef2:
type: string
example: null
nullable: true
extRef3:
type: string
example: 2025-02-17
nullable: true
extRef4:
type: string
example: null
nullable: true
extRef5:
type: string
example: Webshop
nullable: true
extRef6:
type: string
example: null
nullable: true
BookingLineMetadataPatchResponseBody:
type: object
properties:
bookingLineMetadataId:
type: string
format: uuid
example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617
required:
- bookingLineMetadataId
MetadataAuditTrailsGetResponseBody:
type: object
properties:
metadataAuditTrails:
type: array
items:
type: object
properties:
metadataAuditTrailId:
type: string
format: uuid
example: b6161270-eb08-4242-90ec-967d5db62070
source:
type: string
example: FMT
endpoint:
type: string
format: url
example: https://dev.api.htm.nl/v2/productmetadata
operation:
type: string
enum:
- GET
- POST
- PATCH
- DELETE
example: POST
requestBody:
type: string
format: json
example: { "json": "data" }
responseCode:
type: integer
example: 200
responseBody:
type: string
format: json
example: { "json": "data" }
user:
type: string
example: ad.vogelaar
timestamp:
type: string
format: date-time
example: 2022-01-01 00:00:00
correlationId:
type: string
format: uuid
nullable: true
example: 662de47c-d809-41bd-b3f6-5c7e1dc5c030
required:
- metadataAuditTrailId
- source
- endpoint
- operation
- requestBody
- responseCode
- responseBody
- user
- timestamp
href:
type: string
nullable: true
example: null
required:
- metadataAuditTrails
MetadataAuditTrailsPostRequestBody:
type: object
properties:
source:
type: string
example: FMT
endpoint:
type: string
format: url
example: https://dev.api.htm.nl/v2/productmetadata
operation:
type: string
enum:
- GET
- POST
- PATCH
- DELETE
example: POST
requestBody:
type: string
format: json
example: { "json": "data" }
responseCode:
type: integer
example: 200
responseBody:
type: string
format: json
example: { "json": "data" }
user:
type: string
example: ad.vogelaar
timestamp:
type: string
format: date-time
example: 2022-01-01 00:00:00
correlationId:
type: string
format: uuid
nullable: true
example: 662de47c-d809-41bd-b3f6-5c7e1dc5c030
required:
- source
- endpoint
- operation
- requestBody
- responseCode
- responseBody
- user
- timestamp
MetadataAuditTrailsPostResponseBody:
type: object
properties:
metadataAuditTrailId:
type: string
format: uuid
example: b6161270-eb08-4242-90ec-967d5db62070
required:
- metadataAuditTrailId
TaxMetadataGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#TaxMetadata
value:
type: array
items:
$ref: "#/components/schemas/TaxMetadata"
TaxMetadata:
type: object
properties:
"@odata.etag":
type: string
example: e4e7c773-eb7a-3fe0-960d-df1744127a7b
taxMetadataRowId:
type: integer
example: 13
taxMetadataId:
type: string
format: uuid
example: 192882fe-3f51-46bb-bfdb-2e4cb31ef925
taxCode:
type: string
example: V21
taxPercentage:
type: number
example: 21
description:
type: string
example: BTW VERKOOP HOOG 21%
weFactTaxCode:
type: string
example: V21
nullable: true
validFrom:
type: string
format: date-time
example: 2024-03-22T09:00:00
validUntil:
type: string
format: date-time
nullable: true
example: null
required:
- taxMetadataId
- taxCode
- taxPercentageAmount
- description
- validFrom
TaxMetadataPostRequestBody:
type: object
properties:
taxCode:
type: string
example: V21
taxPercentage:
type: number
example: 21
description:
type: string
example: BTW VERKOOP HOOG 21%
weFactTaxCode:
type: string
example: V21
nullable: true
validFrom:
type: string
format: date-time
example: 2024-03-22T09:00:00
validUntil:
type: string
format: date-time
nullable: true
example: null
required:
- taxCode
- taxPercentageAmount
- description
- validFrom
TaxMetadataPostResponseBody:
type: object
properties:
taxMetadataId:
type: string
format: uuid
example: 192882fe-3f51-46bb-bfdb-2e4cb31ef925
required:
- taxMetadataId
TaxMetadataPatchRequestBody:
type: object
properties:
taxCode:
type: string
example: V21
nullable: true
taxPercentageAmount:
type: number
example: 21
nullable: true
description:
type: string
example: BTW VERKOOP HOOG 21%
nullable: true
weFactTaxCode:
type: string
example: V21
nullable: true
validFrom:
type: string
format: date-time
example: 2024-03-22T09:00:00
nullable: true
validUntil:
type: string
format: date-time
nullable: true
example: null
TaxMetadataPatchResponseBody:
type: object
properties:
taxMetadataId:
type: string
format: uuid
example: 192882fe-3f51-46bb-bfdb-2e4cb31ef925
required:
- taxMetadataId
SourceMetadataGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#SourceMetadata
value:
type: array
items:
$ref: "#/components/schemas/SourceMetadata"
SourceMetadata:
type: object
properties:
"@odata.etag":
type: string
example: d7df8249-3e72-35f2-a069-d845e8e2cbba
sourceMetadataRowId:
type: integer
example: 2
sourceMetadataId:
type: string
format: uuid
example: bc4ea24a-27a5-40e8-bbbc-57a105afaaa0
incomingName:
type: string
example: HTM-website
incomingEntity:
type: string
example: OrderLine
outgoingName:
type: string
example: Website Verkopen
businessOwner:
type: string
example: Koos Verweg
rejectionProcessing:
type: string
example: system
rejectionInfo:
type: string
example: api.htm.nl/v2/account/12345/msgs/abc
validFrom:
type: string
format: date-time
example: 2025-01-01T00:00:00.000
validUntil:
type: string
format: date-time
example: null
nullable: true
required:
- sourceMetadataId
- incomingName
- incomingEntity
- outgoingName
- businessOwner
- rejectionProcessing
- rejectionInfo
- validFrom
SourceMetadataPostRequestBody:
type: object
properties:
incomingName:
type: string
example: HTM-website
incomingEntity:
type: string
example: OrderLine
outgoingName:
type: string
example: Website Verkopen
businessOwner:
type: string
example: Koos Verweg
rejectionProcessing:
type: string
example: system
rejectionInfo:
type: string
example: api.htm.nl/v2/account/12345/msgs/abc
validFrom:
type: string
format: date-time
example: 2025-01-01T00:00:00.000
validUntil:
type: string
format: date-time
example: null
nullable: true
required:
- incomingName
- incomingEntity
- outgoingName
- businessOwner
- rejectionProcessing
- rejectionInfo
- validFrom
SourceMetadataPostResponseBody:
type: object
properties:
sourceMetadataId:
type: string
format: uuid
example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
required:
- sourceMetadataId
SourceMetadataPatchRequestBody:
type: object
properties:
incomingName:
type: string
example: HTM-website
nullable: true
incomingEntity:
type: string
example: OrderLine
nullable: true
outgoingName:
type: string
example: Website Verkopen
nullable: true
businessOwner:
type: string
example: Koos Verweg
nullable: true
rejectionProcessing:
type: string
example: system
nullable: true
rejectionInfo:
type: string
example: api.htm.nl/v2/account/12345/msgs/abc
nullable: true
validFrom:
type: string
format: date-time
example: 2025-01-01T00:00:00.000
nullable: true
validUntil:
type: string
format: date-time
example: null
nullable: true
SourceMetadataPatchResponseBody:
type: object
properties:
sourceMetadataId:
type: string
format: uuid
example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
required:
- sourceMetadataId
AccountingPeriodMetadataGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#AccountingPeriodMetadata
value:
type: array
items:
$ref: "#/components/schemas/AccountingPeriodMetadata"
AccountingPeriodMetadata:
type: object
properties:
"@odata.etag":
type: string
example: 333d6b7d-b709-3b89-89e0-bcb3d5fdddfc
accountingPeriodMetadataRowId:
type: integer
example: 1
accountingPeriodMetadataId:
type: string
format: uuid
example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
accountingPeriod:
type: string
example: 2024/01
isOpen:
type: boolean
example: true
required:
- accountingPeriodMetadataId
- accountingPeriod
- isOpen
AccountingPeriodMetadataPostRequestBody:
type: object
properties:
accountingPeriod:
type: string
example: 2024/01
isOpen:
type: boolean
example: true
required:
- accountingPeriod
- isOpen
AccountingPeriodMetadataPostResponseBody:
type: object
properties:
accountingPeriodMetadataId:
type: string
format: uuid
example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
required:
- accountingPeriodMetadataId
AccountingPeriodMetadataPatchRequestBody:
type: object
properties:
isOpen:
type: boolean
example: true
required:
- isOpen
AccountingPeriodMetadataPatchResponseBody:
type: object
properties:
accountingPeriodMetadataId:
type: string
format: uuid
example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
required:
- accountingPeriodMetadataId
ConcessionMetadataGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#ConcessionMetadata
value:
type: array
items:
$ref: "#/components/schemas/ConcessionMetadata"
ConcessionMetadata:
type: object
properties:
"@odata.etag":
type: string
example: 77c78584-7ce8-3cf5-b89e-73b888d72d70
concessionMetadataRowId:
type: integer
example: 14
concessionMetadataId:
type: string
format: en
example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
concessionId:
type: integer
example: 1
percentage:
type: number
example: 84.021
validFrom:
type: string
format: date-time
example: 2024-01-01T00:00:00.000
validUntil:
type: string
format: date-time
nullable: true
example: null
required:
- concessionMetadataId
- concessionId
- percentage
- validFrom
ConcessionMetadataPostRequestBody:
type: object
properties:
concessionId:
type: integer
example: 1
percentage:
type: number
example: 84.021
validFrom:
type: string
format: date-time
example: 2024-01-01T00:00:00.000
validUntil:
type: string
format: date-time
nullable: true
example: null
required:
- concessionId
- percentage
- validFrom
ConcessionMetadataPostResponseBody:
type: object
properties:
concessionMetadataId:
type: string
format: uuid
example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
required:
- concessionMetadataId
ConcessionMetadataPatchRequestBody:
type: object
properties:
concessionId:
type: integer
example: 1
percentage:
type: number
example: 84.021
validFrom:
type: string
format: date-time
example: 2024-01-01T00:00:00.000
validUntil:
type: string
format: date-time
nullable: true
example: null
ConcessionMetadataPatchResponseBody:
type: object
properties:
concessionMetadataId:
type: string
format: uuid
example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb
required:
- concessionMetadataId
ConcessionsGetResponseBody:
type: object
properties:
"@odata.context":
type: string
example: $metadata#Concession
value:
type: array
items:
$ref: "#/components/schemas/Concession"
Concession:
type: object
properties:
"@odata.etag":
type: string
example: 49bfa10d-b80d-3f2f-b3c2-9a5da3182cc3
concessionRowId:
type: integer
example: 1
concessionId:
type: integer
example: 1
name:
type: string
example: RAIL
required:
- concessionId
- name
GetResponseStatus:
type: object
properties:
summary:
type: object
properties:
created:
type: integer
example: 15
updated:
type: integer
example: 2
total:
type: integer
example: 17
required:
- created
- total
- updated
required:
- summary
409Response:
type: object
properties:
code:
type: string
example: "409"
type:
type: string
example: error
message:
type: string
example: conflict
description:
type: string
example: >-
A transaction with the same TransactionId and TransactionLineId
already exists.
errors:
type: array
items:
type: object
properties:
detail:
type: string
example: >-
Transaction is a duplicate of a transaction already in the
system.
pointer:
type: string
example: "#/transactionItems/0"
transactionId:
type: string
example: 1ad109d3-fd7d-4b6f-872b-220d492f385f
transactionLineId:
type: string
example: fee907dd-e59d-44f5-a63b-bbdec38f79b7
ProcessingFailuresBulkRequestBody:
type: object
properties:
processingFailures:
type: array
items:
type: object
properties:
processingFailureId::
type: string
format: uuid
example: d8ee7035-fa3d-400e-9ad5-4fe8c4c73eb7
resolved:
type: boolean
example: true
required:
- transactionItemId
- resolved
rfc9457:
type: object
properties:
type:
type: string
format: url
example: "https://example.com/probs/out-of-credit"
title:
type: string
example: "You do not have enough credit."
detail:
type: string
example: "Your current balance is 30, but that costs 50."
instance:
type: string
example: "/account/12345/msgs/abc"
balance:
type: string
example: "30"
accounts:
type: array
items:
type: string
example:
- "/account/12345"
- "/account/67890"
parameters:
top:
name: $top
in: query
description: Show only the first n items
required: false
style: form
explode: true
schema:
minimum: 0
type: integer
skip:
name: $skip
in: query
description: Skip the first n items
required: false
style: form
explode: true
schema:
minimum: 0
type: integer
count:
name: $count
in: query
description: Include count of items
required: false
style: form
explode: true
schema:
type: boolean
filter:
name: $filter
in: query
description: Filter items by property values
required: false
style: form
explode: true
schema:
type: string