From 093b826f2bbb99bbd57d84301dc68d490a8739eb Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Tue, 28 Jan 2025 11:00:09 +0100 Subject: [PATCH 1/7] OVPAY-1433 - Added order fulfillment and order creation v2.2. --- src/openapi/orders/service_engine_orders.yaml | 451 +++++++++++++----- 1 file changed, 331 insertions(+), 120 deletions(-) diff --git a/src/openapi/orders/service_engine_orders.yaml b/src/openapi/orders/service_engine_orders.yaml index dbee45f..6242cf5 100644 --- a/src/openapi/orders/service_engine_orders.yaml +++ b/src/openapi/orders/service_engine_orders.yaml @@ -469,6 +469,101 @@ paths: ], }, } + v2.2: + summary: Order fulfillment v2.2 + description: Order fulfillment v2.2 + value: + { + "orderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9", + "customerProfileId": 1337, + "languageId": 1, + "billingAddressId": 1, + "shippingAddressId": 1, + "createdOn": "2024-03-22T09:00:00", + "orderStatusId": 4, + "orderLines": + [ + { + "orderLineId": "2ba39cae-c401-446b-ae5c-2d6d85b3df1f", + "productId": 1, + "quantity": 1, + "createdOn": "2024-03-22T09:00:00", + "validFrom": "2024-03-22T09:00:00", + "validUntil": null, + "orderLineStatusId": 4, + "tokens": + [ + { + "tokenTypeId": 1, + "ovPayTokenId": 1, + "serviceReferenceId": "NLOV1234567ABCDEFG", + "amount": 34, + "ovpasNumber": "OV34567", + "verificationCode": "A7H6", + "personalAccountData": + { + "name": "Jan de Vries", + "dateOfBirth": "01-01-1970", + "photoReference": "DSC_0502.JPG", + "fileType": "image/jpg", + "challengeTypeId": 1, + "oneTimePassword": "H5Iiz3JTaQeIV8p", + }, + }, + ], + }, + ], + "payments": + [ + { + "createdOn": "2024-03-22T09:00:00", + "amountDebit": 121, + "paymentMethodId": 1, + "touchPointId": 1, + "isRefund": false, + "htmPaymentReference": "HTM-1234", + "pspPaymentReference": "Buckaroo-1234", + "paymentStatuses": + [ + { + "createdOn": "2024-03-22T09:00:00", + "statusCode": "190", + "statusDescription": "Success", + "statusSubCode": "S001", + "statusSubDescription": "PaymentSuccessFul", + }, + ], + "payPush": + { + "consumerIssuer": "ABN AMRO", + "transactionId": "0000000000000001", + "consumerName": "J. de Vries", + "consumerIBAN": "NL44RABO0123456789", + "consumerBIC": "RABONL2U", + }, + }, + ], + "customer": + { + "birthname": "Jan", + "surname": "Vries", + "prefix": "de", + "emailAddress": "jandevries@outlook.com", + "dateOfBirth": "1970-01-01", + "addresses": + [ + { + "addressTypeId": 1, + "street": "Kon. Julianaplein", + "houseNumber": 10, + "houseNumberSuffix": "a", + "postalCode": "2595 AA", + "city": "Den Haag", + "country": "NL", + }, + ], + }, + } responses: "201": description: Created @@ -858,131 +953,247 @@ paths: application/json: schema: $ref: "#/components/schemas/unavailable" - example: - { - "externalOrderId": null, - "customerProfileId": 1337, - "totalAmount": 121, - "touchPoint": + examples: + v2: + summary: Order creation v2.1 + description: Order creation v2.1 + value: { - "salesTouchpointId": 3, - "name": "Website (Perplex)", - "isActive": true, - "retailerId": 1001, - }, - "languageId": 1, - "billingAddressId": 1, - "shippingAddressId": 1, - "createdOn": "2024-03-22T09:00:00", - "order_OrderStatus": - [ - { - "orderStatusId": 1, - "createdOn": "2024-03-22T09:00:00", - "description": "Concept order", - }, - ], - "orderLines": - [ - { - "externalOrderLineId": null, - "productId": 1, - "productName": "HTM Maandkorting 20%", - "productCode": "HTM-MND-20", - "productDescription": "HTM Maandkorting 20%", - "taxAmount": 21, - "taxMetadataId": "7275b910-37d9-40c1-aaac-80d8ceb62ff9", - "amountExclTax": 100, - "amountInclTax": 121, - "quantity": 1, - "orderLineTerms": - [{ "termsUrl": "generalTermsAndConditions.pdf" }], - "validFrom": "2024-03-22T09:00:00", - "validUntil": "2025-03-22T09:00:00", - "orderLineStatusId": 4, - "createdOn": "2024-03-22T09:00:00", - "customerTokens": - [ - { - "tokenTypeId": 1, - "ovPayTokenId": 1, - "serviceReferenceId": "NLOV1234567ABCDEFG", - "amount": 34, - "ovpasNumber": "OV34567", - "verificationCode": "A7H6", - "personalAccountData": - { - "name": "Jan de Vries", - "dateOfBirth": "01-01-1970", - "photoReference": "DSC_0502.JPG", - "fileType": "image/jpg", - "challengeTypeId": 1, - "oneTimePassword": "H5Iiz3JTaQeIV8p", - }, - }, - ], - "orderAccountingStatuses": - [ - { - "accountingStatusId": 1, - "createdOn": "2024-03-22T09:00:00", - "description": "Financiele transactie voor de FIKO.", - }, - ], - }, - ], - "payments": - [ - { - "createdOn": "2024-03-22T09:00:00", - "amountDebit": 121, - "paymentMethodId": 1, - "touchPointId": 1, - "isRefund": false, - "htmPaymentReference": "HTM-1234", - "pspPaymentReference": "Buckaroo-1234", - "paymentStatuses": - [ - { - "createdOn": "2024-03-22T09:00:00", - "statusCode": "190", - "statusDescription": "Success", - "statusSubCode": "S001", - "statusSubDescription": "PaymentSuccessFul", - }, - ], - "mandateInput": - { - "directDebitMandateTypeId": 1, - "createdOn": "2024-03-22T09:00:00", - "bic": "RABONL2U", - "iban": "NL44RABO0123456789", - "ascription": "J. de Vries", - "place": "Den Haag", - }, - }, - ], - "orderCustomer": - { - "birthname": "Jan", - "surname": "Vries", - "prefix": "de", - "emailAddress": "jandevries@outlook.com", - "dateOfBirth": "1970-01-01", - "orderCustomerAddresses": + "externalOrderId": null, + "customerProfileId": 1337, + "totalAmount": 121, + "touchPoint": + { + "salesTouchpointId": 3, + "name": "Website (Perplex)", + "isActive": true, + "retailerId": 1001, + }, + "languageId": 1, + "billingAddressId": 1, + "shippingAddressId": 1, + "createdOn": "2024-03-22T09:00:00", + "order_OrderStatus": [ { - "addressTypeId": 1, - "street": "Kon. Julianaplein", - "houseNumber": 10, - "houseNumberSuffix": "a", - "postalCode": "2595 AA", - "city": "Den Haag", - "country": "NL", + "orderStatusId": 1, + "createdOn": "2024-03-22T09:00:00", + "description": "Concept order", }, ], - }, - } + "orderLines": + [ + { + "externalOrderLineId": null, + "productId": 1, + "productName": "HTM Maandkorting 20%", + "productCode": "HTM-MND-20", + "productDescription": "HTM Maandkorting 20%", + "taxAmount": 21, + "taxMetadataId": "7275b910-37d9-40c1-aaac-80d8ceb62ff9", + "amountExclTax": 100, + "amountInclTax": 121, + "quantity": 1, + "orderLineTerms": + [{ "termsUrl": "generalTermsAndConditions.pdf" }], + "validFrom": "2024-03-22T09:00:00", + "validUntil": "2025-03-22T09:00:00", + "orderLineStatusId": 4, + "createdOn": "2024-03-22T09:00:00", + "customerTokens": + [ + { + "tokenTypeId": 1, + "ovPayTokenId": 1, + "serviceReferenceId": "NLOV1234567ABCDEFG", + "amount": 34, + "ovpasNumber": "OV34567", + "verificationCode": "A7H6", + "personalAccountData": + { + "name": "Jan de Vries", + "dateOfBirth": "01-01-1970", + "photoReference": "DSC_0502.JPG", + "fileType": "image/jpg", + "challengeTypeId": 1, + "oneTimePassword": "H5Iiz3JTaQeIV8p", + }, + }, + ], + "orderAccountingStatuses": + [ + { + "accountingStatusId": 1, + "createdOn": "2024-03-22T09:00:00", + "description": "Financiele transactie voor de FIKO.", + }, + ], + }, + ], + "payments": + [ + { + "createdOn": "2024-03-22T09:00:00", + "amountDebit": 121, + "paymentMethodId": 1, + "touchPointId": 1, + "isRefund": false, + "htmPaymentReference": "HTM-1234", + "pspPaymentReference": "Buckaroo-1234", + "paymentStatuses": + [ + { + "createdOn": "2024-03-22T09:00:00", + "statusCode": "190", + "statusDescription": "Success", + "statusSubCode": "S001", + "statusSubDescription": "PaymentSuccessFul", + }, + ], + "mandateInput": + { + "directDebitMandateTypeId": 1, + "createdOn": "2024-03-22T09:00:00", + "bic": "RABONL2U", + "iban": "NL44RABO0123456789", + "ascription": "J. de Vries", + "place": "Den Haag", + }, + }, + ], + "orderCustomer": + { + "birthname": "Jan", + "surname": "Vries", + "prefix": "de", + "emailAddress": "jandevries@outlook.com", + "dateOfBirth": "1970-01-01", + "orderCustomerAddresses": + [ + { + "addressTypeId": 1, + "street": "Kon. Julianaplein", + "houseNumber": 10, + "houseNumberSuffix": "a", + "postalCode": "2595 AA", + "city": "Den Haag", + "country": "NL", + }, + ], + }, + } + v2.2: + summary: Order creation v2.2 + description: Order creation v2.2 + value: + { + "externalOrderId": null, + "customerProfileId": 1337, + "touchPointId": 3, + "languageId": 1, + "billingAddressId": 1, + "shippingAddressId": 1, + "createdOn": "2024-03-22T09:00:00", + "order_OrderStatus": + [ + { + "orderStatusId": 1, + "createdOn": "2024-03-22T09:00:00", + "description": "Concept order", + }, + ], + "orderLines": + [ + { + "externalOrderLineId": null, + "productId": 1, + "quantity": 1, + "validFrom": "2024-03-22T09:00:00", + "validUntil": "2025-03-22T09:00:00", + "orderLineStatusId": 4, + "createdOn": "2024-03-22T09:00:00", + "customerTokens": + [ + { + "tokenTypeId": 1, + "ovPayTokenId": 1, + "serviceReferenceId": "NLOV1234567ABCDEFG", + "amount": 34, + "ovpasNumber": "OV34567", + "verificationCode": "A7H6", + "personalAccountData": + { + "name": "Jan de Vries", + "dateOfBirth": "01-01-1970", + "photoReference": "DSC_0502.JPG", + "fileType": "image/jpg", + "challengeTypeId": 1, + "oneTimePassword": "H5Iiz3JTaQeIV8p", + }, + }, + ], + "orderAccountingStatuses": + [ + { + "accountingStatusId": 1, + "createdOn": "2024-03-22T09:00:00", + "description": "Financiele transactie voor de FIKO.", + }, + ], + }, + ], + "payments": + [ + { + "createdOn": "2024-03-22T09:00:00", + "amountDebit": 121, + "paymentMethodId": 1, + "touchPointId": 1, + "isRefund": false, + "htmPaymentReference": "HTM-1234", + "pspPaymentReference": "Buckaroo-1234", + "paymentStatuses": + [ + { + "createdOn": "2024-03-22T09:00:00", + "statusCode": "190", + "statusDescription": "Success", + "statusSubCode": "S001", + "statusSubDescription": "PaymentSuccessFul", + }, + ], + "mandateInput": + { + "directDebitMandateTypeId": 1, + "createdOn": "2024-03-22T09:00:00", + "bic": "RABONL2U", + "iban": "NL44RABO0123456789", + "ascription": "J. de Vries", + "place": "Den Haag", + }, + }, + ], + "orderCustomer": + { + "birthname": "Jan", + "surname": "Vries", + "prefix": "de", + "emailAddress": "jandevries@outlook.com", + "dateOfBirth": "1970-01-01", + "orderCustomerAddresses": + [ + { + "addressTypeId": 1, + "street": "Kon. Julianaplein", + "houseNumber": 10, + "houseNumberSuffix": "a", + "postalCode": "2595 AA", + "city": "Den Haag", + "country": "NL", + }, + ], + }, + } responses: "201": description: Created From 2a1641cd4abc73756c735d264b43c5f060c3fb38 Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Mon, 3 Feb 2025 13:28:00 +0100 Subject: [PATCH 2/7] OVPAY-1433 - Removed customerProfileId from v2.2. --- src/openapi/orders/service_engine_orders.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/openapi/orders/service_engine_orders.yaml b/src/openapi/orders/service_engine_orders.yaml index 6242cf5..8cb39bd 100644 --- a/src/openapi/orders/service_engine_orders.yaml +++ b/src/openapi/orders/service_engine_orders.yaml @@ -475,7 +475,6 @@ paths: value: { "orderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9", - "customerProfileId": 1337, "languageId": 1, "billingAddressId": 1, "shippingAddressId": 1, @@ -1088,7 +1087,6 @@ paths: value: { "externalOrderId": null, - "customerProfileId": 1337, "touchPointId": 3, "languageId": 1, "billingAddressId": 1, From c6a5a456dd2409771775babda0cdd8b8ed3e2d63 Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Mon, 3 Feb 2025 13:46:43 +0100 Subject: [PATCH 3/7] OVPAY-1433 - Removed touchPointId from v2.2. --- src/openapi/orders/service_engine_orders.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/openapi/orders/service_engine_orders.yaml b/src/openapi/orders/service_engine_orders.yaml index 8cb39bd..12207f8 100644 --- a/src/openapi/orders/service_engine_orders.yaml +++ b/src/openapi/orders/service_engine_orders.yaml @@ -518,7 +518,6 @@ paths: "createdOn": "2024-03-22T09:00:00", "amountDebit": 121, "paymentMethodId": 1, - "touchPointId": 1, "isRefund": false, "htmPaymentReference": "HTM-1234", "pspPaymentReference": "Buckaroo-1234", @@ -1087,7 +1086,6 @@ paths: value: { "externalOrderId": null, - "touchPointId": 3, "languageId": 1, "billingAddressId": 1, "shippingAddressId": 1, @@ -1146,7 +1144,6 @@ paths: "createdOn": "2024-03-22T09:00:00", "amountDebit": 121, "paymentMethodId": 1, - "touchPointId": 1, "isRefund": false, "htmPaymentReference": "HTM-1234", "pspPaymentReference": "Buckaroo-1234", From 3f4001ed4d5650e42a17f9d2a2ea9814128c553e Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Mon, 3 Feb 2025 14:56:01 +0100 Subject: [PATCH 4/7] OVPAY-1433 - Fulfillment now accepts externalOrderId and externalOrderLineId. --- src/openapi/orders/service_engine_orders.yaml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/openapi/orders/service_engine_orders.yaml b/src/openapi/orders/service_engine_orders.yaml index 12207f8..058a3dc 100644 --- a/src/openapi/orders/service_engine_orders.yaml +++ b/src/openapi/orders/service_engine_orders.yaml @@ -474,7 +474,7 @@ paths: description: Order fulfillment v2.2 value: { - "orderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9", + "externalOrderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9", "languageId": 1, "billingAddressId": 1, "shippingAddressId": 1, @@ -483,7 +483,7 @@ paths: "orderLines": [ { - "orderLineId": "2ba39cae-c401-446b-ae5c-2d6d85b3df1f", + "externalOrderLineId": "2ba39cae-c401-446b-ae5c-2d6d85b3df1f", "productId": 1, "quantity": 1, "createdOn": "2024-03-22T09:00:00", @@ -579,7 +579,8 @@ paths: description: Order fulfillment v2 value: { - "orderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9", + "orderId": "c73ff153-72e0-403f-a276-e86f544406f9", + "externalOrderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9", "orderNumber": "123456", "customerProfileId": 1337, "totalAmount": 121, @@ -591,7 +592,8 @@ paths: "orderLines": [ { - "orderLineId": "2ba39cae-c401-446b-ae5c-2d6d85b3df1f", + "orderLineId": "cccada2c-d5ea-48ab-b4be-f590e16b5468", + "externalOrderLineId": "2ba39cae-c401-446b-ae5c-2d6d85b3df1f", "productId": 1, "productName": "HTM Maandkorting 20%", "productCode": "HTM-MND-20", From 0d61d06198052cc90c59936ad5fbaa715a87627d Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Thu, 6 Feb 2025 10:49:44 +0100 Subject: [PATCH 5/7] OVPAY-1518 - Update TransactionItems data mode. --- src/openapi/fiko/fiko-crud.yaml | 126 ++++++++++++++++++++++++++------ 1 file changed, 104 insertions(+), 22 deletions(-) diff --git a/src/openapi/fiko/fiko-crud.yaml b/src/openapi/fiko/fiko-crud.yaml index 1c7b409..6c0fd0a 100644 --- a/src/openapi/fiko/fiko-crud.yaml +++ b/src/openapi/fiko/fiko-crud.yaml @@ -45,12 +45,6 @@ paths: application/json: schema: $ref: "#/components/schemas/TransactionItemsBulkPostResponseBody" - "400": - description: Bad request - content: - application/json: - schema: - $ref: "#/components/schemas/TransactionItemsBulkBadRequestResponseBody" /transactionitems: get: summary: Find transaction items. @@ -65,6 +59,15 @@ paths: 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: @@ -148,6 +151,15 @@ paths: type: string example: HTM-MND-20 description: The product code 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: @@ -160,15 +172,6 @@ paths: type: string example: U4F-123456 description: The accounting system reference of the transaction. %00 is searching for NULL-values. - - in: query - name: highestProcessingFailureStatus - schema: - type: array - items: - type: string - example: [open] - explode: false - description: Find the highest processing failure status of the transaction. %00 is searching for NULL-values. responses: "200": description: OK @@ -1403,6 +1406,11 @@ components: transactionItemId: type: string example: afce35b2-1dff-4ace-98d0-4b9ac405c87d + transactionType: + type: string + enum: + - sales + example: sales sourceName: type: string example: Verkoopengine @@ -1444,6 +1452,16 @@ components: productCode: type: string example: HTM-MND-20 + status: + type: string + enum: + - created + - succeeded + - failed + - returned to trx-db + - returned to src + - re-entered + example: created aggregationReference: type: string nullable: true @@ -1454,6 +1472,7 @@ components: example: U4F-123456 required: - transactionItemId + - transactionType - sourceName - transactionId - name @@ -1464,7 +1483,7 @@ components: - amountTax - occurredOn - type - - productCode + - status href: type: string nullable: true @@ -1473,6 +1492,11 @@ components: TransactionItemsPostRequestBody: type: object properties: + transactionType: + type: string + enum: + - sales + example: sales sourceName: type: string example: Verkoopengine @@ -1514,7 +1538,18 @@ components: productCode: type: string example: HTM-MND-20 + status: + type: string + enum: + - created + - succeeded + - failed + - returned to trx-db + - returned to src + - re-entered + example: created required: + - transactionType - sourceName - transactionId - name @@ -1525,7 +1560,7 @@ components: - amountTax - occurredOn - type - - productCode + - status TransactionItemsPostResponseBody: type: object properties: @@ -1543,6 +1578,11 @@ components: items: type: object properties: + transactionType: + type: string + enum: + - sales + example: sales sourceName: type: string example: Verkoopengine @@ -1586,6 +1626,7 @@ components: example: HTM-MND-20 required: - sourceName + - transactionType - transactionId - name - quantity @@ -1662,6 +1703,47 @@ components: TransactionItemsPatchRequestBody: type: object properties: + 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 + productCode: + type: string + example: HTM-MND-20 + status: + type: string + enum: + - created + - succeeded + - failed + - returned to trx-db + - returned to src + - re-entered + example: created aggregationReference: type: string nullable: true @@ -2587,7 +2669,7 @@ components: taxCode: type: string example: V21 - taxPercentageAmount: + taxPercentageAmount: type: integer example: 21 description: @@ -2617,7 +2699,7 @@ components: sourceMetadata: type: array items: - $ref: "#/components/schemas/SourceMetadata" + $ref: '#/components/schemas/SourceMetadata' href: type: string nullable: true @@ -2789,7 +2871,7 @@ components: format: uuid example: e0af8c8f-d421-4567-a14e-48e2a1bb86fb concession: - $ref: "#/components/schemas/Concession" + $ref: '#/components/schemas/Concession' percentage: type: number example: 84.021 @@ -2876,7 +2958,7 @@ components: concessions: type: array items: - $ref: "#/components/schemas/Concession" + $ref: '#/components/schemas/Concession' href: type: string nullable: true @@ -2888,7 +2970,7 @@ components: failureReasons: type: array items: - $ref: "#/components/schemas/FailureReason" + $ref: '#/components/schemas/FailureReason' href: type: string nullable: true From 7a5a6685b518a7260d775ca3496be76eb0b0d586 Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Thu, 6 Feb 2025 12:11:14 +0100 Subject: [PATCH 6/7] OVPAY-1518 - Update ProcessingFailures. --- src/openapi/fiko/fiko-crud.yaml | 442 ++++++++------------------------ 1 file changed, 103 insertions(+), 339 deletions(-) diff --git a/src/openapi/fiko/fiko-crud.yaml b/src/openapi/fiko/fiko-crud.yaml index 6c0fd0a..8f7633c 100644 --- a/src/openapi/fiko/fiko-crud.yaml +++ b/src/openapi/fiko/fiko-crud.yaml @@ -18,14 +18,14 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/TransactionItemsPostRequestBody" + $ref: "#/components/schemas/unavailable" responses: "201": description: Created content: application/json: schema: - $ref: "#/components/schemas/TransactionItemsPostResponseBody" + $ref: "#/components/schemas/unavailable" /fiko/transactionitems/bulk: post: summary: Add one ore more finanicial transaction items in bulk. @@ -180,8 +180,9 @@ paths: schema: $ref: "#/components/schemas/TransactionItemsGetResponseBody" post: - summary: Add a finanicial transaction item. - description: Add a finanicial transaction item. + summary: DEPRECATED. Add a finanicial transaction item. + description: DEPRECATED. This API is deprecated. Use bulk-insert instead. + deprecated: true tags: - Transactions v2 requestBody: @@ -370,75 +371,53 @@ paths: example: 9834b346-d68c-438d-9bd5-6716422c2657 description: The id of the transaction item. - in: query - name: department + name: timestampBefore schema: type: string - example: 900 - description: The department (element 1) of the processing failure. + example: 2022-01-01 00:00:00 + description: The timestamp before the event occured. - in: query - name: costCenter + 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 cost center (element 3) of the processing failure. + description: The value of th element on which the validation failed. - in: query - name: costType + name: reasonCode schema: type: string - example: 619031 - description: The cost type (element 2) of the processing failure. + example: "002" + description: The code of the validation failure reason. - in: query - name: documentDate + name: reasonDescription schema: type: string - format: date - example: 2024-10-04 - description: The document date of the processing failure. + example: Contra account does not exist. + description: The description of the validation failure reason. - in: query - name: documentCode + name: resolved + schema: + type: boolean + example: true + description: Whether the failure is resolved. + - in: query + name: change schema: type: string - example: VERK_FACTUUR - description: The document code of the processing failure. - - in: query - name: accountingPeriod - schema: - type: string - example: 2024/10 - description: The accounting period of the processing failure. - - in: query - name: transactionDescription - schema: - type: string - example: Dagkaart - description: The transaction description of the processing failure. - - in: query - name: contraAccount - schema: - type: string - example: 220.10419 - description: The contra account of the processing failure. - - in: query - name: status - schema: - type: array - items: - type: string - example: [open, rejected] - explode: false - description: The status of the processing failure. - - in: query - name: minOccurences - schema: - type: integer - example: 1 - description: Minimum number of occurences. - - in: query - name: maxOccurences - schema: - type: integer - example: 3 - description: Maximum number of occurences. + example: Adapt config + description: Description of what was changed to resolve the failure. responses: "200": description: OK @@ -473,60 +452,6 @@ paths: application/json: schema: $ref: "#/components/schemas/ProcessingFailuresPatchResponseBody" - /processingfailures/{processingFailureId}/processingfailureinstances: - 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. - post: - summary: Add a processing failure instance to a processing failure. - description: Add a processing failure instance to a processing failure. - tags: - - Failures v2 - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ProcessingFailureInstancesPostRequestBody" - responses: - "201": - description: Created - content: - application/json: - schema: - $ref: "#/components/schemas/ProcessingFailureInstancesPostResponseBody" - /processingfailureinstances/{processingFailureInstanceId}: - parameters: - - in: path - name: processingFailureInstanceId - schema: - type: string - format: uuid - example: 37a8095b-19db-498f-9349-5f37d21c5bdf - required: true - description: The id of the processing failure instance. - patch: - summary: Update processing failure instance. - description: Update processing failure instance. - tags: - - Failures v2 - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ProcessingFailureInstancesPatchRequestBody" - responses: - "200": - description: OK - content: - application/json: - schema: - $ref: "#/components/schemas/ProcessingFailureInstancesPatchResponseBody" /productmetadata: get: summary: Find product metadata. @@ -1373,19 +1298,6 @@ paths: application/json: schema: $ref: "#/components/schemas/ConcessionsGetResponseBody" - /failurereasons: - get: - summary: Get all failure reasons. - description: Get all failure reasons. - tags: - - References v2 - responses: - "200": - description: OK - content: - application/json: - schema: - $ref: "#/components/schemas/FailureReasonsGetResponseBody" components: securitySchemes: bearerToken: @@ -1451,6 +1363,7 @@ components: example: debit productCode: type: string + nullable: true example: HTM-MND-20 status: type: string @@ -1537,6 +1450,7 @@ components: example: debit productCode: type: string + nullable: true example: HTM-MND-20 status: type: string @@ -1623,6 +1537,7 @@ components: example: debit productCode: type: string + nullable: true example: HTM-MND-20 required: - sourceName @@ -1705,34 +1620,43 @@ components: 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 productCode: type: string + nullable: true example: HTM-MND-20 status: type: string @@ -1764,57 +1688,36 @@ components: ProcessingFailuresPostRequestBody: type: object properties: - department: + timestamp: type: string - nullable: true - example: 900 - costCenter: + format: date-time + example: 2022-01-01 00:00:00 + element: + type: string + example: costCenter + value: type: string - nullable: true example: 84955 - costType: + 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: 619031 - documentDate: - type: string - format: date - nullable: true - example: 2022-01-01 - documentCode: - type: string - nullable: true - example: VERK_FACTUUR - accountingPeriod: - type: string - nullable: true - example: 2024/10 - transactionDescription: - type: string - nullable: true - example: Dagkaart - contraAccountNumber: - type: string - nullable: true - example: 220.10419 - status: - type: string - enum: - - open - - returned to trx-db - - returned to src - example: open - occurence: - type: integer - example: 1 - processingFailureInstances: - type: array - items: - $ref: "#/components/schemas/ProcessingFailureInstancesPostRequestBody" + example: Adapt config required: - - status - - occurence - - processingFailureInstances + - timestamp + - element + - value + - reasonCode + - reasonDescription + - resolved ProcessingFailuresPostResponseBody: type: object properties: @@ -1840,86 +1743,38 @@ components: type: string format: uuid example: 2d77d978-7141-499a-84ad-93fad8ee03ce - department: + timestamp: type: string - nullable: true - example: 900 - costCenter: + format: date-time + example: 2022-01-01 00:00:00 + element: + type: string + example: costCenter + value: type: string - nullable: true example: 84955 - costType: + 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: 619031 - documentDate: - type: string - format: date - nullable: true - example: 2022-01-01 - documentCode: - type: string - nullable: true - example: VERK_FACTUUR - accountingPeriod: - type: string - nullable: true - example: 2024/10 - transactionDescription: - type: string - nullable: true - example: Dagkaart - contraAccountNumber: - type: string - nullable: true - example: 220.10419 - status: - type: string - enum: - - open - - returned to trx-db - - returned to src - example: open - occurence: - type: integer - example: 1 - processingFailureInstances: - type: array - items: - type: object - properties: - processingFailureInstanceId: - type: string - format: uuid - example: 9afa9a6b-5b6a-4b0a-9c9e-4b0a5b6a4b0a - timestamp: - type: string - format: date-time - example: 2022-01-01 00:00:00 - failureReason: - $ref: "#/components/schemas/FailureReason" - element: - type: string - example: costCenter - occurence: - type: integer - example: 1 - change: - type: string - nullable: true - example: Adapt config - required: - - processingFailureInstanceId - - timestamp - - failureReason - - element - - occurence + example: Adapt config required: - processingFailureId - transactionItemId - - status - - occurence - - processingFailureInstances + - timestamp + - element + - value + - reasonCode + - reasonDescription + - resolved href: type: string nullable: true @@ -1928,18 +1783,14 @@ components: ProcessingFailuresPatchRequestBody: type: object properties: - status: + resolved: + type: boolean + nullable: true + example: true + change: type: string - enum: - - open - - returned to trx-db - - returned to src nullable: true - example: returned to trx-db - occurence: - type: integer - nullable: true - example: 2 + example: Adapt config ProcessingFailuresPatchResponseBody: type: object properties: @@ -1949,65 +1800,6 @@ components: example: 37a8095b-19db-498f-9349-5f37d21c5bdf required: - processingFailureId - ProcessingFailureInstancesPostRequestBody: - type: object - properties: - timestamp: - type: string - format: date-time - example: 2022-01-01 00:00:00 - failureReasonId: - type: integer - example: 1 - element: - type: string - example: costCenter - occurence: - type: integer - example: 1 - change: - type: string - nullable: true - example: Adapt config - required: - - timestamp - - failureReason - - element - - occurence - ProcessingFailureInstancesPostResponseBody: - type: object - properties: - processingFailureInstanceId: - type: string - format: uuid - example: 37a8095b-19db-498f-9349-5f37d21c5bdf - required: - - processingFailureInstanceId - ProcessingFailureInstancesPatchRequestBody: - type: object - properties: - timestamp: - type: string - format: date-time - nullable: true - example: 2022-01-01 00:00:00 - occurence: - type: integer - nullable: true - example: 1 - change: - type: string - nullable: true - example: Adapt config - ProcessingFailureInstancesPatchResponseBody: - type: object - properties: - processingFailureInstanceId: - type: string - format: uuid - example: 37a8095b-19db-498f-9349-5f37d21c5bdf - required: - - processingFailureInstanceId TransactionAuditTrailsPostRequestBody: type: object properties: @@ -2964,18 +2756,6 @@ components: nullable: true description: URI for pagination. example: null - FailureReasonsGetResponseBody: - type: object - properties: - failureReasons: - type: array - items: - $ref: '#/components/schemas/FailureReason' - href: - type: string - nullable: true - description: URI for pagination. - example: null ContraAccountMetadata: type: object properties: @@ -3057,22 +2837,6 @@ components: - rejectionProcessing - rejectionInfo - validFrom - FailureReason: - type: object - properties: - failureReasonId: - type: integer - example: 2 - reasonCode: - type: string - example: "002" - reasonDesc: - type: string - example: Contra account does not exist - required: - - failureReasonId - - reasonCode - - reasonDesc rfc9457: type: object properties: From 90e493fb0726bc8b99f9566ed61231f48e41a5f1 Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Thu, 6 Feb 2025 12:48:13 +0100 Subject: [PATCH 7/7] OVPAY-1518 - Update TransactionAuditTrails. --- src/openapi/fiko/fiko-crud.yaml | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/src/openapi/fiko/fiko-crud.yaml b/src/openapi/fiko/fiko-crud.yaml index 8f7633c..3be6d63 100644 --- a/src/openapi/fiko/fiko-crud.yaml +++ b/src/openapi/fiko/fiko-crud.yaml @@ -327,9 +327,18 @@ paths: type: array items: type: string - example: [created, succeeded, failed] + 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: @@ -1811,6 +1820,12 @@ components: format: date-time example: 2022-01-01 00:00:00 action: + type: string + enum: + - create + - update + example: create + status: type: string enum: - created @@ -1818,6 +1833,7 @@ components: - failed - returned to trx-db - returned to src + - re-entered example: created description: type: string @@ -1832,6 +1848,7 @@ components: - user - timestamp - action + - status TransactionAuditTrailsPostResponseBody: type: object properties: @@ -1865,6 +1882,12 @@ components: format: date-time example: 2022-01-01 00:00:00 action: + type: string + enum: + - create + - update + example: create + status: type: string enum: - created @@ -1872,6 +1895,7 @@ components: - failed - returned to trx-db - returned to src + - re-entered example: created description: type: string @@ -1888,6 +1912,7 @@ components: - user - timestamp - action + - status href: type: string nullable: true