openapi: "3.0.3" info: title: ABT FIKO CRUD APIs v2 version: "1.0" description: CRUD APIs for ABT FIKO database v2. servers: - url: https://api.integratielaag.nl/v1 paths: /transactionitems: get: summary: Find transaction items. description: Find transaction items. tags: - Transactions v2 parameters: - in: query name: transactionItemId schema: type: string format: uuid example: 75174a9d-fff4-4682-b66b-ebd93cbe7ea3 description: The id of the transaction item. - in: query name: transactionType schema: type: array items: type: string example: [sales] explode: false description: Possible types of the transaction ('sales'). - in: query name: sourceName schema: type: string example: Verkoopengine description: Source name of the transaction. - in: query name: transactionId schema: type: string example: 1001236 description: The id of the transaction. - in: query name: transactionLineId schema: type: string example: 1 description: The line id of the transaction. - in: query name: name schema: type: string example: HTM Maandkorting 20% description: The name of the product on the transaction. - in: query name: quantity schema: type: integer example: 1 description: The quantity of the transaction. - in: query name: taxCode schema: type: string example: V21 description: The tax code of the transaction. - in: query name: amountExclTax schema: type: integer example: 100 description: The amount of the transaction excluding tax in cents. - in: query name: amountInclTax schema: type: integer example: 121 description: The amount of the transaction including tax in cents. - in: query name: amountTax schema: type: integer example: 21 description: The tax amount of the transaction in cents. - in: query name: occurredBefore schema: type: string format: date-time example: 2024-10-04T00:00:00Z description: Timestamp before which the transaction occurred. - in: query name: occurredAfter schema: type: string format: date-time example: 2024-10-04T00:00:00Z description: Timestamp after which the transaction occurred. - in: query name: type schema: type: array items: type: string example: [debit, credit] explode: false description: Possible types of the transaction ('debit' or 'credit'). - in: query name: articleNumber schema: type: string example: 4031 description: The article number of the transaction. - in: query name: status schema: type: array items: type: string example: [ created, succeeded, failed, returned to trx-db, returned to src, re-entered, ] explode: false description: Possible statuses of the transaction ('created', 'succeeded', 'failed', 'returned to trx-db', 'returned to src', 're-entered'). - in: query name: aggregationReference schema: type: string example: FIKO-123456 description: The aggregation reference of the transaction. %00 is searching for NULL-values. - in: query name: accountingSystemReference schema: type: string example: U4F-123456 description: The accounting system reference of the transaction. %00 is searching for NULL-values. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/TransactionItemsGetResponseBody" post: summary: Add one ore more finanicial transaction items in bulk. description: Add one ore more finanicial transaction items in bulk. tags: - Transactions v2 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TransactionItemsPostRequestBody" responses: "202": description: Accepted content: application/json: schema: $ref: "#/components/schemas/TransactionItemsPostResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TransactionItemsPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/TransactionItemsPatchResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ProcessingFailuresPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/ProcessingFailuresPostResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TransactionAuditTrailsPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/TransactionAuditTrailsPostResponseBody" /transactionaudittrails: get: summary: Find audit trail entries. description: Find audit trail entries. tags: - Audit Trail v2 parameters: - in: query name: transactionAuditTrailId schema: type: string format: uuid example: 498e11fd-86c7-4e26-8ca9-c5ed9049da9e description: The id of the audit trail. - in: query name: transactionItemId schema: type: string format: uuid example: 9834b346-d68c-438d-9bd5-6716422c2657 description: The id of the transaction item. - in: query name: user schema: type: string example: fiko description: The user who created the audit trail. - in: query name: timestampBefore schema: type: string example: 2022-01-01 00:00:00 description: The timestamp before the event occured. - in: query name: timestampAfter schema: type: string example: 2022-01-01 00:00:00 description: The timestamp after the event occured. - in: query name: action schema: type: array items: type: string example: [create, update] explode: false description: The action of the event. - in: query name: status schema: type: array items: type: string example: [ created, succeeded, failed, returned to trx-db, returned to src, re-entered, ] explode: false description: The status of the transaction item. - in: query name: description schema: type: string example: Transaction created. description: The description of the event. - in: query name: correlationId schema: type: string example: a3891560-3084-42cb-867c-f289e7cda47d description: The correlation id of the event. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/TransactionAuditTrailsGetResponseBody" /processingfailures: get: summary: Find processing failures. description: Find processing failures. tags: - Failures v2 parameters: - in: query name: processingFailureId schema: type: string format: uuid example: 9834b346-d68c-438d-9bd5-6716422c2657 description: The id of the processing failure. - in: query name: transactionItemId schema: type: string format: uuid example: 9834b346-d68c-438d-9bd5-6716422c2657 description: The id of the transaction item. - in: query name: timestampBefore schema: type: string example: 2022-01-01 00:00:00 description: The timestamp before the event occured. - in: query name: timestampAfter schema: type: string example: 2022-01-01 00:00:00 description: The timestamp after the event occured. - in: query name: element schema: type: string example: contraAccount description: The element on which the validation failed. - in: query name: value schema: type: string example: 84955 description: The value of th element on which the validation failed. - in: query name: reasonCode schema: type: string example: "002" description: The code of the validation failure reason. - in: query name: reasonDescription schema: type: string example: Contra account does not exist. description: The description of the validation failure reason. - in: query name: resolved schema: type: boolean example: true description: Whether the failure is resolved. - in: query name: change schema: type: string example: Adapt config description: Description of what was changed to resolve the failure. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/ProcessingFailuresGetResponseBody" /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 requestBody: content: application/json: schema: $ref: "#/components/schemas/ProcessingFailuresPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/ProcessingFailuresPatchResponseBody" /bookingprocesses: get: summary: Find booking processes. description: Find booking processes. tags: - Booking Processes v2 parameters: - in: query name: bookingProcessId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the booking process. - in: query name: name schema: type: string example: Verkooptransacties description: The name of the booking process. - in: query name: transactionType schema: type: array items: type: string example: [sales, purchase] explode: false description: The transaction type of the booking process. - in: query name: identifyingFieldName schema: type: string example: articleNumber description: The identifying field name of the booking process. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/BookingProcessesGetResponseBody" post: summary: Add a booking process. description: Add a booking process. tags: - Booking Processes v2 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BookingProcessesPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/BookingProcessesPostResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BookingProcessesPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/BookingProcessesPatchResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BookingMetadataPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/BookingMetadataPostResponseBody" /bookingmetadata: get: summary: Find booking metadata. description: Find booking metadata. tags: - Booking Processes v2 parameters: - in: query name: bookingMetadataId schema: type: string format: uuid example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617 description: The id of the booking metadata. - in: query name: bookingProcessId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the parent booking process. - in: query name: description schema: type: string example: Dagkaart description: The description of the booking. - in: query name: element1 schema: type: string example: 900 description: The first element of the booking. - in: query name: element2 schema: type: string example: 84956 description: The second element of the booking. - in: query name: documentCode schema: type: string example: FIKO-OPBR description: The document code of the booking. - in: query name: hasSeparateTaxLine schema: type: boolean example: true description: Whether the booking has a separate tax line. - in: query name: hasLinePerIdentifyingField schema: type: boolean example: true description: Whether the booking has a line per identifying field. - in: query name: hasLinePerSource schema: type: boolean example: true description: Whether the booking has a line per source. - in: query name: hasLinePerSource schema: type: boolean example: true description: Whether the booking has a line per source. - in: query name: hasLinePerConcession schema: type: boolean example: true description: Whether the booking has a line per concession. - in: query name: validAt schema: type: string example: 2024-01-01T00:00:00.000 description: Timestamp that the booking metadata is valid. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/BookingMetadataGetResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BookingMetadataPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/BookingMetadataPatchResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BookingGroupFieldsPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/BookingGroupFieldsPostResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BookingLineMetadataPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/BookingLineMetadataPostResponseBody" /bookinggroupfields: get: summary: Find booking group fields. description: Find booking group fields. tags: - Booking Processes v2 parameters: - in: query name: bookingGroupFieldId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the booking group field. - in: query name: bookingMetadataId schema: type: string format: uuid example: 63d4a7e2-62c3-428b-a4bb-e4ee45516f2a description: The id of the parent booking metadata. - in: query name: identifyingFieldValue schema: type: string example: 1737 description: The identifying field value. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/BookingGroupFieldsGetResponseBody" /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 responses: "200": description: OK /bookinglinemetadata: get: summary: Find booking line metadata. description: Find booking line metadata. tags: - Booking Processes v2 parameters: - in: query name: bookingLineMetadataId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the booking line metadata. - in: query name: bookingMetadataId schema: type: string format: uuid example: 63d4a7e2-62c3-428b-a4bb-e4ee45516f2a description: The id of the parent booking metadata. - in: query name: name schema: type: string example: Dakaart - BUS description: The name of the booking line metadata. - in: query name: incomingName schema: type: string example: Webshop description: The incoming name of the booking line metadata. - in: query name: identifyingFieldValue schema: type: string example: 1737 description: The identifying field value. - in: query name: concessionName schema: type: array items: type: string example: [BUS, RAIL] explode: false description: The name of the concession. - in: query name: lineType schema: type: array items: type: string example: [summary, analysis, tax] explode: false description: The type of the line. - in: query name: lineSense schema: type: array items: type: string example: [debit, credit] explode: false description: The sense of the line. - in: query name: element3 schema: type: string example: 603031 description: The element 3 of the booking line metadata. - in: query name: element4 schema: type: string example: Dagkaart description: The element 4 of the booking line metadata. - in: query name: extRef1 schema: type: string example: extRef1 - in: query name: extRef2 schema: type: string example: extRef2 - in: query name: extRef3 schema: type: string example: extRef3 - in: query name: extRef4 schema: type: string example: extRef4 - in: query name: extRef5 schema: type: string example: extRef5 - in: query name: extRef6 schema: type: string example: extRef6 responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/BookingLineMetadataGetResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/BookingLineMetadataPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/BookingLineMetadataPatchResponseBody" delete: summary: Delete booking line metadata. description: Delete booking line metadata. tags: - Booking Processes v2 responses: "200": description: OK /taxmetadata: get: summary: Find tax metadata. description: Find tax metadata. tags: - Metadata v2 parameters: - in: query name: taxMetadataId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the tax metadata. - in: query name: taxCode schema: type: string example: V21 description: The tax code. - in: query name: taxPercentageAmount schema: type: string example: 21 description: The tax percentage amount. - in: query name: description schema: type: string example: BTW VERKOOP HOOG 21% description: The description of the tax metadata. - in: query name: validAt schema: type: string format: date-time example: 2024-03-22T09:00:00 description: Timestamp that the metadata is valid. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/TaxMetadataGetResponseBody" post: summary: Add tax metadata. description: Add tax metadata. tags: - Metadata v2 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TaxMetadataPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/TaxMetadataPostResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/TaxMetadataPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/TaxMetadataPatchResponseBody" /sourcemetadata: get: summary: Find source metadata. description: Find source metadata. tags: - Metadata v2 parameters: - in: query name: sourceMetadataId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the source metadata. - in: query name: incomingName schema: type: string example: VerkoopEngine description: The name of the source. - in: query name: incomingEntity schema: type: string example: OrderLine description: The entity of the source. - in: query name: outgoingName schema: type: string example: Website Verkopen description: The name of the destination. - in: query name: businessOwner schema: type: string example: Corneel Verstoep description: The business owner of the source. - in: query name: rejectionProcessing schema: type: array items: type: string example: [mail, system] explode: false description: The rejection processing of the source. - in: query name: rejectionInfo schema: type: string example: api.htm.nl/v2/account/12345/msgs/abc description: The rejection info of the source. - in: query name: validAt schema: type: string example: 2024-01-01T00:00:00.000 description: Timestamp that the metadata is valid. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/SourceMetadataGetResponseBody" post: summary: Add source metadata. description: Add source metadata. tags: - Metadata v2 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SourceMetadataPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/SourceMetadataPostResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/SourceMetadataPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/SourceMetadataPatchResponseBody" /accountingperiodmetadata: get: summary: Find accounting period metadata. description: Find accounting period metadata. tags: - Metadata v2 parameters: - in: query name: accountingPeriodMetadataId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the accounting period metadata. - in: query name: accountingPeriod schema: type: string example: 2024-01 description: The accounting period. - in: query name: isOpen schema: type: boolean example: true description: Whether the accounting period is open. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/AccountingPeriodMetadataGetResponseBody" post: summary: Add accounting period metadata. description: Add accounting period metadata. tags: - Metadata v2 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/AccountingPeriodMetadataPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/AccountingPeriodMetadataPostResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/AccountingPeriodMetadataPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/AccountingPeriodMetadataPatchResponseBody" /concessionmetadata: get: summary: Find concession metadata. description: Find concession metadata. tags: - Metadata v2 parameters: - in: query name: concessionMetadataId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the concession metadata. - in: query name: name schema: type: array items: type: string example: [BUS, RAIL] explode: false description: The name of the concession. - in: query name: percentage schema: type: number example: 84.021 description: The percentage of the concession. - in: query name: validAt schema: type: string example: 2024-01-01T00:00:00.000 description: Timestamp that the metadata is valid. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/ConcessionMetadataGetResponseBody" post: summary: Add concession metadata. description: Add concession metadata. tags: - Metadata v2 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ConcessionMetadataPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/ConcessionMetadataPostResponseBody" /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 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/ConcessionMetadataPatchRequestBody" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/ConcessionMetadataPatchResponseBody" /metadataaudittrails: get: summary: Find metadata audit trails. description: Find metadata audit trails. deprecated: true tags: - Audit Trail v2 parameters: - in: query name: metadataAuditTrailId schema: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The id of the metadata audit trail. - in: query name: source schema: type: string example: FMT description: The source of the metadata change. - in: query name: endpoint schema: type: string format: url example: https://dev.api.htm.nl/v2/productmetadata description: The endpoint of the metadata change. - in: query name: operation schema: type: array items: type: string enum: - GET - POST - PATCH - DELETE example: POST explode: false description: The operation of the metadata change. - in: query name: responseCode schema: type: integer example: 200 description: The HTTP response code of the metadata change. - in: query name: requestBody schema: type: string format: json example: { "json": "data" } description: The request body of the metadata change. - in: query name: responseBody schema: type: string format: json example: { "json": "data" } description: The response body of the metadata change. - in: query name: user schema: type: string example: r.meeuws description: The id of the user who performed the metadata change. - in: query name: timestampBefore schema: type: string format: date-time example: 2024-01-01T00:00:00.000 description: The timestamp before the metadata change was made. - in: query name: timestampAfter schema: type: string format: date-time example: 2024-01-01T00:00:00.000 description: The timestamp after the metadata change was made. - in: query name: correlationId schema: type: string example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: The correlation id of the metadata change. responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/MetadataAuditTrailsGetResponseBody" post: summary: Add metadata audit trail. description: Add metadata audit trail. deprecated: true tags: - Audit Trail v2 requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/MetadataAuditTrailsPostRequestBody" responses: "201": description: Created content: application/json: schema: $ref: "#/components/schemas/MetadataAuditTrailsPostResponseBody" components: securitySchemes: bearerToken: type: http scheme: bearer bearerFormat: JWT schemas: unavailable: type: object TransactionItemsGetResponseBody: type: object properties: transactionItems: type: array items: type: object properties: transactionItemId: type: string example: afce35b2-1dff-4ace-98d0-4b9ac405c87d transactionType: type: string enum: - sales example: sales sourceName: type: string example: Verkoopengine 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 href: type: string nullable: true description: URI for pagination. example: null TransactionItemsPostRequestBody: type: object properties: transactionItems: type: array items: type: object properties: transactionType: type: string enum: - sales example: sales sourceName: type: string example: Verkoopengine 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 TransactionItemsPostResponseBody: 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/6fd466916c2241509f6225d6d568526b/runs/08584620957189579629541919368CU00/operations/c9f35a54-f5de-4bc6-991b-2219164aa56f?api-version=2022-05-01&sp=%2Fruns%2F08584620957189579629541919368CU00%2Foperations%2Fc9f35a54-f5de-4bc6-991b-2219164aa56f%2Fread&sv=1.0&sig=X8dPLkbtOdndMqNfZDxTEL_3k2MhE42YyL_2ATnSYj0&code=e0W6heo7VrzW-mtYzJlavaP99VZve_9fH-9NhIJW-ceJAzFu_yZ71g%3D%3D" 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: processingFailures: type: array items: type: object properties: 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 href: type: string nullable: true description: URI for pagination. example: null 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: transactionAuditTrails: type: array items: type: object properties: 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 href: type: string nullable: true example: null required: - transactionAuditTrails BookingProcessesGetResponseBody: type: object properties: bookingProcesses: type: array items: type: object properties: 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 href: type: string nullable: true description: URI for pagination. example: null required: - bookingProcesses 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: bookingMetadata: type: array items: type: object properties: bookingMetadataId: type: string format: uuid example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617 bookingProcessId: type: string format: uuid example: 37a8095b-19db-498f-9349-5f37d21c5bdf description: type: string example: Dagkaart element1: type: string example: 900 element2: type: string example: 84956 documentCode: type: string example: FIKO-OPBR 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 validTo: type: string format: date-time nullable: true example: null required: - bookingMetadataId - bookingProcessId - description - element1 - element2 - documentCode - hasSeparateTaxLine - hasLinePerIdentifyingField - hasLinePerSource - hasLinePerConcession - validFrom href: type: string nullable: true example: null required: - bookingMetadata BookingMetadataPostRequestBody: type: object properties: description: type: string example: Dagkaart element1: type: string example: 900 element2: type: string example: 84956 documentCode: type: string example: FIKO-OPBR 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 validTo: type: string format: date-time nullable: true example: null required: - description - element1 - element2 - 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: description: type: string nullable: true example: Dagkaart element1: type: string nullable: true example: 900 element2: type: string nullable: true example: 84956 documentCode: type: string nullable: true example: FIKO-OPBR 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 validTo: 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: bookingGroupFields: type: array items: type: object properties: bookingGroupFieldId: type: string format: uuid example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617 bookingGroupMetadataId: type: string format: uuid example: 12b4d128-0ab8-4a4a-944d-25b83de38b27 identifyingFieldValue: type: string example: 1737 required: - bookingGroupFieldId - bookingGroupMetadataId - identifyingFieldValue href: type: string nullable: true example: null required: - bookingGroupFields BookingLineMetadataPostRequestBody: type: object properties: name: type: string example: Dagkaart - BUS incomingName: type: string example: null nullable: true identifyingFieldValue: type: string example: null nullable: true concessionName: type: string example: RAIL nullable: true lineType: type: string enum: - summary - analysis - tax example: summary lineSense: type: string enum: - debit - credit example: credit element3: type: string example: 603031 nullable: true element4: 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 - lineType - lineSense BookingLineMetadataPostResponseBody: type: object properties: bookingLineMetadataId: type: string format: uuid example: 6ce10520-9a73-4cb4-b8dd-39ee46ceb617 required: - bookingLineMetadataId BookingLineMetadataGetResponseBody: type: object properties: bookingLineMetadata: type: array items: type: object properties: 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 - BUS incomingName: type: string example: null nullable: true identifyingFieldValue: type: string example: null nullable: true concessionName: type: string enum: - RAIL - BUS example: RAIL lineType: type: string enum: - summary - analysis - tax example: summary lineSense: type: string enum: - debit - credit example: credit element3: type: string example: 603031 nullable: true element4: 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 - lineType - lineSense href: type: string nullable: true example: null required: - bookingLineMetadata BookingLineMetadataPatchRequestBody: type: object properties: name: type: string nullable: true example: Dagkaart - BUS incomingName: type: string nullable: true example: null identifyingFieldValue: type: string nullable: true example: null concessionName: type: string nullable: true enum: - RAIL - BUS example: RAIL lineType: type: string nullable: true enum: - summary - analysis - tax example: summary lineSense: type: string nullable: true enum: - debit - credit example: credit element3: type: string nullable: true example: 603031 element4: type: string nullable: true example: dagkaart extRef1: type: string nullable: true example: null extRef2: type: string nullable: true example: null extRef3: type: string nullable: true example: 2025-02-17 extRef4: type: string nullable: true example: null extRef5: type: string nullable: true example: Webshop extRef6: type: string nullable: true example: null 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: r.meeuws 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: r.meeuws 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: taxMetadata: type: array items: type: object properties: taxMetadataId: type: string format: uuid example: 192882fe-3f51-46bb-bfdb-2e4cb31ef925 taxCode: type: string example: V21 taxPercentageAmount: type: integer example: 21 description: type: string example: BTW VERKOOP HOOG 21% 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 href: type: string nullable: true description: URI for pagination. example: null TaxMetadataPostRequestBody: type: object properties: taxCode: type: string example: V21 taxPercentageAmount: type: integer example: 21 description: type: string example: BTW VERKOOP HOOG 21% 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 taxPercentageAmount: type: integer example: 21 description: type: string example: BTW VERKOOP HOOG 21% validFrom: type: string format: date-time example: 2024-03-22T09:00:00 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: sourceMetadata: type: array items: $ref: "#/components/schemas/SourceMetadata" href: type: string nullable: true description: URI for pagination. example: null SourceMetadataPostRequestBody: type: object properties: incomingName: type: string example: VerkoopEngine incomingEntity: type: string example: OrderLine outgoingName: type: string example: Website Verkopen businessOwner: type: string example: Corneel Verstoep rejectionProcessing: type: string example: system rejectionInfo: type: string example: api.htm.nl/v2/account/12345/msgs/abc validFrom: type: string format: date-time example: 2024-01-01T00:00:00.000 validUntil: type: string format: date-time nullable: true example: null required: - sourceMetadataId - 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: VerkoopEngine incomingEntity: type: string example: OrderLine outgoingName: type: string example: Website Verkopen businessOwner: type: string example: Corneel Verstoep rejectionProcessing: type: string example: system rejectionInfo: type: string example: api.htm.nl/v2/account/12345/msgs/abc validFrom: type: string format: date-time example: 2024-01-01T00:00:00.000 validUntil: type: string format: date-time nullable: true example: null SourceMetadataPatchResponseBody: type: object properties: sourceMetadataId: type: string format: uuid example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb required: - sourceMetadataId AccountingPeriodMetadataGetResponseBody: type: object properties: accountingPeriodMetadata: type: array items: type: object properties: 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 href: type: string nullable: true description: URI for pagination. example: null 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: accountingPeriod: type: string example: 2024-01 isOpen: type: boolean example: true AccountingPeriodMetadataPatchResponseBody: type: object properties: accountingPeriodMetadataId: type: string format: uuid example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb required: - accountingPeriodMetadataId ConcessionMetadataGetResponseBody: type: object properties: concessionMetadata: type: array items: type: object properties: concessionMetadataId: type: string format: en example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb name: type: string enum: - RAIL - BUS example: RAIL 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 - concession - percentage - validFrom href: type: string nullable: true description: URI for pagination. example: null ConcessionMetadataPostRequestBody: type: object properties: name: type: string enum: - RAIL - BUS example: RAIL 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: - name - percentage - validFrom ConcessionMetadataPostResponseBody: type: object properties: concessionMetadataId: type: string format: uuid example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb required: - concessionMetadataId ConcessionMetadataPatchRequestBody: type: object properties: name: type: string enum: - RAIL - BUS example: RAIL 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 SourceMetadata: type: object properties: sourceMetadataId: type: string format: uuid example: bc4ea24a-27a5-40e8-bbbc-57a105afaaa0 incomingName: type: string example: VerkoopEngine incomingEntity: type: string example: OrderLine outgoingName: type: string example: Website Verkopen businessOwner: type: string example: Corneel Verstoep rejectionProcessing: type: string example: system rejectionInfo: type: string example: api.htm.nl/v2/account/12345/msgs/abc validFrom: type: string format: date-time example: 2024-01-01T00:00:00.000 validUntil: type: string format: date-time nullable: true example: null required: - sourceMetadataId - incomingName - incomingEntity - outgoingName - businessOwner - rejectionProcessing - rejectionInfo - validFrom 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"