From a6005c6f2f7bca9de9ef4eb37a1316c78c49515c Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Thu, 20 Mar 2025 17:12:01 +0100 Subject: [PATCH] OVPAY-1564 - Improvements in validation objects, part 1. --- src/openapi/orders/service_engine_orders.yaml | 1132 +++++++++-------- 1 file changed, 588 insertions(+), 544 deletions(-) diff --git a/src/openapi/orders/service_engine_orders.yaml b/src/openapi/orders/service_engine_orders.yaml index bffeb33..fe75e54 100644 --- a/src/openapi/orders/service_engine_orders.yaml +++ b/src/openapi/orders/service_engine_orders.yaml @@ -731,7 +731,7 @@ paths: description: The JWT of the logged in customer (in case of a web shop). get: tags: - - Order Retrieval v2.1 + - Order Retrieval v1 & v2 summary: Get all orders for a specific customer. description: Get all orders for a specific customer. responses: @@ -741,95 +741,104 @@ paths: application/json: schema: $ref: "#/components/schemas/unavailable" - example: - { - "orders": - [ - { - "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", - "externalOrderId": "bac3958b-804a-43e3-b5f7-0b0fffaae5b7", - "orderNumber": "123456", - "customerProfileId": 42, - "totalAmount": 121, - "touchPoint": + examples: + v2: + summary: Order list for customer v2 + description: Order list for customer v2 + value: + { + "orders": + [ { - "salesTouchpointId": 3, - "name": "Website (Perplex)", - "isActive": true, - "retailerId": 1001, - }, - "language": - { - "languageId": 1, - "name": "Nederlands", - "iso639Code": "nl-NL", - "ietfCode": "nl", - }, - "billingAddressId": 1, - "shippingAddressId": 1, - "createdOn": "2024-03-22T09:00:00", - "lastUpdatedOn": "2024-03-22T09:00:00", - "order_OrderStatus": - { - "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f", - "orderStatus": - { "orderStatusId": 4, "name": "paid" }, - "createdOn": "2024-03-22T09:00:00", - "description": "Order succesvol betaald", - }, - "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", - }, - }, - ], - "_links": - { - "self": + "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", + "externalOrderId": "bac3958b-804a-43e3-b5f7-0b0fffaae5b7", + "orderNumber": "123456", + "customerProfileId": 42, + "totalAmount": 121, + "touchPoint": { - "href": "https://api.example.com/items/1", - "method": "GET", - "templated": true, + "salesTouchpointId": 3, + "name": "Website (Perplex)", + "isActive": true, + "retailerId": 1001, + }, + "language": + { + "languageId": 1, + "name": "Nederlands", + "iso639Code": "nl-NL", + "ietfCode": "nl", + }, + "billingAddressId": 1, + "shippingAddressId": 1, + "createdOn": "2024-03-22T09:00:00", + "lastUpdatedOn": "2024-03-22T09:00:00", + "order_OrderStatus": + { + "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f", + "orderStatus": + { "orderStatusId": 4, "name": "paid" }, + "createdOn": "2024-03-22T09:00:00", + "description": "Order succesvol betaald", + }, + "orderLines": [], + "payments": + [ + { + "paymentId": "c772868c-5cce-46a3-8821-be6811332252", + "createdOn": "2024-03-22T09:00:00", + "amountDebit": 121, + "paymentMethodId": 1, + "touchPointId": 1, + "isRefund": false, + "htmPaymentReference": "HTM-1234", + "pspPaymentReference": "Buckaroo-1234", + "paymentStatuses": + [ + { + "paymentStatusId": "ff9f2365-efc8-4f97-a6c1-e01fcddad917", + "createdOn": "2024-03-22T09:00:00", + "statusCode": "190", + "statusDescription": "Success", + "statusSubCode": "S001", + "statusSubDescription": "PaymentSuccessFul", + }, + ], + "mandateInput": + { + "mandateInputId": "1d6626cd-b93b-4ea6-85d5-a8e3a24a2725", + "directDebitMandateTypeId": 1, + "createdOn": "2024-03-22T09:00:00", + "bic": "RABONL2U", + "iban": "NL44RABO0123456789", + "ascription": "J. de Vries", + "place": "Den Haag", + }, + }, + ], + "orderCustomer": null, + "_links": + { + "self": + { + "href": "https://api.example.com/items/1", + "method": "GET", + "templated": true, + }, }, }, - }, - ], - "_links": - { - "self": + ], + "_links": { - "href": "https://api.example.com/items", - "method": "GET", - "templated": true, + "self": + { + "href": "https://api.example.com/items", + "method": "GET", + "templated": true, + }, }, - }, - "href": "string", - } + "href": "string", + } /orders: parameters: - in: header @@ -872,7 +881,7 @@ paths: example: 7208e73e-87a6-46d9-bb6d-867ffc460c9b description: xTat used in order fulfillment. Note that this is a joined parameter via PurchasedProduct. tags: - - Order Retrieval v2.1 + - Order Retrieval v1 & v2 summary: Find orders. description: Find orders. responses: @@ -882,101 +891,110 @@ paths: application/json: schema: $ref: "#/components/schemas/unavailable" - example: - { - "orders": - [ - { - "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", - "externalOrderId": "bac3958b-804a-43e3-b5f7-0b0fffaae5b7", - "orderNumber": "123456", - "customerProfileId": 42, - "totalAmount": 121, - "touchPoint": + examples: + v2: + summary: Find orders v2 + description: Find orders v2 + value: + { + "orders": + [ { - "salesTouchpointId": 3, - "name": "Website (Perplex)", - "isActive": true, - "retailerId": 1001, - }, - "language": - { - "languageId": 1, - "name": "Nederlands", - "iso639Code": "nl-NL", - "ietfCode": "nl", - }, - "billingAddressId": 1, - "shippingAddressId": 1, - "createdOn": "2024-03-22T09:00:00", - "lastUpdatedOn": "2024-03-22T09:00:00", - "order_OrderStatus": - { - "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f", - "orderStatus": - { "orderStatusId": 4, "name": "paid" }, - "createdOn": "2024-03-22T09:00:00", - "description": "Order succesvol betaald", - }, - "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", - }, - }, - ], - "_links": - { - "self": + "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", + "externalOrderId": "bac3958b-804a-43e3-b5f7-0b0fffaae5b7", + "orderNumber": "123456", + "customerProfileId": 42, + "totalAmount": 121, + "touchPoint": { - "href": "https://api.example.com/items/1", - "method": "GET", - "templated": true, + "salesTouchpointId": 3, + "name": "Website (Perplex)", + "isActive": true, + "retailerId": 1001, + }, + "language": + { + "languageId": 1, + "name": "Nederlands", + "iso639Code": "nl-NL", + "ietfCode": "nl", + }, + "billingAddressId": 1, + "shippingAddressId": 1, + "createdOn": "2024-03-22T09:00:00", + "lastUpdatedOn": "2024-03-22T09:00:00", + "order_OrderStatus": + { + "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f", + "orderStatus": + { "orderStatusId": 4, "name": "paid" }, + "createdOn": "2024-03-22T09:00:00", + "description": "Order succesvol betaald", + }, + "orderLines": [], + "payments": + [ + { + "paymentId": "1a973c85-7a96-41b5-bbf2-7919d6a6db15", + "createdOn": "2024-03-22T09:00:00", + "amountDebit": 121, + "paymentMethodId": 1, + "touchPointId": 1, + "isRefund": false, + "htmPaymentReference": "HTM-1234", + "pspPaymentReference": "Buckaroo-1234", + "paymentStatuses": + [ + { + "paymentStatusId": "42eee610-1a17-4f02-be14-7e25d69d35f3", + "createdOn": "2024-03-22T09:00:00", + "statusCode": "190", + "statusDescription": "Success", + "statusSubCode": "S001", + "statusSubDescription": "PaymentSuccessFul", + }, + ], + "mandateInput": + { + "mandateInputId": "5397f2d7-eefa-4e82-a086-1e0e3ad38bdb", + "directDebitMandateTypeId": 1, + "createdOn": "2024-03-22T09:00:00", + "bic": "RABONL2U", + "iban": "NL44RABO0123456789", + "ascription": "J. de Vries", + "place": "Den Haag", + }, + }, + ], + "orderCustomer": null, + "_links": + { + "self": + { + "href": "https://api.example.com/items/1", + "method": "GET", + "templated": true, + }, }, }, - }, - ], - "_links": - { - "self": + ], + "_links": { - "href": "https://api.example.com/items", - "method": "GET", - "templated": true, + "self": + { + "href": "https://api.example.com/items", + "method": "GET", + "templated": true, + }, }, - }, - "href": "string", - } + "href": "string", + } post: tags: - - Order Creation v2.0 - summary: Create a new order v2.0. + - Order Creation v2 + summary: Create a new order description: | - Create a new order v2.0. This order can only contain the order itself, + Create a new order. This order can only contain the order itself, one ore more order lines and optionally a customer token per order line. All orders created via this endpoint are created with the status "concept". Order lines are created with status "pending". @@ -1352,17 +1370,27 @@ paths: }, }, ], + "orderAccountingStatuses": [], + "validationResult": false, + "additionalRemarks": + [ + { + "code": "MANDATE_REQUIRED", + "parameter": "directDebitMandateId", + }, + ], + "validationErrors": + [ + { + "detail": "Startdate of this product should be at most 60 days in the future.", + "pointer": "#/0/startDate", + }, + ], }, ], }, - "orderValidation": - { - "validationResult": true, - "additionalRemarks": - [{ "code": "string", "parameter": "string" }], - "validationErrors": - [{ "detail": "string", "pointer": "string" }], - }, + "payments": [], + "orderCustomer": null, } v1.2: value: @@ -1417,7 +1445,7 @@ paths: description: The JWT of the logged in customer (in case of a web shop). get: tags: - - Order Retrieval v1.1 + - Order Retrieval v1 & v2 summary: Get a single order. description: Get a single order. responses: @@ -1427,186 +1455,219 @@ paths: application/json: schema: $ref: "#/components/schemas/unavailable" - example: - { - "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", - "externalOrderId": "bac3958b-804a-43e3-b5f7-0b0fffaae5b7", - "orderNumber": "123456", - "customerProfileId": 42, - "totalAmount": 121, - "touchPoint": + examples: + v2: + summary: Order details v2 + description: Order details v2 + value: { - "salesTouchpointId": 3, - "name": "Website (Perplex)", - "isActive": true, - "retailerId": 1001, - }, - "billingAddressId": 1, - "shippingAddressId": 1, - "language": - { - "languageId": 1, - "name": "Nederlands", - "iso639Code": "nl-NL", - "ietfCode": "nl", - }, - "createdOn": "2024-03-22T09:00:00", - "lastUpdatedOn": "2024-03-22T09:00:00", - "order_OrderStatus": - [ - { - "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f", - "orderStatus": { "orderStatusId": 4, "name": "paid" }, - "createdOn": "2024-03-22T09:00:00", - "description": "Order succesvol betaald", - }, - { - "order_orderStatusId": "2b9b7943-3a74-4f2e-ad65-012b62c80821", - "orderStatus": - { "orderStatusId": 3, "name": "pendingPayment" }, - "createdOn": "2024-03-22T08:55:00", - "description": "Betaling in behandeling", - }, - ], - "orderLines": - [ - { - "orderLineId": "7a7a9d1a-3fc8-4058-a28b-082860aaa311", - "externalOrderLineId": "f5fddff0-7fbd-4285-bccb-e584f431ea69", - "productId": 1, - "productName": "HTM Maandkorting 20%", - "productCode": "HTM-MND-20", - "productDescription": "HTM Maandkorting 20%", - "taxAmount": 21, - "taxMetadata": - { - "taxMetadataId": "06270769-a263-4325-82d6-f49396f39d03", - "taxCode": "V21", - "taxPercentageAmount": 21, - "description": "21% BTW", - }, - "amountExclTax": 100, - "amountInclTax": 121, - "quantity": 1, - "orderLineTerms": - [ - { - "orderLineTermsId": "fe354db7-12ad-4fc1-bc63-a704c4e0d91e", - "termsUrl": "generalTermsAndConditions.pdf", - }, - ], - "validFrom": "2024-03-22T09:00:00", - "validUntil": "2025-03-22T09:00:00", - "orderLineStatus": - { "orderLineStatusId": 4, "name": "delivered" }, - "createdOn": "2024-03-22T09:00:00", - "lastUpdatedOn": "2024-03-22T09:00:00", - "customerTokens": - [ - { - "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e", - "tokenType": { "tokenTypeId": 1, "name": "EMV" }, - - "ovPayTokenId": 1, - "serviceReferenceId": "NLOV1234567ABCDEFG", - "amount": 34, - "ovpasNumber": "OV34567", - "verificationCode": "A7H6", - "personalAccountData": - { - "personalAccountDataId": "47db8a40-3238-4bf5-9284-759e3888bd47", - "name": "Jan de Vries", - "dateOfBirth": "01-01-1970", - "photoReference": "DSC_0502.JPG", - "fileType": "image/jpg", - "challengeType": - { "challengeTypeId": 1, "name": "email" }, - "oneTimePassword": "H5Iiz3JTaQeIV8p", - }, - }, - ], - "orderAccountingStatuses": - [ - { - "orderAccountingStatusId": "7c5118d0-8535-4464-9239-83a7ba8fd2db", - "accountingStatus": - { "accountingStatusId": 1, "name": "open" }, - "createdOn": "2024-03-22T09:00:00", - "description": "Financiele transactie voor de FIKO.", - }, - ], - }, - ], - "payments": - [ - { - "paymentId": "3ba4a3c7-0803-4214-800b-365851b8903d", - "createdOn": "2024-03-22T09:00:00", - "amountDebit": 121, - "paymentMethod": - { - "paymentMethodId": 1, - "name": "ideal", - "provider": "Buckaroo", - }, - "touchPointId": 1, - "isRefund": false, - "htmPaymentReference": "HTM-1234", - "pspPaymentReference": "Buckaroo-1234", - "paymentStatuses": - [ - { - "paymentStatusId": 1, - "createdOn": "2024-03-22T09:00:00", - "statusCode": "190", - "statusDescription": "Success", - "statusSubCode": "S001", - "statusSubDescription": "PaymentSuccessFul", - }, - ], - "mandateInput": - { - "mandateInputId": "0a875e67-dc9f-4825-a030-d732a2adbfbc", - "directDebitMandateType": - { - "directDebitMandateTypeId": 1, - "name": "import", - }, - "createdOn": "2024-03-22T09:00:00", - "bic": "RABONL2U", - "iban": "NL44RABO0123456789", - "ascription": "J. de Vries", - "place": "Den Haag", - }, - }, - ], - "orderCustomer": - { - "orderCustomerId": "19ef6882-8eda-43bf-b48e-9b4ff8745a50", - "birthname": "Jan", - "surname": "Vries", - "prefix": "de", - "emailAddress": "jandevries@outlook.com", - "dateOfBirth": "1970-01-01", - "orderCustomerAddresses": + "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d", + "externalOrderId": "bac3958b-804a-43e3-b5f7-0b0fffaae5b7", + "orderNumber": "123456", + "customerProfileId": 42, + "totalAmount": 121, + "touchPoint": + { + "salesTouchpointId": 3, + "name": "Website (Perplex)", + "isActive": true, + "retailerId": 1001, + }, + "billingAddressId": 1, + "shippingAddressId": 1, + "language": + { + "languageId": 1, + "name": "Nederlands", + "iso639Code": "nl-NL", + "ietfCode": "nl", + }, + "createdOn": "2024-03-22T09:00:00", + "lastUpdatedOn": "2024-03-22T09:00:00", + "order_OrderStatus": [ { - "orderCustomerAddressId": "aa50047c-58ac-4f15-9448-ee000dfc6893", - "addressType": - { "addressTypeId": 1, "name": "Billing" }, - "street": "Kon. Julianaplein", - "houseNumber": 10, - "houseNumberSuffix": "a", - "postalCode": "2595 AA", - "city": "Den Haag", - "country": "NL", + "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f", + "orderStatus": + { "orderStatusId": 4, "name": "paid" }, + "createdOn": "2024-03-22T09:00:00", + "description": "Order succesvol betaald", + }, + { + "order_orderStatusId": "2b9b7943-3a74-4f2e-ad65-012b62c80821", + "orderStatus": + { "orderStatusId": 3, "name": "pendingPayment" }, + "createdOn": "2024-03-22T08:55:00", + "description": "Betaling in behandeling", }, ], - }, - } + "orderLines": + [ + { + "orderLineId": "7a7a9d1a-3fc8-4058-a28b-082860aaa311", + "externalOrderLineId": "f5fddff0-7fbd-4285-bccb-e584f431ea69", + "productId": 1, + "productName": "HTM Maandkorting 20%", + "productCode": "HTM-MND-20", + "productDescription": "HTM Maandkorting 20%", + "taxAmount": 21, + "taxMetadata": + { + "taxMetadataId": "06270769-a263-4325-82d6-f49396f39d03", + "taxCode": "V21", + "taxPercentageAmount": 21, + "description": "21% BTW", + }, + "amountExclTax": 100, + "amountInclTax": 121, + "quantity": 1, + "orderLineTerms": + [ + { + "orderLineTermsId": "fe354db7-12ad-4fc1-bc63-a704c4e0d91e", + "termsUrl": "generalTermsAndConditions.pdf", + }, + ], + "validFrom": "2024-03-22T09:00:00", + "validUntil": "2025-03-22T09:00:00", + "orderLineStatus": + { "orderLineStatusId": 4, "name": "delivered" }, + "createdOn": "2024-03-22T09:00:00", + "lastUpdatedOn": "2024-03-22T09:00:00", + "customerTokens": + [ + { + "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e", + "tokenType": + { "tokenTypeId": 1, "name": "EMV" }, + + "ovPayTokenId": 1, + "serviceReferenceId": "NLOV1234567ABCDEFG", + "amount": 34, + "ovpasNumber": "OV34567", + "verificationCode": "A7H6", + "personalAccountData": + { + "personalAccountDataId": "47db8a40-3238-4bf5-9284-759e3888bd47", + "name": "Jan de Vries", + "dateOfBirth": "01-01-1970", + "photoReference": "DSC_0502.JPG", + "fileType": "image/jpg", + "challengeType": + { + "challengeTypeId": 1, + "name": "email", + }, + "oneTimePassword": "H5Iiz3JTaQeIV8p", + }, + }, + ], + "orderAccountingStatuses": + [ + { + "orderAccountingStatusId": "7c5118d0-8535-4464-9239-83a7ba8fd2db", + "accountingStatus": + { "accountingStatusId": 1, "name": "open" }, + "createdOn": "2024-03-22T09:00:00", + "description": "Financiele transactie voor de FIKO.", + }, + ], + "validationResult": false, + "additionalRemarks": + [ + { + "code": "MANDATE_REQUIRED", + "parameter": "directDebitMandateId", + }, + ], + "validationErrors": + [ + { + "detail": "Startdate of this product should be at most 60 days in the future.", + "pointer": "#/0/startDate", + }, + ], + }, + ], + "payments": + [ + { + "paymentId": "3ba4a3c7-0803-4214-800b-365851b8903d", + "createdOn": "2024-03-22T09:00:00", + "amountDebit": 121, + "paymentMethod": + { + "paymentMethodId": 1, + "name": "ideal", + "provider": "Buckaroo", + }, + "touchPointId": 1, + "isRefund": false, + "htmPaymentReference": "HTM-1234", + "pspPaymentReference": "Buckaroo-1234", + "paymentStatuses": + [ + { + "paymentStatusId": 1, + "createdOn": "2024-03-22T09:00:00", + "statusCode": "190", + "statusDescription": "Success", + "statusSubCode": "S001", + "statusSubDescription": "PaymentSuccessFul", + }, + ], + "mandateInput": + { + "mandateInputId": "0a875e67-dc9f-4825-a030-d732a2adbfbc", + "directDebitMandateType": + { + "directDebitMandateTypeId": 1, + "name": "import", + }, + "createdOn": "2024-03-22T09:00:00", + "bic": "RABONL2U", + "iban": "NL44RABO0123456789", + "ascription": "J. de Vries", + "place": "Den Haag", + }, + }, + ], + "orderCustomer": + { + "orderCustomerId": "19ef6882-8eda-43bf-b48e-9b4ff8745a50", + "birthname": "Jan", + "surname": "Vries", + "prefix": "de", + "emailAddress": "jandevries@outlook.com", + "dateOfBirth": "1970-01-01", + "orderCustomerAddresses": + [ + { + "orderCustomerAddressId": "aa50047c-58ac-4f15-9448-ee000dfc6893", + "addressType": + { "addressTypeId": 1, "name": "Billing" }, + "street": "Kon. Julianaplein", + "houseNumber": 10, + "houseNumberSuffix": "a", + "postalCode": "2595 AA", + "city": "Den Haag", + "country": "NL", + }, + ], + }, + "_links": + { + "self": + { + "href": "https://api.example.com/items/1", + "method": "GET", + "templated": true, + }, + }, + } patch: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Update an existing order. description: Update an existing order. requestBody: @@ -1705,9 +1766,10 @@ paths: "validUntil": null, "orderLineStatus": { "orderLineStatusId": 1, "name": "pending" }, - "tokens": + "customerTokens": [ { + "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e", "tokenTypeId": 1, "ovPayTokenId": 1, "serviceReferenceId": "NLOV1234567ABCDEFG", @@ -1716,6 +1778,7 @@ paths: "verificationCode": "A7H6", "personalAccountData": { + "personalAccountDataId": "47db8a40-3238-4bf5-9284-759e3888bd47", "name": "Jan de Vries", "dateOfBirth": "01-01-1970", "photoReference": "DSC_0502.JPG", @@ -1725,6 +1788,7 @@ paths: }, }, ], + "validationResult": true, "additionalRemarks": [ { @@ -1732,11 +1796,13 @@ paths: "parameter": "directDebitMandateId", }, ], + "validationErrors": [], }, ], "payments": [ { + "paymentId": "94270188-4cf6-447e-bd49-e8186bcec073", "createdOn": "2024-03-22T09:00:00", "amountDebit": 121, "paymentMethodId": 1, @@ -1747,6 +1813,7 @@ paths: "paymentStatuses": [ { + "paymentStatusId": "42eee610-1a17-4f02-be14-7e25d69d35f3", "createdOn": "2024-03-22T09:00:00", "statusCode": "190", "statusDescription": "Success", @@ -1754,26 +1821,30 @@ paths: "statusSubDescription": "PaymentSuccessFul", }, ], - "payPush": + "mandateInput": { - "consumerIssuer": "ABN AMRO", - "transactionId": "0000000000000001", - "consumerName": "J. de Vries", - "consumerIBAN": "NL44RABO0123456789", - "consumerBIC": "RABONL2U", + "mandateInputId": "1d6626cd-b93b-4ea6-85d5-a8e3a24a2725", + "directDebitMandateTypeId": 1, + "createdOn": "2024-03-22T09:00:00", + "bic": "RABONL2U", + "iban": "NL44RABO0123456789", + "ascription": "J. de Vries", + "place": "Den Haag", }, }, ], - "customer": + "orderCustomer": { + "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073", "birthname": "Jan", "surname": "Vries", "prefix": "de", "emailAddress": "jandevries@outlook.com", "dateOfBirth": "1970-01-01", - "addresses": + "orderCustomerAddresses": [ { + "orderCustomerAddressId": "94270188-4cf6-447e-bd49-e8186bcec073", "addressTypeId": 1, "street": "Kon. Julianaplein", "houseNumber": 10, @@ -1821,7 +1892,7 @@ paths: } delete: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Delete an existing order. description: Delete an existing order. responses: @@ -1867,7 +1938,7 @@ paths: description: The JWT of the logged in customer (in case of a web shop). post: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Add a new order line to an existing order. description: Add a new order line to an existing order. requestBody: @@ -1886,9 +1957,8 @@ paths: "quantity": 1, "validFrom": "2024-03-22T09:00:00", "validUntil": null, - "orderLineStatusId": 1, "createdOn": "2024-03-22T09:00:00", - "customerTokens": + "tokens": [ { "tokenTypeId": 1, @@ -1922,7 +1992,7 @@ paths: "validUntil": "2025-03-22T09:00:00", "orderLineStatusId": 4, "createdOn": "2024-03-22T09:00:00", - "customerTokens": + "tokens": [ { "tokenTypeId": 1, @@ -1962,177 +2032,151 @@ paths: v2.0: value: { - "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df", - "externalOrderId": null, - "orderNumber": "ORD-123456", - "customerProfileId": 1337, - "totalAmount": 121, - "language": + "order": { - "languageId": 1, - "name": "Nederlands", - "iso639Code": "nl-NL", - "ietfCode": "nl", - }, - "billingAddressId": 1, - "shippingAddressId": 1, - "touchPoint": - { - "salesTouchpointId": 3, - "name": "Website (Perplex)", - "isActive": true, - "retailerId": 1001, - }, - "createdOn": "2024-03-22T09:00:00", - "lastUpdatedOn": "2024-03-22T09:00:00", - "order_OrderStatus": - [ - { - "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f", - "orderStatus": - { "orderStatusId": 1, "name": "concept" }, - "createdOn": "2024-03-22T09:00:00", - "description": "Order is aangemaakt", - }, - ], - "orderLines": - [ - { - "orderLineId": "cccada2c-d5ea-48ab-b4be-f590e16b5468", - "externalOrderLineId": null, - "productId": 1, - "productName": "HTM Maandkorting 20%", - "productCode": "HTM-MND-20", - "productDescription": "HTM Maandkorting 20%", - "taxAmount": 21, - "taxCode": "V21", - "amountExclTax": 100, - "amountInclTax": 121, - "quantity": 1, - "terms": - [ - "generalTermsAndConditions.pdf", - "productTermsAndConditions.pdf", - ], - "createdOn": "2024-03-22T09:00:00", - "validFrom": "2024-03-22T09:00:00", - "validUntil": null, - "orderLineStatus": - { "orderLineStatusId": 1, "name": "pending" }, - "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", - }, - }, - ], - "additionalRemarks": - [ - { - "code": "MANDATE_REQUIRED", - "parameter": "directDebitMandateId", - }, - ], - }, - { - "orderLineId": "2cb04b38-e9a8-465a-a273-261c55a21b71", - "externalOrderLineId": null, - "productId": 2, - "productName": "HTM Maandkorting 40%", - "productCode": "HTM-MND-40", - "productDescription": "HTM Maandkorting 40%", - "taxAmount": 42, - "taxCode": "V21", - "amountExclTax": 200, - "amountInclTax": 242, - "quantity": 1, - "terms": - [ - "generalTermsAndConditions.pdf", - "productTermsAndConditions.pdf", - ], - "createdOn": "2024-03-22T09:00:00", - "validFrom": "2024-03-22T09:00:00", - "validUntil": null, - "orderLineStatus": - { "orderLineStatusId": 1, "name": "pending" }, - "tokens": - [ - { - "tokenTypeId": 1, - "ovPayTokenId": 4, - "serviceReferenceId": null, - "amount": null, - "ovpasNumber": null, - "verificationCode": null, - "personalAccountData": null, - }, - ], - "additionalRemarks": [], - }, - ], - "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": + "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df", + "externalOrderId": null, + "orderNumber": "ORD-123456", + "customerProfileId": 1337, + "totalAmount": 121, + "language": + { + "languageId": 1, + "name": "Nederlands", + "iso639Code": "nl-NL", + "ietfCode": "nl", + }, + "billingAddressId": 1, + "shippingAddressId": 1, + "touchPoint": + { + "salesTouchpointId": 3, + "name": "Website (Perplex)", + "isActive": true, + "retailerId": 1001, + }, + "createdOn": "2024-03-22T09:00:00", + "lastUpdatedOn": "2024-03-22T09:00:00", + "order_OrderStatus": [ { - "addressTypeId": 1, - "street": "Kon. Julianaplein", - "houseNumber": 10, - "houseNumberSuffix": "a", - "postalCode": "2595 AA", - "city": "Den Haag", - "country": "NL", + "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f", + "orderStatus": + { "orderStatusId": 1, "name": "concept" }, + "createdOn": "2024-03-22T09:00:00", + "description": "Order is aangemaakt", }, ], + "orderLines": + [ + { + "orderLineId": "cccada2c-d5ea-48ab-b4be-f590e16b5468", + "externalOrderLineId": null, + "productId": 1, + "productName": "HTM Maandkorting 20%", + "productCode": "HTM-MND-20", + "productDescription": "HTM Maandkorting 20%", + "taxAmount": 21, + "taxCode": "V21", + "amountExclTax": 100, + "amountInclTax": 121, + "quantity": 1, + "terms": + [ + "generalTermsAndConditions.pdf", + "productTermsAndConditions.pdf", + ], + "createdOn": "2024-03-22T09:00:00", + "validFrom": "2024-03-22T09:00:00", + "validUntil": null, + "orderLineStatus": + { "orderLineStatusId": 1, "name": "pending" }, + "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", + }, + }, + ], + "additionalRemarks": + [ + { + "code": "MANDATE_REQUIRED", + "parameter": "directDebitMandateId", + }, + ], + }, + { + "orderLineId": "2cb04b38-e9a8-465a-a273-261c55a21b71", + "externalOrderLineId": null, + "productId": 2, + "productName": "HTM Maandkorting 40%", + "productCode": "HTM-MND-40", + "productDescription": "HTM Maandkorting 40%", + "taxAmount": 42, + "taxCode": "V21", + "amountExclTax": 200, + "amountInclTax": 242, + "quantity": 1, + "terms": + [ + "generalTermsAndConditions.pdf", + "productTermsAndConditions.pdf", + ], + "createdOn": "2024-03-22T09:00:00", + "validFrom": "2024-03-22T09:00:00", + "validUntil": null, + "orderLineStatus": + { "orderLineStatusId": 1, "name": "pending" }, + "tokens": + [ + { + "tokenTypeId": 1, + "ovPayTokenId": 4, + "serviceReferenceId": null, + "amount": null, + "ovpasNumber": null, + "verificationCode": null, + "personalAccountData": null, + }, + ], + "additionalRemarks": [], + }, + ], + "payments": [], + "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", + }, + ], + }, }, } v1.2: @@ -2185,7 +2229,7 @@ paths: description: The JWT of the logged in customer (in case of a web shop). patch: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Update an existing order line. description: Update an existing order line. requestBody: @@ -2392,7 +2436,7 @@ paths: } delete: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Delete an existing order line. description: Delete an existing order line. responses: @@ -2503,7 +2547,7 @@ paths: description: The JWT of the logged in customer (in case of a web shop). post: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Add a payment to an existing order. description: Add a payment to an existing order. requestBody: @@ -2513,8 +2557,8 @@ paths: $ref: "#/components/schemas/unavailable" examples: v2.0: - summary: Order creation v2.0 - description: Order creation v2.0 + summary: Order Creation v2 + description: Order Creation v2 value: { "createdOn": "2024-03-22T09:00:00", @@ -2772,7 +2816,7 @@ paths: description: The JWT of the logged in customer (in case of a web shop). patch: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Update a payment on an existing order. description: Update a payment on an existing order. requestBody: @@ -2979,7 +3023,7 @@ paths: description: The JWT of the logged in customer (in case of a web shop). post: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Add a customer to an existing order. description: Add a customer to an existing order. requestBody: @@ -3170,7 +3214,7 @@ paths: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c description: The JWT of the logged in customer (in case of a web shop). tags: - - Order Creation v2.0 + - Order Creation v2 summary: Update a customer on an existing order. description: Update a customer on an existing order. requestBody: @@ -3338,7 +3382,7 @@ paths: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c description: The JWT of the logged in customer (in case of a web shop). tags: - - Order Creation v2.0 + - Order Creation v2 summary: Create a customer address for an existing order. description: Create a customer address for an existing order. requestBody: @@ -3498,7 +3542,7 @@ paths: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c description: The JWT of the logged in customer (in case of a web shop). tags: - - Order Creation v2.0 + - Order Creation v2 summary: Update a customer address for an existing order. description: Update a customer address for an existing order. requestBody: @@ -3641,7 +3685,7 @@ paths: } delete: tags: - - Order Creation v2.0 + - Order Creation v2 summary: Delete an existing order address description: Delete an existing order address parameters: