Oder Fullfillment v2.

This commit is contained in:
Bas Boterman 2024-09-20 14:18:27 +02:00
parent ff4e008a71
commit 1467a45663

View File

@ -80,7 +80,7 @@ paths:
} }
responses: responses:
"200": "200":
description: Successful description: Success
content: content:
application/json: application/json:
schema: schema:
@ -210,12 +210,12 @@ paths:
}, },
], ],
} }
/orders: /orders/{orderId}/fulfillment:
post: post:
tags: tags:
- Order Create v2 - Order Fulfillment v2
summary: Create an order. summary: Fulfill an order.
description: Create an order. description: Fulfill an order.
parameters: parameters:
- name: X-HTM-JWT-AUTH-HEADER - name: X-HTM-JWT-AUTH-HEADER
in: header in: header
@ -224,6 +224,14 @@ paths:
explode: false explode: false
schema: schema:
type: string type: string
- name: orderId
in: path
required: true
style: simple
explode: false
schema:
type: string
example: a0ef57fa-395c-4a03-96e9-234c26dccea9
requestBody: requestBody:
content: content:
application/json: application/json:
@ -231,36 +239,53 @@ paths:
$ref: "#/components/schemas/unavailable" $ref: "#/components/schemas/unavailable"
example: example:
{ {
"externalOrderId": "371940c1-4b58-40dd-aa59-608503a35efb", "orderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9",
"createdOn": "2024-03-22T09:00:00",
"lastUpdatedOn": "2024-03-22T09:00:00",
"orderNumber": "123456", "orderNumber": "123456",
"customerProfileId": 1337, "customerProfileId": 1337,
"totalAmount": 121, "totalAmount": 121,
"touchPointId": 1, "touchPointId": 1,
"languageId": 1,
"billingAddressId": 1, "billingAddressId": 1,
"shippingAddressId": 1, "shippingAddressId": 1,
"languageId": 1, "createdOn": "2024-03-22T09:00:00",
"orderStatus": 4, "orderStatusId": 4,
"orderLines": "orderLines":
[ [
{ {
"externalOrderLineid": "2ba39cae-c401-446b-ae5c-2d6d85b3df1f", "orderLineId": "2ba39cae-c401-446b-ae5c-2d6d85b3df1f",
"createdOn": "2024-03-22T09:00:00",
"lastUpdatedOn": "2024-03-22T09:00:00",
"productId": 1, "productId": 1,
"productName": "HTM Maandkorting 20%", "productName": "HTM Maandkorting 20%",
"productCode": "HTM-MND-20", "productCode": "HTM-MND-20",
"productDescription": "HTM Maandkorting 20%", "productDescription": "HTM Maandkorting 20%",
"amountExclTax": 100,
"taxAmount": 21, "taxAmount": 21,
"taxCodeId": "V21", "taxCodeId": "V21",
"amountExclTax": 100,
"amountInclTax": 121, "amountInclTax": 121,
"quantity": 1, "quantity": 1,
"terms": "generalTermsAndConditions.pdf", "terms": "generalTermsAndConditions.pdf",
"createdOn": "2024-03-22T09:00:00",
"validFrom": "2024-03-22T09:00:00", "validFrom": "2024-03-22T09:00:00",
"validUntil": null, "validUntil": null,
"orderLineStatusId": 4, "orderLineStatusId": 4,
"tokens":
[
{
"ovPayTokenId": 1,
"serviceReferenceId": "NLOV1234567ABCDEFG",
"amount": 34,
"ovpasNumber": "OV34567",
"verifcationCode": "A7H6",
"personalAccountData":
{
"name": "Jan de Vries",
"dateOfBirth": "01-01-1970",
"photoReference": "DSC_0502.JPG",
"fileType": "image/jpg",
"challengeTypeId": 1,
"oneTimePassword": "H5Iiz3JTaQeIV8p",
},
},
],
}, },
], ],
"payments": "payments":
@ -269,6 +294,7 @@ paths:
"createdOn": "2024-03-22T09:00:00", "createdOn": "2024-03-22T09:00:00",
"amountDebit": 121, "amountDebit": 121,
"paymentMethodId": 1, "paymentMethodId": 1,
"touchPointId": 1,
"isRefund": false, "isRefund": false,
"htmPaymentReference": "HTM-1234", "htmPaymentReference": "HTM-1234",
"pspPaymentReference": "Buckaroo-1234", "pspPaymentReference": "Buckaroo-1234",
@ -282,6 +308,14 @@ paths:
"statusSubDescription": "PaymentSuccessFul", "statusSubDescription": "PaymentSuccessFul",
}, },
], ],
"payPush":
{
"consumerIssuer": "ABN AMRO",
"transactionId": "0000000000000001",
"consumerName": "J. de Vries",
"consumerIBAN": "NL44RABO0123456789",
"consumerBIC": "RABONL2U",
},
}, },
], ],
"customer": "customer":
@ -308,135 +342,68 @@ paths:
responses: responses:
"200": "200":
description: Successful description: Successful
content:
application/json:
schema:
$ref: "#/components/schemas/unavailable"
example: { "orderId": "a0ef57fa-395c-4a03-96e9-234c26dccea9" }
/orders/:
post:
tags:
- Order Creation v2 (RFU)
summary: Create a new order.
responses:
"201":
description: Created
/orders/{uuid}:
patch:
tags:
- Order Creation v2 (RFU)
summary: Update an existing orderline.
responses:
"200":
description: Success
/orderlines/{uuid}:
patch:
tags:
- Order Creation v2 (RFU)
summary: Update an existing order.
responses:
"200":
description: Success
/orders/{uuid}/payments:
post:
tags:
- Order Creation v2 (RFU)
summary: Add a payment to an existing order.
responses:
"201":
description: Created
/payments/{uuid}:
patch:
tags:
- Order Creation v2 (RFU)
summary: Update a payment on an existing order.
responses:
"200":
description: Success
/orders/{uuid}/customers:
post:
tags:
- Order Creation v2 (RFU)
summary: Add a customer to an existing order.
responses:
"200":
description: Success
/customers/{uuid}:
patch:
tags:
- Order Creation v2 (RFU)
summary: Update a customer on an existing order.
responses:
"200":
description: Success
components: components:
schemas: schemas:
unavailable: unavailable:
type: object type: object
postOrderFulfillment:
type: object
properties:
customerProfileID:
type: number
customerProfileData:
type: object
properties:
dateOfBirth:
type: string
personalAccountData:
type: object
properties:
birthdate:
type: string
directDebitMandate:
type: object
properties:
consumerName:
type: string
consumerBic:
type: string
consumerIban:
type: string
orderContents:
type: array
items:
type: object
properties:
ovPayTokenId:
type: number
serviceReferenceId:
type: string
amount:
type: number
ovpasNumber:
type: string
productId:
type: number
startDate:
type: string
quantity:
type: number
orderlineId:
type: string
format: uuid
orderStatus:
type: string
postOrderValidation:
type: array
items:
properties:
ovPayTokenId:
type: integer
serviceReferenceId:
type: string
amount:
type: integer
ovpasNumber:
type: string
productId:
type: integer
startDate:
type: string
quantity:
type: integer
postCustomerProfileOvPayTokenResponse:
type: object
properties:
validContents:
type: boolean
amountExclTax:
type: number
taxPercentage:
type: number
amountInclTax:
type: number
contents:
type: array
items:
type: object
properties:
ovPayTokenId:
type: number
serviceReferenceId:
type: string
ovpasNumber:
type: string
productId:
type: number
quantity:
type: number
amountExclTax:
type: number
taxPercentage:
type: number
amountInclTax:
type: number
startDate:
type: string
endDate:
type: string
isRenewable:
type: boolean
nextDebitDate:
type: string
termAmountExclTax:
type: number
termAmountInclTax:
type: number
additionalRemarks:
type: array
items:
type: object
properties:
code:
type: string
parameter:
type: string
validationErrors:
type: array
items:
type: object
properties:
detail:
type: string
pointer:
type: string