openapi: 3.0.1
info:
  title: ABT Service Engine Order APIs
  version: "1.0"
  description: Order APIs available in the Service Engine for order validation and fulfillment.
servers:
  - url: https://services.acc.api.htm.nl/abt/touchpoint/2.0
paths:
  /orders:
    parameters:
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    get:
      parameters:
        - in: query
          name: orderId
          schema:
            type: string
            format: uuid
            example: afce35b2-1dff-4ace-98d0-4b9ac405c87d
          description: The order id.
        - in: query
          name: orderNumber
          schema:
            type: string
            example: "ORD123456"
          description: The order number.
        - in: query
          name: externalOrderId
          schema:
            type: string
            example: 7bef22f6-70a3-4655-bc2a-c40c61581b32
          description: The external order id.
        - in: query
          name: createdBefore
          schema:
            type: string
            format: date-time
            example: 2024-03-22T09:00:00
          required: false
          description: Timestamp before which the order should have been created.
        - in: query
          name: createdAfter
          schema:
            type: string
            format: date-time
            example: 2024-03-22T09:00:00
          required: false
          description: Timestamp after which the order should have been created.
        - in: query
          name: updatedBefore
          schema:
            type: string
            format: date-time
            example: 2024-03-22T09:00:00
          required: false
          description: Timestamp before which the order should have been updated.
        - in: query
          name: updatedAfter
          schema:
            type: string
            format: date-time
            example: 2024-03-22T09:00:00
          required: false
          description: Timestamp after which the order should have been updated.
        - in: query
          name: orderStatusId
          schema:
            type: array
            items:
              type: integer
          explode: false
          required: false
          description: Filter on most recent order status. 1 = concept, 2 = awaitingPayment, 3 = pendingPayment, 4 = paid, 5 = delivered, 6 = cancelled.
        - in: query
          name: customerProfileId
          schema:
            type: integer
            example: 42
          description: The customer profile id.
        - in: query
          name: xTat
          schema:
            type: string
            example: 7208e73e-87a6-46d9-bb6d-867ffc460c9b
          description: xTat used in order fulfillment. Note that this is a joined parameter via PurchasedProduct.
      tags:
        - Order Retrieval
      summary: Find orders.
      description: Find orders.
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Empty order list:
                  summary: Empty order list
                  description: Empty order list
                  value:
                    {
                      "orders": [],
                      "_links":
                        {
                          "self":
                            {
                              "href": "https://api.example.com/items",
                              "method": "GET",
                              "templated": true,
                            },
                        },
                      "href": "string",
                    }
                List with multiple orders:
                  summary: List with two orders
                  description: |
                    List with two orders. Note how the second order is a concept order and therefore has 
                    more token information than the first order which is already paid.
                  value:
                    {
                      "orders":
                        [
                          {
                            "validContents": null,
                            "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d",
                            "externalOrderId": "bac3958b-804a-43e3-b5f7-0b0fffaae5b7",
                            "orderNumber": "123456",
                            "customerProfileId": 42,
                            "device": null,
                            "vouchers":[],
                            "totalAmount": 121,
                            "touchPoint":
                              {
                                "salesTouchpointId": 3,
                                "name": "Website (Perplex)",
                                "isActive": true,
                                "retailerId": 1001,
                              },
                            "language":
                              {
                                "languageId": 1,
                                "name": "Nederlands",
                                "iso639Code": "nl-NL",
                                "ietfCode": "nl",
                              },
                            "createdOn": "2024-03-22T09:00:00",
                            "lastUpdatedOn": "2024-03-22T09:00:00",
                            "order_OrderStatuses":
                              {
                                "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f",
                                "orderStatus":
                                  { "orderStatusId": 4, "name": "paid" },
                                "createdOn": "2024-03-22T09:00:00",
                                "description": "Order succesvol betaald",
                              },
                            "orderLines":
                              [
                                {
                                  "orderLineId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "externalOrderLineId": null,
                                  "productId": 1,
                                  "productName": "HTM Maandkorting 20%",
                                  "fikoArticleNumber": "6609",
                                  "productDescription": "HTM Maandkorting 20%",
                                  "taxCode": "V21",
                                  "taxPercentage": 21.0000,
                                  "taxAmount": null,
                                  "amountExclTax": null,
                                  "amountInclTax": 121,
                                  "vouchers":[],
                                  "quantity": 1,
                                  "orderLineTerms":
                                    [
                                      {
                                        "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                        "termsUrl": "generalTermsAndConditions.pdf",
                                      },
                                      {
                                        "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                        "termsUrl": "productTermsAndConditions.pdf",
                                      },
                                    ],
                                  "createdOn": "2024-03-22T09:00:00",
                                  "validFrom": "2024-03-22T09:00:00",
                                  "validUntil": null,
                                  "orderLineStatus":
                                    {
                                      "orderLineStatusId": 1,
                                      "name": "pending",
                                    },
                                  "customerTokens": null,
                                },
                              ],
                            "payments":
                              [
                                {
                                  "paymentId": "1a973c85-7a96-41b5-bbf2-7919d6a6db15",
                                  "createdOn": "2024-03-22T09:00:00",
                                  "amountDebit": 121,
                                  "paymentMethod":
                                    {
                                      "paymentMethodId": 1,
                                      "name": "ideal",
                                      "provider": "Buckaroo",
                                    },
                                  "touchPoint":
                                    {
                                      "salesTouchpointId": 3,
                                      "name": "Website (Perplex)",
                                      "isActive": true,
                                      "retailerId": 1001,
                                    },
                                  "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",
                                      "directDebitMandateType":
                                        {
                                          "directDebitMandateTypeId": 1,
                                          "name": "import",
                                        },
                                      "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,
                                  },
                              },
                          },
                          {
                            "validContents": false,
                            "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                            "externalOrderId": null,
                            "orderNumber": "ORD-123456",
                            "customerProfileId": 1337,                            
                            "device": {
                              "externalDeviceId": "123e4567-e89b-12d3-a456-426614174000",
                              "alias": null,
                            },
                            "vouchers":[],
                            "totalAmount": 121,
                            "touchPoint":
                              {
                                "salesTouchpointId": 3,
                                "name": "Website (Perplex)",
                                "isActive": true,
                                "retailerId": 1001,
                              },
                            "language":
                              {
                                "languageId": 1,
                                "name": "Nederlands",
                                "iso639Code": "nl-NL",
                                "ietfCode": "nl",
                              },
                            "createdOn": "2024-03-22T09:00:00",
                            "lastUpdatedOn": "2024-03-22T09:00:00",
                            "order_OrderStatuses":
                              [
                                {
                                  "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%",
                                  "fikoArticleNumber": "6609",
                                  "productDescription": "HTM Maandkorting 20%",
                                  "taxCode": "V21",
                                  "taxPercentage": 21.0000,
                                  "taxAmount": null,
                                  "amountExclTax": null,
                                  "amountInclTax": 121,
                                  "vouchers":[],
                                  "quantity": 1,
                                  "orderLineTerms":
                                    [
                                      {
                                        "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                        "termsUrl": "generalTermsAndConditions.pdf",
                                      },
                                      {
                                        "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                        "termsUrl": "productTermsAndConditions.pdf",
                                      },
                                    ],
                                  "createdOn": "2024-03-22T09:00:00",
                                  "validFrom": "2024-03-22T09:00:00",
                                  "validUntil": null,
                                  "orderLineStatus":
                                    {
                                      "orderLineStatusId": 1,
                                      "name": "pending",
                                    },
                                  "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",
                                            "birthdate": "1970-01-01",
                                            "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                            "challengeType":
                                              {
                                                "challengeTypeId": 1,
                                                "name": "email",
                                              },
                                            "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                          },
                                        "ovPayToken":
                                          {
                                            "customerProfileId": 1337,
                                            "ovPayTokenId": 1,
                                            "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                            "tokenType":
                                              {
                                                "tokenTypeId": 2,
                                                "name": "OV-pas physical",
                                              },
                                            "alias": "MyToken",
                                            "tokenStatus":
                                              {
                                                "tokenStatusId": 2,
                                                "name": "Active",
                                              },
                                            "expirationDate": "2028-02-01",
                                            "replacedByTokenId": null,
                                            "autoReloadRegistration":
                                              {
                                                "autoReloadAmount": 500,
                                                "retailerReferenceId": "abc",
                                                "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                                "autoReloadRegistrationStatus": "ACTIVE",
                                                "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                              },
                                            "ePurse":
                                              {
                                                "e-PurseBalance":
                                                  {
                                                    "currency": "EUR",
                                                    "amount": 350,
                                                  },
                                                "status": "ACTIVE",
                                                "originDate": "2019-07-16T11:00:00+02:00",
                                              },
                                            "personalAccountData":
                                              {
                                                "name":
                                                  {
                                                    "inaccuracyFlag": false,
                                                    "inaccuracyFlagReason": null,
                                                    "inaccuracyFlagSetCounter": 0,
                                                    "isValidated": false,
                                                    "changeCounter": 0,
                                                    "maxUpdatesVerificationCount": 0,
                                                    "lastChangeDate": "2024-08-24T14:15:22Z",
                                                  },
                                                "birthdate":
                                                  {
                                                    "inaccuracyFlag": false,
                                                    "inaccuracyFlagReason": null,
                                                    "inaccuracyFlagSetCounter": 0,
                                                    "isValidated": false,
                                                    "changeCounter": 0,
                                                    "maxUpdatesVerificationCount": 0,
                                                    "lastChangeDate": "2024-08-24T14:15:22Z",
                                                  },
                                                "photo":
                                                  {
                                                    "inaccuracyFlag": false,
                                                    "inaccuracyFlagReason": null,
                                                    "inaccuracyFlagSetCounter": 0,
                                                    "isValidated": false,
                                                    "changeCounter": 0,
                                                    "maxUpdatesVerificationCount": 0,
                                                    "lastChangeDate": "2024-08-24T14:15:22Z",
                                                  },
                                              },
                                            "gboAgeProfile":
                                              {
                                                "gboAgeProfileId": 1,
                                                "name": "Kind (4 t/m 11 jaar)",
                                                "ageFromInclusive": 4,
                                                "ageToInclusive": 11,
                                              },
                                          },
                                      },
                                    ],
                                  "orderAccountingStatuses": [],
                                  "validationResult": "invalid",
                                  "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": [],
                            "orderCustomer": null,
                          },
                        ],
                      "_links":
                        {
                          "self":
                            {
                              "href": "https://api.example.com/items",
                              "method": "GET",
                              "templated": true,
                            },
                        },
                      "href": "string",
                    }
    post:
      tags:
        - Order Creation Flow
      summary: Create a new order.
      description: |
        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".
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Create order with OVpas and PAD:
                summary: Create order with OVpas and PAD
                description: Create order with OVpas and PAD
                value:
                  {
                    "externalOrderId": null,
                    "languageId": 1,
                    "externalDeviceId": "9d03ca60-d2ab-4429-830d-49e12d0a29d4",
                    "orderLines":
                      [
                        {
                          "externalOrderLineId": null,
                          "productId": 1,
                          "vouchers":[],
                          "quantity": 1,
                          "validFrom": "2024-03-22T09:00:00",
                          "validUntil": null,
                          "customerTokens":
                            [
                              {
                                "tokenTypeId": 1,
                                "ovPayTokenId": 1,
                                "serviceReferenceId": "NLOV1234567ABCDEFG",
                                "amount": 34,
                                "ovpasNumber": "OV34567",
                                "verificationCode": "A7H6",
                                "personalAccountData":
                                  {
                                    "name": "Jan de Vries",
                                    "birthdate": "1970-01-01",
                                    "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                    "challengeTypeId": 1,
                                    "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                  },
                              },
                            ],
                        },
                      ],
                  }
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Concept order with OVpas and PAD:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,
                      "device":{
                        "externalDeviceId": "9d03ca60-d2ab-4429-830d-49e12d0a29d4",
                        "alias": null },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "invalid",
                            "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": [],
                      "orderCustomer": null,
                    }
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The combination of tokens and/or products chosen is not valid. See errors for more details.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Startdate of this product should be at most 60 days in the future.",
                        "pointer": "#/0/startDate",
                        "ovPayTokenId": 123,
                        "productId": 2,
                      },
                      {
                        "detail": "Combination of product and token type is not valid.",
                        "pointer": "#/1/ovPayTokenId",
                        "ovPayTokenId": 123,
                        "productId": 3,
                      },
                    ],
                }
  /orders/{orderId}:
    parameters:
      - in: path
        name: orderId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    get:
      tags:
        - Order Retrieval
      summary: Get a single order.
      description: Get a single order.
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with status concept (and existing token):
                  summary: Order with status concept (and existing token)
                  description: Order with status concept (and existing token)
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 1,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "invalid",
                            "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": [],
                      "orderCustomer": null,
                    }
                Order with status concept (and anonymous token):
                  summary: Order with status concept (and anonymous token)
                  description: Order with status concept (and anonymous token)
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device": null,
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": null,
                                  "serviceReferenceId": "NLOV1234567ABCDEFG",
                                  "amount": 34,
                                  "ovpasNumber": "OV34567",
                                  "verificationCode": "A7H6",
                                  "personalAccountData":
                                    {
                                      "personalAccountDataId": "47db8a40-3238-4bf5-9284-759e3888bd47",
                                      "name": "Jan de Vries",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": null,
                                      "ovPayTokenId": null,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": null,
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "invalid",
                            "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": [],
                      "orderCustomer": null,
                    }
                Order with status paid:
                  summary: Order with status paid
                  description: Order with status paid
                  value:
                    {
                      "validContents": null,
                      "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d",
                      "externalOrderId": "bac3958b-804a-43e3-b5f7-0b0fffaae5b7",
                      "orderNumber": "123456",
                      "customerProfileId": 42,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": null 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken": null,
                                },
                              ],
                            "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": null,
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                        ],
                      "payments":
                        [
                          {
                            "paymentId": "3ba4a3c7-0803-4214-800b-365851b8903d",
                            "createdOn": "2024-03-22T09:00:00",
                            "amountDebit": 121,
                            "paymentMethod":
                              {
                                "paymentMethodId": 1,
                                "name": "ideal",
                                "provider": "Buckaroo",
                              },
                            "touchPoint":
                              {
                                "salesTouchpointId": 3,
                                "name": "Website (Perplex)",
                                "isActive": true,
                                "retailerId": 1001,
                              },
                            "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": 3, "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 Flow
      summary: Update an existing order.
      description: Update an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Update order languageId:
                summary: Update order languageId
                description: Update order languageId
                value: { "languageId": 1}              
              Add externalDeviceId:
                summary: Add order externalDeviceId
                description: Add order externalDeviceId
                value: { "externalDeviceId": "f7f0c608-aa9c-4812-bbb6-b1e700d21da0"}
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Update order languageId:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device": null,
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "invalid",
                            "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": [],
                      "orderCustomer": null,
                    }
                Add externalDeviceId:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device": {
                        "externalDeviceId": "f7f0c608-aa9c-4812-bbb6-b1e700d21da0",
                        "alias": null 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "invalid",
                            "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": [],
                      "orderCustomer": null,
                    }
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The combination of tokens and/or products chosen is not valid. See errors for more details.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Startdate of this product should be at most 60 days in the future.",
                        "pointer": "#/0/startDate",
                        "ovPayTokenId": 123,
                        "productId": 2,
                      },
                      {
                        "detail": "Combination of product and token type is not valid.",
                        "pointer": "#/1/ovPayTokenId",
                        "ovPayTokenId": 123,
                        "productId": 3,
                      },
                    ],
                }
    delete:
      tags:
        - Order Creation Flow
      summary: Delete an existing order.
      description: Delete an existing order.
      responses:
        "200":
          description: OK
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The order can not be deleted.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Order status is paid",
                        "pointer": "#/order_OrderStatus/1/orderStatus/orderStatusId",
                        "orderStatusId": 4,
                      },
                    ],
                }
  /orders/{orderId}/orderlines:
    parameters:
      - in: path
        name: orderId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    post:
      tags:
        - Order Creation Flow
      summary: Add a new order line to an existing order.
      description: Add  a new order line to an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Add order line to concept order:
                summary: Add order line to concept order product with children
                description: Add order line to concept order product with children
                value:
                  {
                    "externalOrderLineId": null,
                    "productId": 2,
                    "vouchers":[],
                    "quantity": 1,
                    "validFrom": "2024-03-22T09:00:00",
                    "validUntil": null,
                    "createdOn": "2024-03-22T09:00:00",
                    "customerTokens":
                      [
                        {
                          "tokenTypeId": 1,
                          "ovPayTokenId": 4,
                          "serviceReferenceId": null,
                          "amount": null,
                          "ovpasNumber": null,
                          "verificationCode": null,
                          "personalAccountData": null,
                        },
                      ],
                  }
              Order line with minimum requirements:
                summary: Create order line with minimum requirements
                description: Create order line with minimum requirements
                value:
                  {
                    "productId": 2,
                    "vouchers":[],
                    "quantity": 1,
                    "createdOn": "2024-03-22T09:00:00",
                  }
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                AddRemark chosen product is not a leaf node product:
                  summary: AddRemark chosen product is not a leaf node product
                  description: AddRemark for case where chosen product is not a leaf node product
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device": null,
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "PRODUCT_CHOICE_REQUIRED",
                                  "parameter": "orderline.productId",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
                Create order line with minimum requirements:
                  summary: Create order line with minimum requirements
                  description: AddRemark for case where chosen product requires personal account data birthdate
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android"
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 4,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "PERSONALACCOUNTDATA_BIRTHDATE_REQUIRED",
                                  "parameter": "personalaccountdata.birthdate",
                                },
                                {
                                  "code": "TOKEN_REQUIRED",
                                  "parameter": "customerToken",
                                },
                                {
                                  "code": "VALIDFROM_REQUIRED",
                                  "parameter": "orderline.validFrom",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The combination of tokens and/or products chosen is not valid. See errors for more details.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Startdate of this product should be at most 60 days in the future.",
                        "pointer": "#/0/startDate",
                        "ovPayTokenId": 123,
                        "productId": 2,
                      },
                      {
                        "detail": "Combination of product and token type is not valid.",
                        "pointer": "#/1/ovPayTokenId",
                        "ovPayTokenId": 123,
                        "productId": 3,
                      },
                    ],
                }
  /orderlines/{orderLineId}:
    parameters:
      - in: path
        name: orderLineId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    patch:
      tags:
        - OrderLine
      summary: Update an existing order line.
      description: Update an existing order line.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Update order line:
                summary: Update order line
                description: Update order line
                value:
                  {
                    "productId": 21,
                    "vouchers":[],
                    "quantity": 1,
                    "validFrom": "2024-03-25T09:00:00",
                    "validUntil": null,
                  }
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with updated order line:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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": 21,
                            "productName": "HTM Regio Vrij - HL65 - Voltarief",
                            "fikoArticleNumber": "6609",
                            "productDescription": "Voor een vast bedrag onbeperkt reizen met EBS, HTM en RET in gebied HL65",
                            "taxCode": "V09",
                            "taxPercentage": 9.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 5900,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "cac42e50-b1d3-4745-9a5d-a793bd27aad1",
                                  "termsUrl": "RegiovrijTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2025-05-22T09:00:00",
                            "validFrom": "2025-05-25T04:00:00",
                            "validUntil": "2025-06-25T04:00:00",
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens": [],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "MANDATE_REQUIRED",
                                  "parameter": "directDebitMandateId",
                                },
                                {
                                  "code": "CUSTOMERTOKEN_REQUIRED",
                                  "parameter": "customerTokenId",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The start date of the product is not allowed. See errors for more details.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Startdate of this product should be at most 60 days in the future.",
                        "pointer": "#/0/startDate",
                        "ovPayTokenId": 123,
                        "productId": 2,
                      },
                    ],
                }
    delete:
      tags:
        - OrderLine
      summary: Delete an existing order line.
      description: Delete an existing order line.
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with removed order line:
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 0,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f",
                            "orderStatus":
                              { "orderStatusId": 1, "name": "concept" },
                            "createdOn": "2024-03-22T09:00:00",
                            "description": "Order is aangemaakt",
                          },
                        ],
                      "orderLines": [],
                      "payments": [],
                      "orderCustomer": null,
                    }
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The combination of tokens and/or products chosen is not valid. See errors for more details.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Product requires product with productId=2",
                        "pointer": "#/1/orderLine",
                        "orderLineId": "0574440e-7fa0-401f-b907-539c91633a5d",
                        "productId": 3,
                      },
                    ],
                }
  /orderlines/{orderLineId}/customertokens:
    parameters:
      - in: path
        name: orderLineId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    post:
      tags:
        - OrderLine
      summary: Add a customer token to an orderLine.
      description: Add a customer token to an orderLine.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Add an existing customer token to an order line:
                summary: Add an existing customer token to an order line
                description: Add an existing customer token to an order line
                value: { "tokenTypeId": 1, "ovPayTokenId": 12 }
              Add a new customer token (EMV) to an order line:
                summary: Add a new customer token (EMV) to an order line
                description: Add a new customer token (EMV) to an order line
                value:
                  {
                    "tokenTypeId": 1,
                    "serviceReferenceId": "NLOV485456456445",
                    "amount": 100,
                  }
              Add a new customer token (OVpas) to an order line:
                summary: Add a new customer token (OVpas) to an order line
                description: Add a new customer token (OVpas) to an order line
                value:
                  {
                    "tokenTypeId": 2,
                    "ovpasNumber": "OV34567",
                    "verificationCode": "A7H6",
                  }
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with updated order line:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "PERSONALACCOUNTDATA_BIRTHDATE_REQUIRED",
                                  "parameter": "personalaccountdata.birthdate",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
  /orderlines/{orderLineId}/vouchers:
    parameters:
      - in: path
        name: orderLineId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    post:
      tags:
        - OrderLine
      summary: Add a new voucher to an existing orderLine.
      description: Add  a new voucher to an existing orderLine.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Add voucher to orderLine:
                summary: Add voucher to orderLine to receive voucher benefits for a specific product
                description: Add voucher to orderLine to receive voucher benefits for a specific product
                value:
                  {
                    "voucherCode": "VOUCHER786"
                  }
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Add voucher to orderLine:
                  summary: Add voucher to orderLine
                  description: Add voucher to orderLine
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device": null,
                      "vouchers":[
                        ],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[                            
                              { 
                                "orderVoucherId": "d271c79d-2d3f-477b-8e29-73c9b409a758",
                                "issuedVoucherId": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90",
                                "voucherCode": "VOUCHER786",
                                "fromInclusive": "2024-10-04T00:00:00.000",
                                "untilInclusive": "2024-11-04T00:00:00.000",
                                "voucherStatus":
                                  { "voucherStatusId": 1, "name": "New" },
                                "product":
                                  {
                                    "productId": 263,
                                    "productName": "HTM-80001",
                                    "productDescription": "10 euro korting op HTM maandkorting 20%",
                                    "productCategory":
                                        {
                                          "productCategoryId": 9,
                                          "isTravelProduct": false,
                                          "name": "Voucher",
                                        },
                                    "amountInclTax": -1000,
                                    "requiredProducts":
                                        [
                                        {
                                            "productId": 1,
                                            "productName": "HTM-30001",
                                            "productDescription": "HTM Maandkorting 20%",
                                            "_links":
                                              {
                                                "get_details":
                                                  {
                                                    "href": "https://api.integratielaag.nl/abt/touchpoint/1.0/products/1",
                                                    "method": "GET",
                                                  },
                                              },
                                          },
                                        ],
                                      "_links":
                                        {
                                          "get_details":
                                            {
                                              "href": "https://api.integratielaag.nl/abt/touchpoint/1.0/products/263",
                                              "method": "GET",
                                            },
                                        },
                                    },
                                "mandatoryCustomerDataItems":
                                    [
                                      {
                                        "mandatoryCustomerDataItemId": 8,
                                        "customerDataItem": "padBirthDate"                                 
                                      },
                                      {
                                        "mandatoryCustomerDataItemId": 4,
                                        "customerDataItem": "emailAddress"                                 
                                      },
                                    ],
                                }
                             ],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "PRODUCT_CHOICE_REQUIRED",
                                  "parameter": "orderline.productId",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The combination of tokens and/or products chosen is not valid. See errors for more details.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Startdate of this product should be at most 60 days in the future.",
                        "pointer": "#/0/startDate",
                        "ovPayTokenId": 123,
                        "productId": 2,
                      },
                      {
                        "detail": "Combination of product and token type is not valid.",
                        "pointer": "#/1/ovPayTokenId",
                        "ovPayTokenId": 123,
                        "productId": 3,
                      },
                    ],
                }  
  /orders/{orderId}/vouchers:
    parameters:
      - in: path
        name: orderId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    post:
      tags:
        - Order Creation Flow
      summary: Add a new voucher to an existing order.
      description: Add  a new voucher to an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Add voucher to concept order:
                summary: Add voucher to orderLine to receive voucher benefits for a whole order
                description: Add voucher to orderLine to receive voucher benefits for a whole order
                value:
                  {
                    "voucherCode": "VOUCHER123"
                  }
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Add voucher to concept order:
                  summary: Add voucher to concept order
                  description: Add voucher to concept order
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device": null,
                      "vouchers":[
                        { 
                          "orderVoucherId": "d271c79d-2d3f-477b-8e29-73c9b409a758",
                          "issuedVoucherId": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90",
                          "voucherCode": "VOUCHER123",
                          "fromInclusive": "2024-10-04T00:00:00.000",
                          "untilInclusive": "2024-11-04T00:00:00.000",
                          "voucherStatus":
                            { "voucherStatusId": 1, "name": "New" },
                          "product":
                            {
                              "productId": 269,
                              "productName": "HTM-80001",
                              "productDescription": "10 euro korting op je gehel order",
                              "productCategory":
                                  {
                                    "productCategoryId": 9,
                                    "isTravelProduct": false,
                                    "name": "Voucher",
                                  },
                              "amountInclTax": -1000,
                              "requiredProducts":
                                  [
                                  ],                              
                              },
                            "mandatoryCustomerDataItems":
                              [
                              ],
                          }
                        ],
                      "totalAmount": 21,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "PRODUCT_CHOICE_REQUIRED",
                                  "parameter": "orderline.productId",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
                Create order line with minimum requirements:
                  summary: Create order line with minimum requirements
                  description: AddRemark for case where chosen product requires personal account data birthdate
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 4,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "PERSONALACCOUNTDATA_BIRTHDATE_REQUIRED",
                                  "parameter": "personalaccountdata.birthdate",
                                },
                                {
                                  "code": "TOKEN_REQUIRED",
                                  "parameter": "customerToken",
                                },
                                {
                                  "code": "VALIDFROM_REQUIRED",
                                  "parameter": "orderline.validFrom",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The combination of tokens and/or products chosen is not valid. See errors for more details.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Startdate of this product should be at most 60 days in the future.",
                        "pointer": "#/0/startDate",
                        "ovPayTokenId": 123,
                        "productId": 2,
                      },
                      {
                        "detail": "Combination of product and token type is not valid.",
                        "pointer": "#/1/ovPayTokenId",
                        "ovPayTokenId": 123,
                        "productId": 3,
                      },
                    ],
                }  
  /customertokens/{customerTokenId}:
    parameters:
      - in: path
        name: customerTokenId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    patch:
      tags:
        - OrderLine
      summary: Update a customer token.
      description: Update a customer token.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Update a customer token:
                summary: Update a customer token
                description: Update a customer token
                value:
                  {
                    "tokenTypeId": 1,
                    "ovPayTokenId": null,
                    "serviceReferenceId": "NLOV1234567ABCDEFG",
                    "amount": 34,
                  }
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with updated customer token:
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "a0ef57fa-395c-4a03-96e9-234c26dccea9",
                                  "tokenTypeId": 1,
                                  "ovPayTokenId": null,
                                  "serviceReferenceId": "NLOV1234567ABCDEFG",
                                  "amount": 34,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "valid",
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
    delete:
      tags:
        - OrderLine
      summary: Delete a customer token from an orderline.
      description: Delete a customer token from an orderline.
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with deleted customer token:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens": [],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "CUSTOMERTOKEN_REQUIRED",
                                  "parameter": "customerTokenId",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
  /customertokens/{customerTokenId}/personalaccountdata:
    parameters:
      - in: path
        name: customerTokenId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    post:
      tags:
        - OrderLine
      summary: Add personal account data to a customer token.
      description: Add personal account data to a customer token.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Add personal account data to a customer token:
                summary: Add personal account data to a customer token
                description: Add personal account data to a customer token
                value:
                  {
                    "name": "Jan de Vries",
                    "birthdate": "1970-01-01",
                    "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                    "challengeTypeId": 1,
                    "oneTimePassword": "H5Iiz3JTaQeIV8p",
                  }
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with added personal account data to customer token:
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData":
                                    {
                                      "personalAccountDataId": "d9021fdd-6e83-45c0-9aef-71680f0b4e74",
                                      "name": "Jan de Vries",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeTypeId": 1,
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 12,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "valid",
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
  /personalaccountdata/{personalAccountDataId}:
    parameters:
      - in: path
        name: personalAccountDataId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: d9021fdd-6e83-45c0-9aef-71680f0b4e74
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    patch:
      tags:
        - OrderLine
      summary: Update personal account data.
      description: Update personal account data.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Update personal account data:
                summary: Update personal account data
                description: Update personal account data
                value: { "birthdate": "2010-01-01" }
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with updated personal account data:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": null 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData":
                                    {
                                      "personalAccountDataId": "d9021fdd-6e83-45c0-9aef-71680f0b4e74",
                                      "name": "Jan de Vries",
                                      "birthdate": "2010-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeTypeId": 1,
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "invalid",
                            "additionalRemarks": [],
                            "validationErrors":
                              [
                                {
                                  "detail": "Product is for gboAgeProfile 19-65, given gboAgeProfile is 12-19",
                                  "pointer": "#/customerTokens/878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e/personalAccountData/birthdate",
                                },
                              ],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
    delete:
      tags:
        - OrderLine
      summary: Delete personal account data.
      description: Delete personal account data.
      responses:
        "200":
          description: Ok
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with deleted personal account data:
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 12,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "valid",
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer": null,
                    }
  /orders/{orderId}/payments:
    parameters:
      - in: path
        name: orderId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    post:
      tags:
        - Order Creation Flow
      summary: Add a payment to an existing order.
      description: Add a payment to an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Add a payment to an order:
                summary: Add a payment to an order
                description: |
                  Add a payment for a concept order. Note how it is not allowed to add a payment status or an external
                  payment reference when adding a payment to a concept order. Also note how the order status changes to
                  'awaitingPayment' after adding the payment. Finally, the customerToken information is less detailed 
                  since the order status is not concept anymore.
                value:
                  {
                    "createdOn": "2024-03-22T09:00:00",
                    "amountDebit": 121,
                    "paymentMethodId": 1,
                    "isRefund": false,
                    "htmPaymentReference": "HTM-1234",
                  }
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order in status 'awaitingPayment':
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "order_orderStatusId": "99137e30-2bf5-4c9b-95f0-ca432adcae5f",
                            "orderStatus":
                              { "orderStatusId": 2, "name": "awaitingPayment" },
                            "createdOn": "2024-03-22T09:05:00",
                            "description": "Betaling is geinitieerd",
                          },
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken": null,
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "valid",
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                          {
                            "orderLineId": "2cb04b38-e9a8-465a-a273-261c55a21b71",
                            "externalOrderLineId": null,
                            "productId": 2,
                            "productName": "HTM Maandkorting 40%",
                            "fikoArticleNumber": "6610",
                            "productDescription": "HTM Maandkorting 40%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 242,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                  "tokenType":
                                    { "tokenTypeId": 1, "name": "EMV" },
                                  "ovPayTokenId": 4,
                                  "serviceReferenceId": null,
                                  "amount": null,
                                  "ovpasNumber": null,
                                  "verificationCode": null,
                                  "personalAccountData": null,
                                  "ovPayToken": null,
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "valid",
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                        ],
                      "payments":
                        [
                          {
                            "paymentId": "1a973c85-7a96-41b5-bbf2-7919d6a6db15",
                            "createdOn": "2024-03-22T09:00:00",
                            "amountDebit": 121,
                            "paymentMethod":
                              {
                                "paymentMethodId": 1,
                                "name": "ideal",
                                "provider": "Buckaroo",
                              },
                            "touchPoint":
                              {
                                "salesTouchpointId": 3,
                                "name": "Website (Perplex)",
                                "isActive": true,
                                "retailerId": 1001,
                              },
                            "isRefund": false,
                            "htmPaymentReference": "HTM-1234",
                            "pspPaymentReference": null,
                            "paymentStatuses": [],
                            "mandateInput": null,
                          },
                        ],
                      "orderCustomer":
                        {
                          "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073",
                          "birthname": "Jan",
                          "surname": "Vries",
                          "prefix": "de",
                          "emailAddress": "jandevries@outlook.com",
                          "dateOfBirth": "1970-01-01",
                          "orderCustomerAddresses":
                            [
                              {
                                "orderCustomerAddressId": "94270188-4cf6-447e-bd49-e8186bcec073",
                                "addressType":
                                  { "addressTypeId": 3, "name": "Billing" },
                                "street": "Kon. Julianaplein",
                                "houseNumber": 10,
                                "houseNumberSuffix": "a",
                                "postalCode": "2595 AA",
                                "city": "Den Haag",
                                "country": "NL",
                              },
                            ],
                        },
                    }
  /payments/{paymentId}:
    parameters:
      - in: path
        name: paymentId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    patch:
      tags:
        - Order Creation Flow
      summary: Update a payment on an existing orders.
      description: Update a payment on an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Update payment (pending payment):
                summary: Update payment (pending payment)
                description: Update payment (pending payment)
                value: { "todo": "todo" }
              Update payment (payment successful):
                summary: Update payment (payment successful)
                description: Update payment (payment successful)
                value:
                  {
                    "htmPaymentReference": "HTM-1234",
                    "pspPaymentReference": "Buckaroo-1234",
                    "paymentStatuses":
                      [
                        {
                          "createdOn": "2024-03-22T09:00:00",
                          "statusCode": "190",
                          "statusDescription": "Success",
                          "statusSubCode": null,
                          "statusSubDescription": null,
                        },
                      ],
                    "mandateInput":
                      {
                        "directDebitMandateTypeId": 1,
                        "createdOn": "2024-03-22T09:00:00",
                        "bic": "RABONL2U",
                        "iban": "NL44RABO0123456789",
                        "ascription": "J. de Vries",
                        "place": "Den Haag",
                      },
                  }
              Update payment (payment failed):
                summary: Update payment (payment failed)
                description: Update payment (payment failed)
                value: { "todo": "todo" }
              Update payment (payment cancelled):
                summary: Update payment (payment cancelled)
                description: Update payment (payment cancelled)
                value: { "todo": "todo" }
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order updated to payment successful:
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "order_orderStatusId": "5b6f4e2e-3c4b-4f5d-9e2a-8f4e2b6c7d8e",
                            "orderStatus":
                              { "orderStatusId": 3, "name": "paid" },
                            "createdOn": "2024-03-22T09:10:00",
                            "description": "Betaling is succesvol afgerond",
                          },
                          {
                            "order_orderStatusId": "99137e30-2bf5-4c9b-95f0-ca432adcae5f",
                            "orderStatus":
                              { "orderStatusId": 2, "name": "awaitingPayment" },
                            "createdOn": "2024-03-22T09:05:00",
                            "description": "Betaling is geinitieerd",
                          },
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken": null,
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "valid",
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                        ],
                      "payments":
                        [
                          {
                            "paymentId": "1a973c85-7a96-41b5-bbf2-7919d6a6db15",
                            "createdOn": "2024-03-22T09:00:00",
                            "amountDebit": 121,
                            "paymentMethod":
                              {
                                "paymentMethodId": 1,
                                "name": "ideal",
                                "provider": "Buckaroo",
                              },
                            "touchPoint":
                              {
                                "salesTouchpointId": 3,
                                "name": "Website (Perplex)",
                                "isActive": true,
                                "retailerId": 1001,
                              },
                            "isRefund": false,
                            "htmPaymentReference": "HTM-1234",
                            "pspPaymentReference": "Buckaroo-1234",
                            "paymentStatuses":
                              [
                                {
                                  "paymentStatusId": "42eee610-1a17-4f02-be14-7e25d69d35f3",
                                  "createdOn": "2024-03-22T09:00:00",
                                  "statusCode": "?",
                                  "statusDescription": "Initiated",
                                  "statusSubCode": "?",
                                  "statusSubDescription": "PaymentInitiated",
                                },
                                {
                                  "paymentStatusId": "b9893367-0cab-45a8-89f9-03a14d6cd138",
                                  "createdOn": "2024-03-22T09:00:00",
                                  "statusCode": "791",
                                  "statusDescription": "Pending processing",
                                  "statusSubCode": "S001",
                                  "statusSubDescription": "PendingProcessing",
                                },
                                {
                                  "paymentStatusId": "9edfb9ad-f5b3-4edc-8216-7cd0070b03f3",
                                  "createdOn": "2024-03-22T09:01:00",
                                  "statusCode": "190",
                                  "statusDescription": "Success",
                                  "statusSubCode": "S001",
                                  "statusSubDescription": "PaymentSuccessful",
                                },
                              ],
                            "mandateInput":
                              {
                                "mandateInputId": "7e3c7b4e-2b4d-4e0b-8f8b-0e8d9f0a2c3b",
                                "directDebitMandateType":
                                  {
                                    "directDebitMandateTypeId": 1,
                                    "name": "import",
                                  },
                                "createdOn": "2024-03-22T09:00:00",
                                "bic": "RABONL2U",
                                "iban": "NL44RABO0123456789",
                                "ascription": "J. de Vries",
                                "place": "Den Haag",
                              },
                          },
                        ],
                      "orderCustomer":
                        {
                          "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073",
                          "birthname": "Jan",
                          "surname": "Vries",
                          "prefix": "de",
                          "emailAddress": "jandevries@outlook.com",
                          "dateOfBirth": "1970-01-01",
                          "orderCustomerAddresses":
                            [
                              {
                                "orderCustomerAddressId": "94270188-4cf6-447e-bd49-e8186bcec073",
                                "addressTypeId":
                                  { "addressTypeId": 3, "name": "Billing" },
                                "street": "Kon. Julianaplein",
                                "houseNumber": 10,
                                "houseNumberSuffix": "a",
                                "postalCode": "2595 AA",
                                "city": "Den Haag",
                                "country": "NL",
                              },
                            ],
                        },
                    }
                v9.9 (Nick Pows):
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": "be8160b3-a7f7-4a63-ad63-09503b2fc4a3",
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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": "0211f11b-270e-43f2-8ecc-3fe85773a0a2",
                            "productId": 1,
                            "productName": "HTM Maandkorting 20%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": "2024-03-22T09:00:00",
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken": null,
                                },
                              ],
                            "orderAccountingStatuses":
                              [
                                {
                                  "orderAccountingStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f",
                                  "accountingStatus":
                                    { "accountingStatusId": 1, "name": "open" },
                                  "createdOn": "2024-03-22T09:00:00",
                                  "description": "Order is aangemaakt",
                                },
                              ],
                            "validationResult": "invalid",
                            "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": "1a973c85-7a96-41b5-bbf2-7919d6a6db15",
                            "createdOn": "2024-03-22T09:00:00",
                            "amountDebit": 121,
                            "paymentMethod":
                              {
                                "paymentMethodId": 1,
                                "name": "ideal",
                                "provider": "Buckaroo",
                              },
                            "touchPoint":
                              {
                                "salesTouchpointId": 3,
                                "name": "Website (Perplex)",
                                "isActive": true,
                                "retailerId": 1001,
                              },
                            "isRefund": false,
                            "htmPaymentReference": "HTM-1234",
                            "pspPaymentReference": "Buckaroo-1234",
                            "paymentStatuses":
                              [
                                {
                                  "paymentStatusId": "42eee610-1a17-4f02-be14-7e25d69d35f3",
                                  "createdOn": "2024-03-22T09:00:00",
                                  "statusCode": "?",
                                  "statusDescription": "Initiated",
                                  "statusSubCode": "?",
                                  "statusSubDescription": "PaymentInitiated",
                                },
                                {
                                  "paymentStatusId": "b9893367-0cab-45a8-89f9-03a14d6cd138",
                                  "createdOn": "2024-03-22T09:00:00",
                                  "statusCode": "791",
                                  "statusDescription": "Pending processing",
                                  "statusSubCode": "S001",
                                  "statusSubDescription": "PendingProcessing",
                                },
                                {
                                  "paymentStatusId": "9edfb9ad-f5b3-4edc-8216-7cd0070b03f3",
                                  "createdOn": "2024-03-22T09:01:00",
                                  "statusCode": "190",
                                  "statusDescription": "Success",
                                  "statusSubCode": "S001",
                                  "statusSubDescription": "PaymentSuccessful",
                                },
                              ],
                            "mandateInput":
                              {
                                "mandateInputId": "1d6626cd-b93b-4ea6-85d5-a8e3a24a2725",
                                "directDebitMandateType":
                                  {
                                    "directDebitMandateTypeId": 1,
                                    "name": "import",
                                  },
                                "createdOn": "2024-03-22T09:00:00",
                                "bic": "RABONL2U",
                                "iban": "NL44RABO0123456789",
                                "ascription": "J. de Vries",
                                "place": "Den Haag",
                              },
                          },
                        ],
                      "orderCustomer":
                        {
                          "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073",
                          "birthname": "Jan",
                          "surname": "Vries",
                          "prefix": "de",
                          "emailAddress": "jandevries@outlook.com",
                          "dateOfBirth": "1970-01-01",
                          "orderCustomerAddresses":
                            [
                              {
                                "orderCustomerAddressId": "94270188-4cf6-447e-bd49-e8186bcec073",
                                "addressTypeId":
                                  { "addressTypeId": 3, "name": "Billing" },
                                "street": "Kon. Julianaplein",
                                "houseNumber": 10,
                                "houseNumberSuffix": "a",
                                "postalCode": "2595 AA",
                                "city": "Den Haag",
                                "country": "NL",
                              },
                            ],
                        },
                    }
  /orders/{orderId}/ordercustomers:
    parameters:
      - in: path
        name: orderId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    post:
      tags:
        - Order Creation Flow
      summary: Add a customer to an existing orders.
      description: Add a customer to an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Add a customer to an existing order:
                summary: Add a customer to an existing order
                description: Add a customer to an existing order
                value:
                  {
                    "birthname": "Jan",
                    "surname": "Vries",
                    "prefix": "de",
                    "emailAddress": "jandevries@outlook.com",
                    "dateOfBirth": "1970-01-01",
                    "orderCustomerAddresses":
                      [
                        {
                          "addressTypeId": 3,
                          "street": "Kon. Julianaplein",
                          "houseNumber": 10,
                          "houseNumberSuffix": "a",
                          "postalCode": "2595 AA",
                          "city": "Den Haag",
                          "country": "NL",
                        },
                      ],
                  }
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Oder with added customer:
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "valid",
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer":
                        {
                          "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073",
                          "birthname": "Jan",
                          "surname": "Vries",
                          "prefix": "de",
                          "emailAddress": "jandevries@outlook.com",
                          "dateOfBirth": "1970-01-01",
                          "orderCustomerAddresses":
                            [
                              {
                                "orderCustomerAddressId": "94270188-4cf6-447e-bd49-e8186bcec073",
                                "addressType":
                                  { "addressTypeId": 3, "name": "Billing" },
                                "street": "Kon. Julianaplein",
                                "houseNumber": 10,
                                "houseNumberSuffix": "a",
                                "postalCode": "2595 AA",
                                "city": "Den Haag",
                                "country": "NL",
                              },
                            ],
                        },
                    }
  /ordercustomers/{orderCustomerId}:
    patch:
      parameters:
        - in: path
          name: orderCustomerId
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: uuid
            example: a0ef57fa-395c-4a03-96e9-234c26dccea9
        - in: header
          name: X-HTM-JWT-AUTH-HEADER
          schema:
            type: string
            example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
          description: The JWT of the logged in customer (in case of a web shop).
      tags:
        - Order Creation Flow
      summary: Update a customer on an existing order.
      description: Update a customer on an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Update a customer on an existing order:
                summary: Update a customer on an existing order
                description: Update a customer on an existing order
                value:
                  {
                    "birthname": "Jan",
                    "surname": "Vries",
                    "prefix": "de",
                    "emailAddress": "jandevries@outlook.com",
                    "dateOfBirth": "1970-01-01",
                  }
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with updated customer:
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "personalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "valid",
                            "additionalRemarks": [],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer":
                        {
                          "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073",
                          "birthname": "Jan",
                          "surname": "Vries",
                          "prefix": "de",
                          "emailAddress": "jandevries@outlook.com",
                          "dateOfBirth": "1970-01-01",
                          "orderCustomerAddresses":
                            [
                              {
                                "orderCustomerAddressId": "94270188-4cf6-447e-bd49-e8186bcec073",
                                "addressType":
                                  { "addressTypeId": 3, "name": "Billing" },
                                "street": "Kon. Julianaplein",
                                "houseNumber": 10,
                                "houseNumberSuffix": "a",
                                "postalCode": "2595 AA",
                                "city": "Den Haag",
                                "country": "NL",
                              },
                            ],
                        },
                    }
  /ordercustomers/{orderCustomerId}/orderCustomerAddress:
    post:
      parameters:
        - in: path
          name: orderCustomerId
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: uuid
            example: a0ef57fa-395c-4a03-96e9-234c26dccea9
        - in: header
          name: X-HTM-JWT-AUTH-HEADER
          schema:
            type: string
            example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
          description: The JWT of the logged in customer (in case of a web shop).
      tags:
        - Order Creation Flow
      summary: Create a customer address for an existing order.
      description: Create a customer address for an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Add an address to a customer on an order:
                summary: Add an address to a customer on an order
                description: Add an address to a customer on an order
                value:
                  {
                    "addressTypeId": 3,
                    "street": "Kon. Julianaplein",
                    "houseNumber": 10,
                    "houseNumberSuffix": "a",
                    "postalCode": "2595 AA",
                    "city": "Den Haag",
                    "country": "NL",
                  }
      responses:
        "201":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with added customer address:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "gboPersonalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "MANDATE_REQUIRED",
                                  "parameter": "directDebitMandateId",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer":
                        {
                          "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073",
                          "birthname": "Jan",
                          "surname": "Vries",
                          "prefix": "de",
                          "emailAddress": "jandevries@outlook.com",
                          "dateOfBirth": "1970-01-01",
                          "orderCustomerAddresses":
                            [
                              {
                                "orderCustomerAddressId": "a0ef57fa-395c-4a03-96e9-234c26dccea9",
                                "addressType":
                                  { "addressTypeId": 3, "name": "Billing" },
                                "street": "Kon. Julianaplein",
                                "houseNumber": 10,
                                "houseNumberSuffix": "a",
                                "postalCode": "2595 AA",
                                "city": "Den Haag",
                                "country": "NL",
                              },
                            ],
                        },
                    }
  /orderCustomerAddress/{orderCustomerAddressId}:
    patch:
      parameters:
        - in: path
          name: orderCustomerAddressId
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: uuid
            example: a0ef57fa-395c-4a03-96e9-234c26dccea9
        - in: header
          name: X-HTM-JWT-AUTH-HEADER
          schema:
            type: string
            example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
          description: The JWT of the logged in customer (in case of a web shop).
      tags:
        - Order Creation Flow
      summary: Update a customer address for an existing order.
      description: Update a customer address for an existing order.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/unavailable"
            examples:
              Update order customer address:
                summary: Update order customer address
                description: Update order customer address
                value:
                  {
                    "addressTypeId": 3,
                    "street": "Kon. Julianaplein",
                    "houseNumber": 101,
                    "houseNumberSuffix": "a",
                    "postalCode": "2595 AA",
                    "city": "Den Haag",
                    "country": "NL",
                  }
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order with updated customer address:
                  value:
                    {
                      "validContents": false,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 121,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "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%",
                            "fikoArticleNumber": "6609",
                            "productDescription": "HTM Maandkorting 20%",
                            "taxCode": "V21",
                            "taxPercentage": 21.0000,
                            "taxAmount": null,
                            "amountExclTax": null,
                            "amountInclTax": 121,
                            "vouchers":[],
                            "quantity": 1,
                            "orderLineTerms":
                              [
                                {
                                  "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                  "termsUrl": "generalTermsAndConditions.pdf",
                                },
                                {
                                  "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                  "termsUrl": "productTermsAndConditions.pdf",
                                },
                              ],
                            "createdOn": "2024-03-22T09:00:00",
                            "validFrom": "2024-03-22T09:00:00",
                            "validUntil": null,
                            "orderLineStatus":
                              { "orderLineStatusId": 1, "name": "pending" },
                            "customerTokens":
                              [
                                {
                                  "customerTokenId": "53a23772-0631-4eb8-b06a-8b4b74d120d5",
                                  "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",
                                      "birthdate": "1970-01-01",
                                      "photo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0Q+SWQA4wAAAAd0SU1FB+YCBAwmK58TFQgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDItMDRUMTI6Mzg6NDMrMDA6MDBAjYOrAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAyLTA0VDEyOjM4OjQzKzAwOjAwMdA7FwAAAFd6VFh0UmF3IHByb2ZpbGUgdHlwZSBpcHRjAAB4nOPyDAhxVigoyk/LzEnlUgADIwsuYwsTIxNLkxQDEyBEgDTDZAMjs1Qgy9jUyMTMxBzEB8uASKBKLgDqFxF08kI1lQAAAYdpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0n77u/JyBpZD0nVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkJz8+DQo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIj48cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPjxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSJ1dWlkOmZhZjViZGQ1LWJhM2QtMTFkYS1hZDMxLWQzM2Q3NTE4MmYxYiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPjx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+PC9yZGY6RGVzY3JpcHRpb24+PC9yZGY6UkRGPjwveDp4bXBtZXRhPg0KPD94cGFja2V0IGVuZD0ndyc/PiyUmAsAAAANSURBVBhXY3grk/YfAAXYAm/HQierAAAAAElFTkSuQmCC",
                                      "challengeType":
                                        {
                                          "challengeTypeId": 1,
                                          "name": "email",
                                        },
                                      "oneTimePassword": "H5Iiz3JTaQeIV8p",
                                    },
                                  "ovPayToken":
                                    {
                                      "customerProfileId": 1,
                                      "ovPayTokenId": 1,
                                      "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                      "tokenType":
                                        {
                                          "tokenTypeId": 2,
                                          "name": "OV-pas physical",
                                        },
                                      "alias": "MyToken",
                                      "tokenStatus":
                                        {
                                          "tokenStatusId": 2,
                                          "name": "Active",
                                        },
                                      "expirationDate": "2028-02-01",
                                      "replacedByTokenId": null,
                                      "autoReloadRegistration":
                                        {
                                          "autoReloadAmount": 500,
                                          "retailerReferenceId": "abc",
                                          "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                          "autoReloadRegistrationStatus": "ACTIVE",
                                          "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                        },
                                      "ePurse":
                                        {
                                          "e-PurseBalance":
                                            {
                                              "currency": "EUR",
                                              "amount": 350,
                                            },
                                          "status": "ACTIVE",
                                          "originDate": "2019-07-16T11:00:00+02:00",
                                        },
                                      "gboPersonalAccountData":
                                        {
                                          "name":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "birthdate":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                          "photo":
                                            {
                                              "inaccuracyFlag": false,
                                              "inaccuracyFlagReason": null,
                                              "inaccuracyFlagSetCounter": 0,
                                              "isValidated": false,
                                              "changeCounter": 0,
                                              "maxUpdatesVerificationCount": 0,
                                              "lastChangeDate": "2024-08-24T14:15:22Z",
                                            },
                                        },
                                      "gboAgeProfile":
                                        {
                                          "gboAgeProfileId": 1,
                                          "name": "Kind (4 t/m 11 jaar)",
                                          "ageFromInclusive": 4,
                                          "ageToInclusive": 11,
                                        },
                                    },
                                },
                              ],
                            "orderAccountingStatuses": [],
                            "validationResult": "preliminary",
                            "additionalRemarks":
                              [
                                {
                                  "code": "MANDATE_REQUIRED",
                                  "parameter": "directDebitMandateId",
                                },
                              ],
                            "validationErrors": [],
                          },
                        ],
                      "payments": [],
                      "orderCustomer":
                        {
                          "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073",
                          "birthname": "Jan",
                          "surname": "Vries",
                          "prefix": "de",
                          "emailAddress": "jandevries@outlook.com",
                          "dateOfBirth": "1970-01-01",
                          "orderCustomerAddresses":
                            [
                              {
                                "orderCustomerAddressId": "94270188-4cf6-447e-bd49-e8186bcec073",
                                "addressType":
                                  { "addressTypeId": 3, "name": "Billing" },
                                "street": "Kon. Julianaplein",
                                "houseNumber": 101,
                                "houseNumberSuffix": "a",
                                "postalCode": "2595 AA",
                                "city": "Den Haag",
                                "country": "NL",
                              },
                            ],
                        },
                    }
    delete:
      tags:
        - Order Creation Flow
      summary: Delete an existing order address.
      description: Delete an existing order address.
      parameters:
        - in: path
          name: orderCustomerAddressId
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: uuid
            example: a0ef57fa-395c-4a03-96e9-234c26dccea9
        - in: header
          name: X-HTM-JWT-AUTH-HEADER
          schema:
            type: string
            example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
          description: The JWT of the logged in customer (in case of a web shop).
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              examples:
                Order after deleting customer address:
                  value:
                    {
                      "validContents": true,
                      "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                      "externalOrderId": null,
                      "orderNumber": "ORD-123456",
                      "customerProfileId": 1337,                      
                      "device":{
                        "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                        "alias": "Mijn Android" 
                        },
                      "vouchers":[],
                      "totalAmount": 0,
                      "touchPoint":
                        {
                          "salesTouchpointId": 3,
                          "name": "Website (Perplex)",
                          "isActive": true,
                          "retailerId": 1001,
                        },
                      "language":
                        {
                          "languageId": 1,
                          "name": "Nederlands",
                          "iso639Code": "nl-NL",
                          "ietfCode": "nl",
                        },
                      "createdOn": "2024-03-22T09:00:00",
                      "lastUpdatedOn": "2024-03-22T09:00:00",
                      "order_OrderStatuses":
                        [
                          {
                            "order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f",
                            "orderStatus":
                              { "orderStatusId": 1, "name": "concept" },
                            "createdOn": "2024-03-22T09:00:00",
                            "description": "Order is aangemaakt",
                          },
                        ],
                      "orderLines": [],
                      "payments": [],
                      "orderCustomer":
                        {
                          "orderCustomerId": "94270188-4cf6-447e-bd49-e8186bcec073",
                          "birthname": "Jan",
                          "surname": "Vries",
                          "prefix": "de",
                          "emailAddress": "jandevries@outlook.com",
                          "dateOfBirth": "1970-01-01",
                          "addresses": null,
                        },
                    }
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/unavailable"
              example:
                {
                  "type": "https://htm.nl/api/v1/probs/validationerror",
                  "title": "Your request is not valid.",
                  "detail": "The combination of tokens and/or products chosen is not valid. See errors for more details.",
                  "instance": "urn:uuid:4017fabc-1b28-11e8-accf-0ed5f89f718b",
                  "errors":
                    [
                      {
                        "detail": "Product requires product with productId=2",
                        "pointer": "#/1/orderLine",
                        "orderLineId": "0574440e-7fa0-401f-b907-539c91633a5d",
                        "productId": 3,
                      },
                    ],
                }
  /orderVoucher/{orderVoucherId}:
      parameters:
      - in: path
        name: orderVoucherId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: d9021fdd-6e83-45c0-9aef-71680f0b4e74
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
      delete:
        tags:
          - OrderVoucher
        summary: Delete voucher from order or orderLine
        description: Deletevoucher from order or orderLine
        responses:
          "200":
            description: Ok
            content:
              application/json:
                schema:
                  $ref: "#/components/schemas/unavailable"
                examples:
                  Order with deleted voucher:
                    value:
                      {
                        "validContents": true,
                        "orderId": "1e441d7d-50d6-4006-aca7-5e87e2f218df",
                        "externalOrderId": null,
                        "orderNumber": "ORD-123456",
                        "customerProfileId": 1337,                      
                        "device":{
                          "externalDeviceId": "8fe1e754-0070-478c-bdba-4ebd89c994f0",
                          "alias": "Mijn Android" 
                          },
                        "vouchers":[],
                        "totalAmount": 121,
                        "touchPoint":
                          {
                            "salesTouchpointId": 3,
                            "name": "Website (Perplex)",
                            "isActive": true,
                            "retailerId": 1001,
                          },
                        "language":
                          {
                            "languageId": 1,
                            "name": "Nederlands",
                            "iso639Code": "nl-NL",
                            "ietfCode": "nl",
                          },
                        "createdOn": "2024-03-22T09:00:00",
                        "lastUpdatedOn": "2024-03-22T09:00:00",
                        "order_OrderStatuses":
                          [
                            {
                              "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%",
                              "fikoArticleNumber": "6609",
                              "productDescription": "HTM Maandkorting 20%",
                              "taxCode": "V21",
                              "taxPercentage": 21.0000,
                              "taxAmount": null,
                              "amountExclTax": null,
                              "amountInclTax": 121,
                              "vouchers":[],
                              "quantity": 1,
                              "orderLineTerms":
                                [
                                  {
                                    "orderLineTermsId": "cccada2c-d5ea-48ab-b4be-f590e16b5468",
                                    "termsUrl": "generalTermsAndConditions.pdf",
                                  },
                                  {
                                    "orderLineTermsId": "bd76f723-9308-4629-a291-4c4fafd7ed87",
                                    "termsUrl": "productTermsAndConditions.pdf",
                                  },
                                ],
                              "createdOn": "2024-03-22T09:00:00",
                              "validFrom": "2024-03-22T09:00:00",
                              "validUntil": null,
                              "orderLineStatus":
                                { "orderLineStatusId": 1, "name": "pending" },
                              "customerTokens":
                                [
                                  {
                                    "customerTokenId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
                                    "tokenType":
                                      { "tokenTypeId": 1, "name": "EMV" },
                                    "ovPayTokenId": 12,
                                    "serviceReferenceId": null,
                                    "amount": null,
                                    "ovpasNumber": null,
                                    "verificationCode": null,
                                    "personalAccountData": null,
                                    "ovPayToken":
                                      {
                                        "customerProfileId": 1,
                                        "ovPayTokenId": 1,
                                        "xTat": "32089cc8-d187-47ff-a3a9-5c2558def811",
                                        "tokenType":
                                          {
                                            "tokenTypeId": 2,
                                            "name": "OV-pas physical",
                                          },
                                        "alias": "MyToken",
                                        "tokenStatus":
                                          {
                                            "tokenStatusId": 2,
                                            "name": "Active",
                                          },
                                        "expirationDate": "2028-02-01",
                                        "replacedByTokenId": null,
                                        "autoReloadRegistration":
                                          {
                                            "autoReloadAmount": 500,
                                            "retailerReferenceId": "abc",
                                            "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa",
                                            "autoReloadRegistrationStatus": "ACTIVE",
                                            "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z",
                                          },
                                        "ePurse":
                                          {
                                            "e-PurseBalance":
                                              {
                                                "currency": "EUR",
                                                "amount": 350,
                                              },
                                            "status": "ACTIVE",
                                            "originDate": "2019-07-16T11:00:00+02:00",
                                          },
                                        "personalAccountData":
                                          {
                                            "name":
                                              {
                                                "inaccuracyFlag": false,
                                                "inaccuracyFlagReason": null,
                                                "inaccuracyFlagSetCounter": 0,
                                                "isValidated": false,
                                                "changeCounter": 0,
                                                "maxUpdatesVerificationCount": 0,
                                                "lastChangeDate": "2024-08-24T14:15:22Z",
                                              },
                                            "birthdate":
                                              {
                                                "inaccuracyFlag": false,
                                                "inaccuracyFlagReason": null,
                                                "inaccuracyFlagSetCounter": 0,
                                                "isValidated": false,
                                                "changeCounter": 0,
                                                "maxUpdatesVerificationCount": 0,
                                                "lastChangeDate": "2024-08-24T14:15:22Z",
                                              },
                                            "photo":
                                              {
                                                "inaccuracyFlag": false,
                                                "inaccuracyFlagReason": null,
                                                "inaccuracyFlagSetCounter": 0,
                                                "isValidated": false,
                                                "changeCounter": 0,
                                                "maxUpdatesVerificationCount": 0,
                                                "lastChangeDate": "2024-08-24T14:15:22Z",
                                              },
                                          },
                                        "gboAgeProfile":
                                          {
                                            "gboAgeProfileId": 1,
                                            "name": "Kind (4 t/m 11 jaar)",
                                            "ageFromInclusive": 4,
                                            "ageToInclusive": 11,
                                          },
                                      },
                                  },
                                ],
                              "orderAccountingStatuses": [],
                              "validationResult": "valid",
                              "additionalRemarks": [],
                              "validationErrors": [],
                            },
                          ],
                        "payments": [],
                        "orderCustomer": null,
                      }
  /orders/{orderId}/fulfill:
    parameters:
      - in: path
        name: orderId
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
          example: a0ef57fa-395c-4a03-96e9-234c26dccea9
      - in: header
        name: X-HTM-JWT-AUTH-HEADER
        schema:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
        description: The JWT of the logged in customer (in case of a web shop).
    post:
      tags:
        - Order Fulfillment
      summary: Fulfill an order without creating or updating the order as a resource.
      description: Fulfill an order without creating or updating the order as a resource.
      responses:
        "200":
          description: OK
  /orders/validation/gboAgeProfile:
    get:
      tags:
        - Order Validation
      summary: Get GBO age profile that is valid for the given input.
      description: |-
        Only one age profile can be valid at any one time, so only one profile is returned.
      parameters:
        - name: productStartDate
          in: query
          required: true
          description: Start date of product validity
          schema:
            type: string
            format: date
            example: 2025-03-20
        - name: birthDate
          in: query
          required: false
          description: Birthdate of the OVpay-token holder
          schema:
            type: string
            format: date
            example: 2000-01-01
        - name: ovPayTokenId
          in: query
          required: false
          description: ovPayTokenId of the customer's selected token
          schema:
            type: integer
            example: 1
        - name: customerTokenId
          in: query
          required: false
          description: customerTokenId of the customer's selected token
          schema:
            type: string
            format: uuid
            example: "4a2d2c9c-1e5d-4d8a-9c0a-6c0a6c0a6c0a"
        - name: serviceReferenceId
          in: query
          required: false
          description: serviceReferenceId of the customer's selected token
          schema:
            type: string
            example: "NLOV1234567ABCDEFG"
        - name: amount
          in: query
          required: false
          description: amount belonging to the serviceReferenceId
          schema:
            type: integer
            example: 100
        - name: ovpasNumber
          in: query
          required: false
          description: OVpas number of the customer's selected token
          schema:
            type: string
            example: "63AW974"
        - name: verificationCode
          in: query
          required: false
          description: verification code belonging to the OVpas number
          schema:
            type: string
            example: 1A3C7D
      responses:
        "200":
          description: OK
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GboAgeProfileResponse"
        "400":
          description: Bad request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/rfc9457"
              examples:
                Missing parameter(s):
                  summary: Missing parameter(s)
                  value:
                    {
                      "type": "https://www.htm.nl/api/v1/400Error",
                      "title": "Missing parameter(s)",
                      "detail": "At least one of the following parameters must be present: birthDate, ovPayTokenId, customerTokenId, (serviceReferenceId and amount), (ovpasNumber and verificationCode)",
                      "instance": "urn:uuid:13c8416f-7632-4c8b-8a16-2132197be60c",
                      "apiErrorCode": "htm.api.err.400.2",
                    }
                Invalid date format:
                  summary: Invalid date format
                  value:
                    {
                      "type": "https://www.htm.nl/api/v1/400Error",
                      "title": "Invalid input",
                      "detail": "The given birthDate is not a valid Date format",
                      "instance": "urn:uuid:13c8416f-7632-4c8b-8a16-2132197be60c",
                      "apiErrorCode": "htm.api.err.400.3",
                    }
        "404":
          description: Not found
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/rfc9457"
              examples:
                No birthdate present in PAD of OVpay token:
                  summary: No birthdate present in PAD of OVpay token
                  value:
                    {
                      "type": "https://www.htm.nl/api/v1/404Error",
                      "title": "Missing birthdate in PAD",
                      "detail": "There is no birthdate present in the PAD of the OVpay token, or there is no PAD present at all",
                      "instance": "urn:uuid:13c8416f-7632-4c8b-8a16-2132197be60c",
                      "apiErrorCode": "htm.api.err.404.1",
                    }
components:
  securitySchemes:
    bearerToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
  schemas:
    unavailable:
      type: object
    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"
    GboAgeProfileResponse:
      type: object
      required:
        - gboAgeProfileId
        - name
        - ageFromInclusive
        - ageToInclusive
      properties:
        gboAgeProfileId:
          type: integer
          example: 1
        name:
          type: string
          example: Kind (4 t/m 11 jaar)
        ageFromInclusive:
          type: integer
          example: 4
        ageToInclusive:
          type: integer
          example: 11
