From c000bf1e6e18dea27a955287f9277c23d746363b Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Mon, 2 Dec 2024 14:03:58 +0100 Subject: [PATCH] OVPAY-879 - Added bodies for creating trx. --- src/openapi/fiko/fiko-crud.yaml | 608 ++++++++++++++++++++------------ 1 file changed, 386 insertions(+), 222 deletions(-) diff --git a/src/openapi/fiko/fiko-crud.yaml b/src/openapi/fiko/fiko-crud.yaml index 7fb4d61..d3a48ac 100644 --- a/src/openapi/fiko/fiko-crud.yaml +++ b/src/openapi/fiko/fiko-crud.yaml @@ -123,25 +123,46 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "transactionItemId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", - "sourceName": "Verkoopengine", - "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", - "productCode": "HTM-MND-20", - "aggregationReference": "FIKO-123456", - "accountingSystemReference": "U4F-123456", - }, - ] + { + "transactionItems": + [ + { + "transactionItemId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", + "sourceName": "Verkoopengine", + "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", + "productCode": "HTM-MND-20", + "aggregationReference": "FIKO-123456", + "accountingSystemReference": "U4F-123456", + }, + { + "transactionItemId": "e63cc37b-4d87-4278-8eb5-1477e07edf3d", + "sourceName": "Verkoopengine", + "transactionId": "1001237", + "transactionLineId": "1", + "name": "HTM Maandkorting 20%", + "quantity": 1, + "taxCode": "V21", + "amountExclTax": 100, + "amountInclTax": 121, + "amountTax": 21, + "occurredOn": "2024-10-04T00:05:00Z", + "type": "debit", + "productCode": "HTM-MND-20", + "aggregationReference": "FIKO-123456", + "accountingSystemReference": "U4F-123456", + }, + ], + "href": null, + } post: summary: Add a finanicial transaction item. description: Add a finanicial transaction item. @@ -153,7 +174,23 @@ paths: application/json: schema: $ref: "#/components/schemas/unavailable" - example: "TBD" + example: + { + "sourceName": "Verkoopengine", + "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", + "productCode": "HTM-MND-20", + "aggregationReference": "FIKO-123456", + "accountingSystemReference": "U4F-123456", + } responses: "201": description: Created @@ -163,6 +200,69 @@ paths: $ref: "#/components/schemas/unavailable" example: { "transactionItemId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d" } + /transactionitems/bulk: + 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/unavailable" + example: + [ + { + "sourceName": "Verkoopengine", + "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", + "productCode": "HTM-MND-20", + "aggregationReference": null, + "accountingSystemReference": null, + }, + { + "sourceName": "Verkoopengine", + "transactionId": "1001237", + "transactionLineId": "1", + "name": "HTM Maandkorting 20%", + "quantity": 1, + "taxCode": "V21", + "amountExclTax": 100, + "amountInclTax": 121, + "amountTax": 21, + "occurredOn": "2024-10-04T00:05:00Z", + "type": "debit", + "productCode": "HTM-MND-20", + "aggregationReference": null, + "accountingSystemReference": null, + }, + ] + responses: + "201": + description: Created + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + example: + [ + { + "transactionItemId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", + }, + { + "transactionItemId": "e63cc37b-4d87-4278-8eb5-1477e07edf3d", + }, + ] /transactionitems/{transactionItemId}: parameters: - in: path @@ -362,17 +462,30 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "transactionAuditTrailId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", - "transactionItemId": "d667d293-aa82-4c9e-9b10-77cffc9058a1", - "user": "fiko", - "timestamp": "2022-01-01 00:00:00", - "action": "created", - "description": "Transaction created.", - "correlationId": "a3891560-3084-42cb-867c-f289e7cda47d", - }, - ] + { + "transactionAuditTrails": + [ + { + "transactionAuditTrailId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", + "transactionItemId": "d667d293-aa82-4c9e-9b10-77cffc9058a1", + "user": "fiko", + "timestamp": "2022-01-01 00:00:00", + "action": "created", + "description": "Transaction created.", + "correlationId": "a3891560-3084-42cb-867c-f289e7cda47d", + }, + { + "transactionAuditTrailId": "e63cc37b-4d87-4278-8eb5-1477e07edf3d", + "transactionItemId": "d667d293-aa82-4c9e-9b10-77cffc9058a1", + "user": "fiko", + "timestamp": "2022-01-01 00:01:00", + "action": "processed", + "description": "Transaction processed.", + "correlationId": "3e9d7d4b-8adf-4e7f-8251-be308f16d3de", + }, + ], + "href": null, + } /processingfailures: get: summary: Find processing failures. @@ -472,39 +585,43 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "processingFailureId": "37a8095b-19db-498f-9349-5f37d21c5bdf", - "transactionItemId": "000dd413-2d19-47c0-a9db-9efbb6bc39a2", - "department": "900", - "costCenter": "84955", - "costType": "619031", - "documentDate": "2022-01-01", - "documentCode": "VERK_FACTUUR", - "accountingPeriod": "2024/10", - "transactionDescription": "Dagkaart", - "contraAccountNumber": "220.10419", - "status": "open", - "occurence": 1, - "processingFailureInstances": - [ - { - "processingFailureInstanceId": "9afa9a6b-5b6a-4b0a-9c9e-4b0a5b6a4b0a", - "processingFailureId": "c93a5b6a-5b6a-4b0a-9c9e-4b0a5b6a4b0a", - "timestamp": "2022-01-01 00:00:00", - "failureReason": + { + "processingFailures": + [ + { + "processingFailureId": "37a8095b-19db-498f-9349-5f37d21c5bdf", + "transactionItemId": "000dd413-2d19-47c0-a9db-9efbb6bc39a2", + "department": "900", + "costCenter": "84955", + "costType": "619031", + "documentDate": "2022-01-01", + "documentCode": "VERK_FACTUUR", + "accountingPeriod": "2024/10", + "transactionDescription": "Dagkaart", + "contraAccountNumber": "220.10419", + "status": "open", + "occurence": 1, + "processingFailureInstances": + [ { - "failureReasonId": 12, - "reasonCode": "1234ABCD", - "reasonDesc": "description", + "processingFailureInstanceId": "9afa9a6b-5b6a-4b0a-9c9e-4b0a5b6a4b0a", + "processingFailureId": "c93a5b6a-5b6a-4b0a-9c9e-4b0a5b6a4b0a", + "timestamp": "2022-01-01 00:00:00", + "failureReason": + { + "failureReasonId": 12, + "reasonCode": "1234ABCD", + "reasonDesc": "description", + }, + "element": "costCenter", + "occurence": 1, + "change": "Adapt config", }, - "element": "costCenter", - "occurence": 1, - "change": "Adapt config", - }, - ], - }, - ] + ], + }, + ], + "href": null, + } /processingfailures/{processingFailureId}: parameters: - in: path @@ -710,69 +827,77 @@ paths: $ref: "#/components/schemas/unavailable" example: { - "productMetadataId": "39a87c2a-9011-4dfd-b35e-1245a98c2e61", - "productCode": "4031", - "department": "900", - "costCenter": "84955", - "costType": "619031", - "description": "O4031_Reisproduct HTM 1 dag Anoniem", - "documentCode": "VERK_FACTUUR", - "timestampUpdated": "2022-01-01T00:00:00", - "validFrom": "2024-03-22T09:00:00", - "validUntil": null, - "productContraAccounts": + "productMetadata": [ { - "contraAccountMetadata": - { - "contraAccountMetadataId": "e0af8c8f-d421-4567-a14e-48e2a1bb86fb", - "contraAccountCode": "123456", - "contraAccountNumber": "220.10419", - "validFrom": "2024-03-22T09:00:00", - "validUntil": null, - }, - "concession": { "concessionId": 2, "name": "bus" }, - "sourceMetadata": - { - "sourceMetadataId": "bc4ea24a-27a5-40e8-bbbc-57a105afaaa0", - "incomingName": "VerkoopEngine", - "incomingEntity": "OrderLine", - "outgoingName": "Website Verkopen", - "businessOwner": "Corneel Verstoep", - "rejectionProcessing": "system", - "rejectionInfo": "api.htm.nl/v2/account/12345/msgs/abc", - "validFrom": "2024-01-01T00:00:00.000", - "validUntil": null, - }, - "validFrom": "2024-03-22T09:00:00", - "validUntil": null, - }, - { - "contraAccountMetadata": - { - "contraAccountMetadataId": "69c562ca-5299-4585-ac92-46fb54aeb99e", - "contraAccountCode": "123456", - "contraAccountNumber": "220.10419", - "validFrom": "2024-03-22T09:00:00", - "validUntil": null, - }, - "concession": { "concessionId": 1, "name": "bus" }, - "sourceMetadata": - { - "sourceMetadataId": "bc4ea24a-27a5-40e8-bbbc-57a105afaaa0", - "incomingName": "VerkoopEngine", - "incomingEntity": "OrderLine", - "outgoingName": "Website Verkopen", - "businessOwner": "Corneel Verstoep", - "rejectionProcessing": "system", - "rejectionInfo": "api.htm.nl/v2/account/12345/msgs/abc", - "validFrom": "2024-01-01T00:00:00.000", - "validUntil": null, - }, + "productMetadataId": "39a87c2a-9011-4dfd-b35e-1245a98c2e61", + "productCode": "4031", + "department": "900", + "costCenter": "84955", + "costType": "619031", + "description": "O4031_Reisproduct HTM 1 dag Anoniem", + "documentCode": "VERK_FACTUUR", + "timestampUpdated": "2022-01-01T00:00:00", "validFrom": "2024-03-22T09:00:00", "validUntil": null, + "productContraAccounts": + [ + { + "contraAccountMetadata": + { + "contraAccountMetadataId": "e0af8c8f-d421-4567-a14e-48e2a1bb86fb", + "contraAccountCode": "123456", + "contraAccountNumber": "220.10419", + "validFrom": "2024-03-22T09:00:00", + "validUntil": null, + }, + "concession": + { "concessionId": 2, "name": "bus" }, + "sourceMetadata": + { + "sourceMetadataId": "bc4ea24a-27a5-40e8-bbbc-57a105afaaa0", + "incomingName": "VerkoopEngine", + "incomingEntity": "OrderLine", + "outgoingName": "Website Verkopen", + "businessOwner": "Corneel Verstoep", + "rejectionProcessing": "system", + "rejectionInfo": "api.htm.nl/v2/account/12345/msgs/abc", + "validFrom": "2024-01-01T00:00:00.000", + "validUntil": null, + }, + "validFrom": "2024-03-22T09:00:00", + "validUntil": null, + }, + { + "contraAccountMetadata": + { + "contraAccountMetadataId": "69c562ca-5299-4585-ac92-46fb54aeb99e", + "contraAccountCode": "123456", + "contraAccountNumber": "220.10419", + "validFrom": "2024-03-22T09:00:00", + "validUntil": null, + }, + "concession": + { "concessionId": 1, "name": "bus" }, + "sourceMetadata": + { + "sourceMetadataId": "bc4ea24a-27a5-40e8-bbbc-57a105afaaa0", + "incomingName": "VerkoopEngine", + "incomingEntity": "OrderLine", + "outgoingName": "Website Verkopen", + "businessOwner": "Corneel Verstoep", + "rejectionProcessing": "system", + "rejectionInfo": "api.htm.nl/v2/account/12345/msgs/abc", + "validFrom": "2024-01-01T00:00:00.000", + "validUntil": null, + }, + "validFrom": "2024-03-22T09:00:00", + "validUntil": null, + }, + ], }, ], + "href": null, } post: summary: Add product metadata. @@ -988,15 +1113,19 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "contraAccountMetadataId": "37a8095b-19db-498f-9349-5f37d21c5bdf", - "contraAccountCode": "123456", - "contraAccountNumber": "220.10419", - "validFrom": "2024-03-22T09:00:00", - "validUntil": null, - }, - ] + { + "contraAccountMetadata": + [ + { + "contraAccountMetadataId": "37a8095b-19db-498f-9349-5f37d21c5bdf", + "contraAccountCode": "123456", + "contraAccountNumber": "220.10419", + "validFrom": "2024-03-22T09:00:00", + "validUntil": null, + }, + ], + "href": null, + } post: summary: Add contra account metadata. description: Add contra account metadata. @@ -1153,32 +1282,36 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "taxMetadataId": "bc4ea24a-27a5-40e8-bbbc-57a105afaaa0", - "taxCode": "V21", - "taxPercentageAmount": 21, - "description": "BTW VERKOOP HOOG 21%", - "validFrom": "2024-01-01T00:00:00.000", - "validUntil": null, - }, - { - "taxMetadataId": "73c47af3-7c8b-44d3-b599-9b6f5a587a82", - "taxCode": "V09", - "taxPercentageAmount": 9, - "description": "BTW VERKOOP LAAG 9%", - "validFrom": "2024-01-01T00:00:00.000", - "validUntil": null, - }, - { - "taxMetadataId": "423b879c-e8db-4ba2-a2b4-0adfe037043d", - "taxCode": "V0", - "taxPercentageAmount": 0, - "description": "BTW VERKOOP NUL", - "validFrom": "2024-01-01T00:00:00.000", - "validUntil": null, - }, - ] + { + "taxMetadata": + [ + { + "taxMetadataId": "bc4ea24a-27a5-40e8-bbbc-57a105afaaa0", + "taxCode": "V21", + "taxPercentageAmount": 21, + "description": "BTW VERKOOP HOOG 21%", + "validFrom": "2024-01-01T00:00:00.000", + "validUntil": null, + }, + { + "taxMetadataId": "73c47af3-7c8b-44d3-b599-9b6f5a587a82", + "taxCode": "V09", + "taxPercentageAmount": 9, + "description": "BTW VERKOOP LAAG 9%", + "validFrom": "2024-01-01T00:00:00.000", + "validUntil": null, + }, + { + "taxMetadataId": "423b879c-e8db-4ba2-a2b4-0adfe037043d", + "taxCode": "V0", + "taxPercentageAmount": 0, + "description": "BTW VERKOOP NUL", + "validFrom": "2024-01-01T00:00:00.000", + "validUntil": null, + }, + ], + "href": null, + } post: summary: Add tax metadata. description: Add tax metadata. @@ -1351,19 +1484,23 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "sourceMetadataId": "bc4ea24a-27a5-40e8-bbbc-57a105afaaa0", - "incomingName": "VerkoopEngine", - "incomingEntity": "OrderLine", - "outgoingName": "Website Verkopen", - "businessOwner": "Corneel Verstoep", - "rejectionProcessing": "system", - "rejectionInfo": "api.htm.nl/v2/account/12345/msgs/abc", - "validFrom": "2024-01-01T00:00:00.000", - "validUntil": null, - }, - ] + { + "sourceMetadata": + [ + { + "sourceMetadataId": "bc4ea24a-27a5-40e8-bbbc-57a105afaaa0", + "incomingName": "VerkoopEngine", + "incomingEntity": "OrderLine", + "outgoingName": "Website Verkopen", + "businessOwner": "Corneel Verstoep", + "rejectionProcessing": "system", + "rejectionInfo": "api.htm.nl/v2/account/12345/msgs/abc", + "validFrom": "2024-01-01T00:00:00.000", + "validUntil": null, + }, + ], + "href": null, + } post: summary: Add source metadata. description: Add source metadata. @@ -1512,13 +1649,22 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "accountingPeriodMetadataId": "37a8095b-19db-498f-9349-5f37d21c5bdf", - "accountingPeriod": "2024-01", - "isOpen": true, - }, - ] + { + "accountingPeriodMetadata": + [ + { + "accountingPeriodMetadataId": "37a8095b-19db-498f-9349-5f37d21c5bdf", + "accountingPeriod": "2024-01", + "isOpen": false, + }, + { + "accountingPeriodMetadataId": "0302c651-f040-4cbc-8a4d-90dc82f29a32", + "accountingPeriod": "2024-02", + "isOpen": true, + }, + ], + "href": null, + } post: summary: Add accounting period metadata. description: Add accounting period metadata. @@ -1659,22 +1805,26 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "concessionMetadataId": "37a8095b-19db-498f-9349-5f37d21c5bdf", - "concession": { "concessionId": 1, "name": "rail" }, - "percentage": 84.021, - "validFrom": "2024-01-01T00:00:00.000", - "validUntil": null, - }, - { - "concessionMetadataId": "5ac3a5a8-4b9b-4a6a-9b1f-86ae8d6d4a9b", - "concession": { "concessionId": 2, "name": "bus" }, - "percentage": 15.979, - "validFrom": "2024-01-01T00:00:00.000", - "validUntil": null, - }, - ] + { + "concessionMetadata": + [ + { + "concessionMetadataId": "37a8095b-19db-498f-9349-5f37d21c5bdf", + "concession": { "concessionId": 1, "name": "rail" }, + "percentage": 84.021, + "validFrom": "2024-01-01T00:00:00.000", + "validUntil": null, + }, + { + "concessionMetadataId": "5ac3a5a8-4b9b-4a6a-9b1f-86ae8d6d4a9b", + "concession": { "concessionId": 2, "name": "bus" }, + "percentage": 15.979, + "validFrom": "2024-01-01T00:00:00.000", + "validUntil": null, + }, + ], + "href": null, + } post: summary: Add concession metadata. description: Add concession metadata. @@ -1874,25 +2024,31 @@ paths: $ref: "#/components/schemas/unavailable" example: { - "metadataAuditTrailId": "37a8095b-19db-498f-9349-5f37d21c5bdf", - "productMetadataId": "37a8095b-19db-498f-9349-5f37d21c5bdf", - "concessionMetadataId": null, - "contraAccountMetadataId": null, - "taxMetadataId": null, - "sourceMetadataId": null, - "accountingPeriodMetadataId": null, - "user": "rmeeuws", - "timestamp": "2022-01-01 00:00:00", - "correlationId": "a3891560-3084-42cb-867c-f289e7cda47d", - "metadataChanges": + "metadataAuditTrails": [ { - "metadataChangesId": "43a481a7-0845-460f-b44a-b4112cc2e193", - "fieldName": "businessOwner", - "oldValue": "Corneel Verstoep", - "newValue": "Jan-Willem Vermeij", + "metadataAuditTrailId": "37a8095b-19db-498f-9349-5f37d21c5bdf", + "productMetadataId": "37a8095b-19db-498f-9349-5f37d21c5bdf", + "concessionMetadataId": null, + "contraAccountMetadataId": null, + "taxMetadataId": null, + "sourceMetadataId": null, + "accountingPeriodMetadataId": null, + "user": "rmeeuws", + "timestamp": "2022-01-01 00:00:00", + "correlationId": "a3891560-3084-42cb-867c-f289e7cda47d", + "metadataChanges": + [ + { + "metadataChangesId": "43a481a7-0845-460f-b44a-b4112cc2e193", + "fieldName": "businessOwner", + "oldValue": "Corneel Verstoep", + "newValue": "Jan-Willem Vermeij", + }, + ], }, ], + "href": null, } /concessions: get: @@ -1908,11 +2064,15 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { "concessionId": 1, "name": "rail" }, - { "concessionId": 2, "name": "bus" }, - { "concessionId": 3, "name": "not_applicable" }, - ] + { + "concessions": + [ + { "concessionId": 1, "name": "rail" }, + { "concessionId": 2, "name": "bus" }, + { "concessionId": 3, "name": "not_applicable" }, + ], + "href": null, + } /failurereasons: get: summary: Get all failure reasons. @@ -1927,18 +2087,22 @@ paths: schema: $ref: "#/components/schemas/unavailable" example: - [ - { - "failureReasonId": 1, - "reasonCode": "002", - "reasonDesc": "Contra account does not exist", - }, - { - "failureReasonId": 2, - "reasonCode": "003", - "reasonDesc": "Accouting period closed", - }, - ] + { + "failureReasons": + [ + { + "failureReasonId": 1, + "reasonCode": "002", + "reasonDesc": "Contra account does not exist", + }, + { + "failureReasonId": 2, + "reasonCode": "003", + "reasonDesc": "Accouting period closed", + }, + ], + "href": null, + } components: securitySchemes: bearerToken: