DHIL-3733 - Patch Order.

This commit is contained in:
Bas Boterman 2024-09-25 10:56:32 +02:00
parent db4ee7c2af
commit bd24e91971

View File

@ -7,6 +7,282 @@ servers:
- url: https://api.integratielaag.nl/v1
paths:
/orders:
get:
tags:
- Order
summary: Find orders.
description: Find orders.
parameters:
- in: query
name: externalOrderId
schema:
type: string
format: uuid
example: "a0ef57fa-395c-4a03-96e9-234c26dccea9"
required: false
description: The id of the order at the external party (e.g. Perplex).
- in: query
name: orderNumber
schema:
type: string
example: "OV-1337"
required: false
description: The human readable number of the order.
- in: query
name: customerProfileId
schema:
type: integer
example: 42
required: false
description: The technical id of the customer related to the order.
- in: query
name: totalAmount
schema:
type: integer
example: 112
required: false
description: The total amount of the order.
- in: query
name: touchPointId
schema:
type: integer
example: 1
required: false
description: The id of the touch point where the order was initiated.
- in: query
name: languageId
schema:
type: integer
example: 1
required: false
description: The id of the language in which the order was created.
- in: query
name: billingAddressId
schema:
type: integer
example: 32
required: false
description: The technical id of the billing address.
- in: query
name: shippingAddressId
schema:
type: integer
example: 64
required: false
description: The technical id of the shipping address.
- 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 possible order statuses. 1 = concept, 2 = awaitingPayment, 3 = pendingPayment, 4 = paid, 5 = delivered, 6 = cancelled.
responses:
"200":
description: "OK"
content:
application/json:
schema:
$ref: "#/components/schemas/unavailable"
example:
{
"orders":
[
{
"orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d",
"externalOrderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9",
"orderNumber": "123456",
"customerProfileId": 1337,
"totalAmount": 121,
"touchPointId": 1,
"language":
{
"languageId": 1,
"name": "Nederlands",
"iso639Code": "nl-NL",
"ietfCode": "nl",
},
"billingAddressId": 1,
"shippingAddressId": 1,
"createdOn": "2024-03-22T09:00:00",
"lastUpdatedOn": "2024-03-22T09:00:00",
"order_OrderStatus":
{
"order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f",
"orderStatus":
{ "orderStatusId": 4, "name": "paid" },
"createdOn": "2024-03-22T09:00:00",
"description": "Order succesvol betaald",
},
"orderLines":
[
{
"orderLineId": "7a7a9d1a-3fc8-4058-a28b-082860aaa311",
"externalOrderLineId": "2ba39cae-c401-446b-ae5c-2d6d85b3df1f",
"productId": 1,
"productName": "HTM Maandkorting 20%",
"productCode": "HTM-MND-20",
"productDescription": "HTM Maandkorting 20%",
"taxAmount": 21,
"taxCodeId": "V21",
"amountExclTax": 100,
"amountInclTax": 121,
"quantity": 1,
"terms": "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":
[
{
"customerTokeId": "878ad7c1-cd8f-4bcf-a983-1bd8c6e6975e",
"tokenType":
{ "tokenTypeId": 1, "name": "EMV" },
"ovPayTokenId": 1,
"serviceReferenceId": "NLOV1234567ABCDEFG",
"amount": 34,
"ovpasNumber": "OV34567",
"verificationCode": "A7H6",
"xTAT": "3b5f2354-d8a1-4317-bb6e-2c32458bc061",
"xBOT": "0fbdb14c-9306-462e-aca7-765a4980a2f7",
"personalAccountData":
{
"personalAccountDataId": "47db8a40-3238-4bf5-9284-759e3888bd47",
"name": "Jan de Vries",
"dateOfBirth": "01-01-1970",
"photoReference": "DSC_0502.JPG",
"fileType": "image/jpg",
"challengeType":
{
"challengeTypeId": 1,
"name": "email",
},
"oneTimePassword": "H5Iiz3JTaQeIV8p",
},
},
],
"orderAccountingStatuses":
[
{
"orderAccountingStatusId": "7c5118d0-8535-4464-9239-83a7ba8fd2db",
"accountingStatus":
{
"accountingStatusId": 1,
"name": "open",
},
"createdOn": "2024-03-22T09:00:00",
"description": "Financiele transactie voor de FIKO.",
},
],
},
],
"payments":
[
{
"paymentId": "3ba4a3c7-0803-4214-800b-365851b8903d",
"createdOn": "2024-03-22T09:00:00",
"amountDebit": 121,
"paymentMethod":
{
"paymentMethodId": 1,
"name": "ideal",
"provider": "Buckaroo",
},
"touchPointId": 1,
"isRefund": false,
"htmPaymentReference": "HTM-1234",
"pspPaymentReference": "Buckaroo-1234",
"paymentStatuses":
[
{
"paymentStatusId": 1,
"createdOn": "2024-03-22T09:00:00",
"statusCode": "190",
"statusDescription": "Success",
"statusSubCode": "S001",
"statusSubDescription": "PaymentSuccessFul",
},
],
"mandateInput":
{
"mandateInputId": "0a875e67-dc9f-4825-a030-d732a2adbfbc",
"mandateType":
{ "mandateTypeId": 1, "name": "import" },
"createdOn": "2024-03-22T09:00:00",
"bic": "RABONL2U",
"iban": "NL44RABO0123456789",
"ascription": "J. de Vries",
},
},
],
"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",
"orderAddressType":
{
"orderAddressTypeId": 1,
"name": "Billing",
},
"street": "Kon. Julianaplein",
"houseNumber": 10,
"houseNumberSuffix": "a",
"postalCode": "2595 AA",
"city": "Den Haag",
"country": "NL",
},
],
},
},
],
"href": null,
}
post:
tags:
- Order
@ -137,7 +413,7 @@ paths:
}
responses:
"201":
description: Created
description: "Created"
content:
application/json:
schema:
@ -152,7 +428,7 @@ paths:
format: uuid
example: d1dd439b-6072-4b97-89c9-724268865b93
required: true
description: The id of the order to get.
description: The id of the order to process.
get:
summary: Get a single order.
description: Get a single order.
@ -187,7 +463,7 @@ paths:
"order_OrderStatus":
{
"order_orderStatusId": "f1d0e1a7-a3cf-4876-b8f2-073add10667f",
"orderStatus": { "orderStatusId": 4, "status": "paid" },
"orderStatus": { "orderStatusId": 4, "name": "paid" },
"createdOn": "2024-03-22T09:00:00",
"description": "Order succesvol betaald",
},
@ -209,7 +485,7 @@ paths:
"validFrom": "2024-03-22T09:00:00",
"validUntil": "2025-03-22T09:00:00",
"orderLineStatus":
{ "orderLineStatusId": 4, "status": "delivered" },
{ "orderLineStatusId": 4, "name": "delivered" },
"createdOn": "2024-03-22T09:00:00",
"lastUpdatedOn": "2024-03-22T09:00:00",
"customerTokens":
@ -243,7 +519,7 @@ paths:
{
"orderAccountingStatusId": "7c5118d0-8535-4464-9239-83a7ba8fd2db",
"accountingStatus":
{ "accountingStatusId": 1, "status": "open" },
{ "accountingStatusId": 1, "name": "open" },
"createdOn": "2024-03-22T09:00:00",
"description": "Financiele transactie voor de FIKO.",
},
@ -280,10 +556,8 @@ paths:
"mandateInput":
{
"mandateInputId": "0a875e67-dc9f-4825-a030-d732a2adbfbc",
"mandateType": {
"mandateTypeId": 1,
"name": "import"
},
"mandateType":
{ "mandateTypeId": 1, "name": "import" },
"createdOn": "2024-03-22T09:00:00",
"bic": "RABONL2U",
"iban": "NL44RABO0123456789",
@ -303,10 +577,8 @@ paths:
[
{
"orderCustomerAddressId": "aa50047c-58ac-4f15-9448-ee000dfc6893",
"orderAddressType": {
"orderAddressTypeId": 1,
"name": "Billing",
},
"orderAddressType":
{ "orderAddressTypeId": 1, "name": "Billing" },
"street": "Kon. Julianaplein",
"houseNumber": 10,
"houseNumberSuffix": "a",
@ -317,6 +589,33 @@ paths:
],
},
}
patch:
summary: Update an order.
description: Update an order.
tags:
- Order
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/unavailable"
example:
{
"customerProfileId": 1337,
"totalAmount": 121,
"languageId": 1,
"billingAddressId": 1,
"shippingAddressId": 1,
"lastUpdatedOn": "2024-03-22T09:00:00",
}
responses:
"200":
description: "Created"
content:
application/json:
schema:
$ref: "#/components/schemas/unavailable"
example: { "orderId": "afce35b2-1dff-4ace-98d0-4b9ac405c87d" }
components:
securitySchemes:
bearerToken:
@ -336,19 +635,19 @@ components:
title:
type: string
example: "You do not have enough credit."
detail:
detail:
type: string
example: "Your current balance is 30, but that costs 50."
instance:
instance:
type: string
example: "/account/12345/msgs/abc"
balance:
balance:
type: string
example: "30"
accounts:
type: array
items:
type: string
example:
example:
- "/account/12345"
- "/account/67890"