Compare commits

..

No commits in common. "6f78ce4020a14ee5e7416161688fad5a72dce118" and "a4b0578420c7baf9a3d3740c7236d8074151e0fc" have entirely different histories.

2 changed files with 161 additions and 558 deletions

View File

@ -6,13 +6,13 @@ info:
servers: servers:
- url: https://services.acc.api.htm.nl/abt/abtcontracts/1.0 - url: https://services.acc.api.htm.nl/abt/abtcontracts/1.0
paths: paths:
/customers/{customerProfileId}/contracts: /customers/{customerNumber}/contracts:
parameters: parameters:
- in: path - in: path
name: customerProfileId name: customerNumber
schema: schema:
type: integer type: integer
example: 1337 example: 1001337
required: true required: true
description: The customerNumber. description: The customerNumber.
get: get:
@ -34,7 +34,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/Contracts" $ref: "#/components/schemas/Contract"
example: example:
{ {
"contracts": "contracts":
@ -48,23 +48,12 @@ paths:
"touchpointId": 2, "touchpointId": 2,
"contractStatus": "contractStatus":
{ "contractStatusId": 2, "name": "active" }, { "contractStatusId": 2, "name": "active" },
"productId": 1,
"productName": "HTM Maand 20% korting",
"termDuration": "P0Y1M0D", "termDuration": "P0Y1M0D",
"billingDay": 15, "billingDay": 15,
"highestInvoiceTerm": 1, "highestInvoiceTerm": 1,
"created": "2024-08-01 15:01:00.000", "created": "2024-08-01 15:01:00.000",
"contractVersions":
[
{
"contractVersionId": 1,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1,
"productName": "HTM Maand 20% korting",
"taxCode": "V9",
"taxPercentage": 9.0,
"termAmountInclTax": 400,
"start": "2024-08-01 15:01:00.000",
},
],
}, },
{ {
"contractId": "f07253e6-c364-474c-a342-a10a4a7cf305", "contractId": "f07253e6-c364-474c-a342-a10a4a7cf305",
@ -75,26 +64,14 @@ paths:
"touchpointId": 2, "touchpointId": 2,
"contractStatus": "contractStatus":
{ "contractStatusId": 1, "name": "new" }, { "contractStatusId": 1, "name": "new" },
"productId": 1,
"productName": "HTM Maand 20% korting",
"termDuration": "P0Y1M0D", "termDuration": "P0Y1M0D",
"billingDay": 15, "billingDay": 15,
"highestInvoiceTerm": 1, "highestInvoiceTerm": 1,
"created": "2024-08-01 15:01:00.000", "created": "2024-08-01 15:01:00.000",
"contractVersions":
[
{
"contractVersionId": 1,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1,
"productName": "HTM Maand 20% korting",
"taxCode": "V9",
"taxPercentage": 9.0,
"termAmountInclTax": 400,
"start": "2024-08-01 15:01:00.000",
},
],
}, },
], ],
"href": null,
} }
post: post:
summary: Create a contract for an existing customer profile. summary: Create a contract for an existing customer profile.
@ -105,7 +82,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostContractsRequestBody" $ref: "#/components/schemas/Contract"
example: example:
{ {
"contract": "contract":
@ -114,6 +91,8 @@ paths:
"orderLineId": "52efbbfc-8c28-4016-9ece-dc3ef9a70bd8", "orderLineId": "52efbbfc-8c28-4016-9ece-dc3ef9a70bd8",
"touchpointId": 2, "touchpointId": 2,
"contractStatusId": 1, "contractStatusId": 1,
"productId": 1,
"productName": "HTM Maand 20% korting",
"termDuration": "P0Y1M0D", "termDuration": "P0Y1M0D",
"billingDay": 15, "billingDay": 15,
"highestInvoiceTerm": 0, "highestInvoiceTerm": 0,
@ -121,11 +100,10 @@ paths:
[ [
{ {
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1200,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 108,
"taxPercentage": 9.0, "termAmountInclTax": 1308,
"termAmountInclTax": 400,
"start": "2024-07-04 15:01:00.000", "start": "2024-07-04 15:01:00.000",
"end": "", "end": "",
}, },
@ -147,7 +125,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostContractsResponseBody" $ref: "#/components/schemas/Contract"
example: example:
{ {
"contract": "contract":
@ -206,7 +184,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/Contracts" $ref: "#/components/schemas/Contract"
example: example:
{ {
"contracts": "contracts":
@ -220,6 +198,8 @@ paths:
"touchpointId": 2, "touchpointId": 2,
"contractStatus": "contractStatus":
{ "contractStatusId": 2, "name": "active" }, { "contractStatusId": 2, "name": "active" },
"productId": 1,
"productName": "HTM Maand 20% korting",
"termDuration": "P0Y1M0D", "termDuration": "P0Y1M0D",
"billingDay": 15, "billingDay": 15,
"highestInvoiceTerm": 1, "highestInvoiceTerm": 1,
@ -277,22 +257,20 @@ paths:
{ {
"contractVersionId": 1, "contractVersionId": 1,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1200,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 108,
"taxPercentage": 9.0, "termAmountInclTax": 1308,
"termAmountInclTax": 400,
"start": "2024-07-04 15:01:00.000", "start": "2024-07-04 15:01:00.000",
"end": "2024-12-31 15:01:00.000", "end": "2024-12-31 15:01:00.000",
}, },
{ {
"contractVersionId": 2, "contractVersionId": 2,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1300,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 117,
"taxPercentage": 9.0, "termAmountInclTax": 1417,
"termAmountInclTax": 400,
"start": "2025-01-01 15:01:00.000", "start": "2025-01-01 15:01:00.000",
}, },
], ],
@ -306,6 +284,8 @@ paths:
"touchpointId": 2, "touchpointId": 2,
"contractStatus": "contractStatus":
{ "contractStatusId": 1, "name": "new" }, { "contractStatusId": 1, "name": "new" },
"productId": 1,
"productName": "HTM Maand 20% korting",
"termDuration": "P0Y1M0D", "termDuration": "P0Y1M0D",
"billingDay": 15, "billingDay": 15,
"highestInvoiceTerm": 1, "highestInvoiceTerm": 1,
@ -363,22 +343,20 @@ paths:
{ {
"contractVersionId": 1, "contractVersionId": 1,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1200,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 108,
"taxPercentage": 9.0, "termAmountInclTax": 1308,
"termAmountInclTax": 400,
"start": "2024-07-04 15:01:00.000", "start": "2024-07-04 15:01:00.000",
"end": "2024-12-31 15:01:00.000", "end": "2024-12-31 15:01:00.000",
}, },
{ {
"contractVersionId": 2, "contractVersionId": 2,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1300,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 117,
"taxPercentage": 9.0, "termAmountInclTax": 1417,
"termAmountInclTax": 400,
"start": "2025-01-01 15:01:00.000", "start": "2025-01-01 15:01:00.000",
}, },
], ],
@ -419,6 +397,8 @@ paths:
"touchpointId": 2, "touchpointId": 2,
"contractStatus": "contractStatus":
{ "contractStatusId": 2, "name": "active" }, { "contractStatusId": 2, "name": "active" },
"productId": 1,
"productName": "HTM Maand 20% korting",
"termDuration": "P0Y1M0D", "termDuration": "P0Y1M0D",
"billingDay": 15, "billingDay": 15,
"highestInvoiceTerm": 1, "highestInvoiceTerm": 1,
@ -427,22 +407,20 @@ paths:
{ {
"contractVersionId": 1, "contractVersionId": 1,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1200,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 108,
"taxPercentage": 9.0, "termAmountInclTax": 1308,
"termAmountInclTax": 400,
"start": "2024-07-04 15:01:00.000", "start": "2024-07-04 15:01:00.000",
"end": "2024-12-31 15:01:00.000", "end": "2024-12-31 15:01:00.000",
}, },
{ {
"contractVersionId": 2, "contractVersionId": 2,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1300,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 117,
"taxPercentage": 9.0, "termAmountInclTax": 1417,
"termAmountInclTax": 400,
"start": "2025-01-01 15:01:00.000", "start": "2025-01-01 15:01:00.000",
}, },
], ],
@ -502,12 +480,14 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PatchContractsRequestBody" $ref: "#/components/schemas/Contract"
example: example:
{ {
"contract": "contract":
{ {
"contractStatusId": 2, "contractStatusId": 2,
"productId": 1,
"productName": "HTM 20% korting 2024",
"billingDay": 15, "billingDay": 15,
"highestInvoiceTerm": 2, "highestInvoiceTerm": 2,
}, },
@ -518,7 +498,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PatchContractsResponseBody" $ref: "#/components/schemas/Contract"
example: example:
{ {
"contract": "contract":
@ -546,17 +526,16 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostContractVersionsRequestBody" $ref: "#/components/schemas/InvoiceAccountingStatus"
example: example:
{ {
"contractVersion": "contractVersion":
{ {
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1200,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 108,
"taxPercentage": 9.0, "termAmountInclTax": 1308,
"termAmountInclTax": 400,
"start": "2024-07-08 15:01:00.000", "start": "2024-07-08 15:01:00.000",
"end": "", "end": "",
}, },
@ -567,7 +546,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostContractVersionsResponseBody" $ref: "#/components/schemas/ContractVersion"
example: example:
{ {
"contractVersion": "contractVersion":
@ -602,7 +581,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PatchContractVersionsRequestBody" $ref: "#/components/schemas/ContractVersion"
example: { "contractVersion": { "end": "2024-07-03 15:01:00.000" } } example: { "contractVersion": { "end": "2024-07-03 15:01:00.000" } }
responses: responses:
"200": "200":
@ -610,7 +589,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PatchContractVersionsResponseBody" $ref: "#/components/schemas/ContractVersion"
example: example:
{ {
"contractVersion": "contractVersion":
@ -619,14 +598,6 @@ paths:
"contractVersionId": 1, "contractVersionId": 1,
}, },
} }
delete:
summary: Delete an existing contract version.
description: Delete an existing contract version.
tags:
- ContractVersion
responses:
"200":
description: OK
/contracts/{contractId}/contractinvoices: /contracts/{contractId}/contractinvoices:
parameters: parameters:
- in: path - in: path
@ -637,6 +608,67 @@ paths:
example: d1dd439b-6072-4b97-89c9-724268865b93 example: d1dd439b-6072-4b97-89c9-724268865b93
required: true required: true
description: The contractId of the Contract, formatted as UUID. description: The contractId of the Contract, formatted as UUID.
get:
summary: Get invoices of a single contract. DEPRECATED.
description: Get invoices of a single contract. WARNING; This method is deprecated. Please use GET /contractinvoices instead.
deprecated: true
tags:
- ContractInvoice
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/ContractInvoice"
example:
{
"contractInvoices":
[
{
"contractInvoiceId": "8699d72a-cf4d-4e6b-9e9c-549d837ca51f",
"externalReference": "F2024-0001",
"term": 1,
"invoiceDate": "2024-07-02",
"created": "2024-07-02 15:01:00.000",
"updated": "2024-07-02 15:01:00.000",
"state": "invoice_sent",
"data": "{json}",
"isCredit": false,
"invoiceAccountingStatuses":
[
{
"invoiceAccountingStatusId": "32785417-1fb8-42c7-bda1-533f5868809f",
"accountingStatus":
{ "accountingStatusId": 1, "name": "open" },
"createdOn": "2024-06-02 15:01:00.000",
"description": null,
},
],
},
{
"contractInvoiceId": "dadff658-4ff5-4eb8-b516-492f1f6c6245",
"externalReference": "F2024-0002",
"term": 2,
"invoiceDate": "2024-08-02",
"created": "2024-08-02 15:01:00.000",
"updated": "2024-08-02 15:01:00.000",
"state": "invoice_created",
"data": "{json}",
"isCredit": false,
"invoiceAccountingStatuses":
[
{
"invoiceAccountingStatusId": "84af0f01-0416-4860-851a-a0d4b3cf674a",
"accountingStatus":
{ "accountingStatusId": 1, "name": "open" },
"createdOn": "2024-06-02 15:01:00.000",
"description": null,
},
],
},
],
}
post: post:
summary: Add an invoice to an existing contract. summary: Add an invoice to an existing contract.
description: Add an invoice to an existing contract. description: Add an invoice to an existing contract.
@ -646,7 +678,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostContractInvoicesRequestBody" $ref: "#/components/schemas/ContractInvoice"
example: example:
{ {
"contractInvoice": "contractInvoice":
@ -675,7 +707,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostContractInvoicesResponseBody" $ref: "#/components/schemas/ContractInvoice"
example: example:
{ {
"contractInvoice": "contractInvoice":
@ -788,12 +820,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
type: object $ref: "#/components/schemas/Contract"
properties:
contractInvoices:
type: array
items:
$ref: "#/components/schemas/ContractInvoice"
example: example:
{ {
"contractInvoices": "contractInvoices":
@ -863,7 +890,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PatchContractInvoicesRequestBody" $ref: "#/components/schemas/ContractInvoice"
example: example:
{ {
"contractInvoice": "contractInvoice":
@ -879,7 +906,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PatchContractInvoicesResponseBody" $ref: "#/components/schemas/ContractInvoice"
example: example:
{ {
"contractInvoice": "contractInvoice":
@ -906,7 +933,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostInvoiceAccountingStatusesRequestBody" $ref: "#/components/schemas/ContractInvoice"
example: example:
{ {
"accountingStatusId": 1, "accountingStatusId": 1,
@ -919,7 +946,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostInvoiceAccountingStatusesResponseBody" $ref: "#/components/schemas/ContractInvoice"
example: example:
{ {
"invoiceAccountingStatusId": "a6836364-4812-4960-9226-69deb2e2b903", "invoiceAccountingStatusId": "a6836364-4812-4960-9226-69deb2e2b903",
@ -945,12 +972,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
type: object $ref: "#/components/schemas/Contract"
properties:
contractActions:
type: array
items:
$ref: "#/components/schemas/ContractAction"
example: example:
{ {
"contractActions": "contractActions":
@ -982,7 +1004,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostContractActionsRequestBody" $ref: "#/components/schemas/ContractAction"
example: example:
{ {
"contractAction": "contractAction":
@ -1000,7 +1022,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: "#/components/schemas/PostContractActionsResponseBody" $ref: "#/components/schemas/ContractAction"
example: example:
{ {
"contractAction": "contractAction":
@ -1020,12 +1042,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
type: object $ref: "#/components/schemas/ContractStatus"
properties:
contractStatuses:
type: array
items:
$ref: "#/components/schemas/ContractStatus"
example: example:
{ {
"contractStatuses": "contractStatuses":
@ -1037,7 +1054,6 @@ paths:
{ "contractStatusId": 5, "name": "terminated" }, { "contractStatusId": 5, "name": "terminated" },
{ "contractStatusId": 6, "name": "pending cancellation" }, { "contractStatusId": 6, "name": "pending cancellation" },
{ "contractStatusId": 7, "name": "pending termination" }, { "contractStatusId": 7, "name": "pending termination" },
{ "contractStatusId": 8, "name": "pending change" },
], ],
} }
/actiontypes: /actiontypes:
@ -1052,12 +1068,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
type: object $ref: "#/components/schemas/ActionType"
properties:
actionTypes:
type: array
items:
$ref: "#/components/schemas/ActionType"
example: example:
{ {
"actionTypes": "actionTypes":
@ -1078,412 +1089,6 @@ components:
scheme: bearer scheme: bearer
bearerFormat: JWT bearerFormat: JWT
schemas: schemas:
PostContractsRequestBody:
type: object
properties:
contract:
type: object
properties:
orderId:
type: string
format: uuid
example: eb3d08f7-7feb-4f31-9f5b-daa634e51f48
orderLineId:
type: string
format: uuid
example: 52efbbfc-8c28-4016-9ece-dc3ef9a70bd8
touchpointId:
type: integer
example: 2
termDuration:
type: string
format: ISO8601
example: P0Y1M0D
billingDay:
type: integer
example: 15
highestInvoiceTerm:
type: integer
example: 0
contractVersions:
type: array
items:
type: object
properties:
termsAndConditions:
type: string
format: url
example: https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/
productId:
type: integer
example: 1
productName:
type: string
example: HTM Maand 20% korting
taxCode:
type: string
example: V9
taxPercentage:
type: number
format: float
example: 9.0
termAmountInclTax:
type: integer
example: 400
start:
type: string
format: date-time
example: 2024-07-04 15:01:00.000
end:
type: string
format: date-time
example: 2024-12-31 15:01:00.000
required:
- termsAndConditions
- productId
- productName
- taxCode
- taxPercentage
- termAmountInclTax
- start
required:
- orderId
- orderLineId
- touchpointId
- termDuration
- billingDay
- highestInvoiceTerm
- contractVersions
required:
- contract
PostContractsResponseBody:
type: object
properties:
contract:
type: object
properties:
contractId:
type: string
format: uuid
example: 5a3876a1-e9a1-4278-8983-4679a8d583c2
contractNumber:
type: string
pattern: '^D\d{6}$'
example: D123456
required:
- contractId
- contractNumber
required:
- contract
PatchContractsRequestBody:
type: object
properties:
contract:
type: object
properties:
contractStatusId:
type: integer
example: 2
billingDay:
type: integer
example: 15
highestInvoiceTerm:
type: integer
example: 2
required:
- contract
PatchContractsResponseBody:
type: object
properties:
contract:
type: object
properties:
contractId:
type: string
format: uuid
example: 5a3876a1-e9a1-4278-8983-4679a8d583c2
contractNumber:
type: string
pattern: '^D\d{6}$'
example: D123456
required:
- contractId
- contractNumber
required:
- contract
PostContractVersionsRequestBody:
type: object
properties:
contractVersion:
type: object
properties:
termsAndConditions:
type: string
format: url
example: https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/
productId:
type: integer
example: 1
productName:
type: string
example: HTM Maand 20% korting
taxCode:
type: string
example: V9
taxPercentage:
type: number
format: float
example: 9.0
termAmountInclTax:
type: integer
example: 400
start:
type: string
format: date-time
example: 2024-07-04 15:01:00.000
end:
type: string
format: date-time
example: 2024-12-31 15:01:00.000
required:
- termsAndConditions
- productId
- productName
- taxCode
- taxPercentage
- termAmountInclTax
- start
required:
- contractVersion
PostContractVersionsResponseBody:
type: object
properties:
contractVersion:
type: object
properties:
contractId:
type: string
format: uuid
example: 5a3876a1-e9a1-4278-8983-4679a8d583c2
contractVersionId:
type: integer
example: 1
required:
- contractId
- contractVersionId
required:
- contractVersion
PatchContractVersionsRequestBody:
type: object
properties:
contractVersion:
type: object
properties:
end:
type: string
format: date-time
example: 2024-12-31 15:01:00.000
required:
- contractVersion
PatchContractVersionsResponseBody:
type: object
properties:
contractVersion:
type: object
properties:
contractId:
type: string
format: uuid
example: 5a3876a1-e9a1-4278-8983-4679a8d583c2
contractVersionId:
type: integer
example: 1
required:
- contractId
- contractVersionId
required:
- contractVersion
PostContractInvoicesRequestBody:
type: object
properties:
contractInvoice:
type: object
properties:
externalReference:
type: string
example: F2024-0001
term:
type: integer
example: 1
invoiceDate:
type: string
format: date
example: 2024-07-02
created:
type: string
format: date-time
example: 2024-07-02 15:01:00.000
updated:
type: string
format: date-time
example: 2024-07-02 15:01:00.000
state:
type: string
example: invoice_created
data:
type: string
format: json
example: "{json}"
isCredit:
type: boolean
example: false
invoiceAccountingStatuses:
type: array
items:
type: object
properties:
accountingStatusId:
type: integer
example: 1
createdOn:
type: string
format: date-time
example: 2024-07-02 15:01:00.000
description:
type: string
example: null
required:
- accountingStatusId
- createdOn
required:
- externalReference
- term
- invoiceDate
- created
- updated
- state
- data
- isCredit
- invoiceAccountingStatuses
required:
- contractInvoice
PostContractInvoicesResponseBody:
type: object
properties:
contractInvoice:
type: object
properties:
contractInvoiceId:
type: string
format: uuid
example: 8699d72a-cf4d-4e6b-9e9c-549d837ca51f
required:
- contractInvoiceId
required:
- contractInvoice
PatchContractInvoicesRequestBody:
type: object
properties:
contractInvoice:
type: object
properties:
updated:
type: string
format: date-time
example: 2024-07-02 15:01:00.000
state:
type: string
example: invoice_reopened
data:
type: string
format: json
example: "{json}"
required:
- contractInvoice
PatchContractInvoicesResponseBody:
type: object
properties:
contractInvoice:
type: object
properties:
contractInvoiceId:
type: string
format: uuid
example: 8699d72a-cf4d-4e6b-9e9c-549d837ca51f
required:
- contractInvoiceId
required:
- contractInvoice
PostInvoiceAccountingStatusesRequestBody:
type: object
properties:
accountingStatusId:
type: integer
example: 1
createdOn:
type: string
format: date-time
example: 2024-07-02 15:01:00.000
description:
type: string
example: null
required:
- accountingStatusId
- createdOn
PostInvoiceAccountingStatusesResponseBody:
type: object
properties:
invoiceAccountingStatusId:
type: string
format: uuid
example: a6836364-4812-4960-9226-69deb2e2b903
required:
- invoiceAccountingStatusId
PostContractActionsRequestBody:
type: object
properties:
contractAction:
type: object
properties:
actionType:
type: integer
example: 2
user:
type: string
example: subid123456
timestamp:
type: string
format: date-time
example: 2024-07-02 15:01:00.000
details:
type: string
example: Contract changed xyz
correlationId:
type: string
format: uuid
example: 976e7a4c-bf24-43d2-b444-55817556e7ee
required:
- actionType
- user
- timestamp
- details
- correlationId
required:
- contractAction
PostContractActionsResponseBody:
type: object
properties:
contractAction:
type: object
properties:
contractActionId:
type: string
format: uuid
example: 8699d72a-cf4d-4e6b-9e9c-549d837ca51f
required:
- contractActionId
required:
- contractAction
Contract: Contract:
type: object type: object
properties: properties:
@ -1512,6 +1117,12 @@ components:
contractStatus: contractStatus:
type: object type: object
$ref: "#/components/schemas/ContractStatus" $ref: "#/components/schemas/ContractStatus"
productId:
type: integer
example: 1
productName:
type: string
example: HTM Maand 20% korting
termDuration: termDuration:
type: string type: string
format: ISO8601 format: ISO8601
@ -1579,22 +1190,18 @@ components:
type: string type: string
format: url format: url
example: https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/ example: https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/
productId: termAmountExclTax:
type: integer type: integer
example: 1 example: 1200
productName:
type: string
example: HTM Maand 20% korting
taxCode: taxCode:
type: string type: string
example: V9 example: V21
taxPercentage: taxAmount:
type: number type: integer
format: float example: 108
example: 9.0
termAmountInclTax: termAmountInclTax:
type: integer type: integer
example: 400 example: 1308
start: start:
type: string type: string
format: date-time format: date-time

View File

@ -164,22 +164,20 @@ paths:
{ {
"contractVersionId": 1, "contractVersionId": 1,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1200,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 108,
"taxPercentage": 9.0, "termAmountInclTax": 1308,
"termAmountInclTax": 400,
"start": "2024-07-04 15:01:00.000", "start": "2024-07-04 15:01:00.000",
"end": "2024-12-31 15:01:00.000", "end": "2024-12-31 15:01:00.000",
}, },
{ {
"contractVersionId": 2, "contractVersionId": 2,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1300,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 117,
"taxPercentage": 9.0, "termAmountInclTax": 1417,
"termAmountInclTax": 400,
"start": "2025-01-01 15:01:00.000", "start": "2025-01-01 15:01:00.000",
}, },
], ],
@ -511,22 +509,20 @@ paths:
{ {
"contractVersionId": 1, "contractVersionId": 1,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1200,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 108,
"taxPercentage": 9.0, "termAmountInclTax": 1308,
"termAmountInclTax": 400,
"start": "2024-07-04 15:01:00.000", "start": "2024-07-04 15:01:00.000",
"end": "2024-12-31 15:01:00.000", "end": "2024-12-31 15:01:00.000",
}, },
{ {
"contractVersionId": 2, "contractVersionId": 2,
"termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/", "termsAndConditions": "https://www.htm.nl/reisproducten/productvoorwaarden/htm-maandkorting/",
"productId": 1, "termAmountExclTax": 1300,
"productName": "HTM Maand 20% korting", "taxCode": "V21",
"taxCode": "V9", "taxAmount": 117,
"taxPercentage": 9.0, "termAmountInclTax": 1417,
"termAmountInclTax": 400,
"start": "2025-01-01 15:01:00.000", "start": "2025-01-01 15:01:00.000",
}, },
], ],