@emilgroup/commission-sdk-node 2.9.1-beta.1 → 2.9.1-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/.openapi-generator/FILES +6 -0
  2. package/README.md +2 -2
  3. package/api/commissions-api.ts +227 -0
  4. package/dist/api/commissions-api.d.ts +123 -0
  5. package/dist/api/commissions-api.js +192 -0
  6. package/dist/models/clawback-config-class.d.ts +36 -0
  7. package/dist/models/clawback-config-class.js +15 -0
  8. package/dist/models/clawback-config-dto.d.ts +36 -0
  9. package/dist/models/clawback-config-dto.js +15 -0
  10. package/dist/models/commission-agreement-version-class.d.ts +7 -0
  11. package/dist/models/commission-candidate-class.d.ts +12 -0
  12. package/dist/models/commission-class.d.ts +43 -0
  13. package/dist/models/commission-class.js +7 -0
  14. package/dist/models/commission-config-dto.d.ts +2 -1
  15. package/dist/models/commission-config-dto.js +2 -1
  16. package/dist/models/commission-estimate-class.d.ts +2 -1
  17. package/dist/models/commission-estimate-class.js +2 -1
  18. package/dist/models/create-commission-agreement-request-dto.d.ts +7 -0
  19. package/dist/models/create-commission-agreement-version-request-dto.d.ts +7 -0
  20. package/dist/models/create-commission-candidate-request-dto.d.ts +15 -2
  21. package/dist/models/create-commission-candidate-request-dto.js +2 -1
  22. package/dist/models/create-commission-clawback-request-dto.d.ts +24 -0
  23. package/dist/models/create-commission-clawback-request-dto.js +15 -0
  24. package/dist/models/create-commission-clawback-response-class.d.ts +43 -0
  25. package/dist/models/create-commission-clawback-response-class.js +21 -0
  26. package/dist/models/create-commission-item-request-dto.d.ts +2 -1
  27. package/dist/models/create-commission-item-request-dto.js +2 -1
  28. package/dist/models/create-commission-request-dto.d.ts +6 -0
  29. package/dist/models/evaluated-commission-class.d.ts +2 -1
  30. package/dist/models/evaluated-commission-class.js +2 -1
  31. package/dist/models/index.d.ts +6 -0
  32. package/dist/models/index.js +6 -0
  33. package/dist/models/trigger-due-commission-clawbacks-request-dto.d.ts +30 -0
  34. package/dist/models/trigger-due-commission-clawbacks-request-dto.js +15 -0
  35. package/dist/models/trigger-due-commission-clawbacks-response-class.d.ts +24 -0
  36. package/dist/models/trigger-due-commission-clawbacks-response-class.js +15 -0
  37. package/dist/models/update-commission-candidate-request-dto.d.ts +2 -1
  38. package/dist/models/update-commission-candidate-request-dto.js +2 -1
  39. package/models/clawback-config-class.ts +42 -0
  40. package/models/clawback-config-dto.ts +42 -0
  41. package/models/commission-agreement-version-class.ts +7 -0
  42. package/models/commission-candidate-class.ts +12 -0
  43. package/models/commission-class.ts +46 -0
  44. package/models/commission-config-dto.ts +3 -2
  45. package/models/commission-estimate-class.ts +3 -2
  46. package/models/create-commission-agreement-request-dto.ts +7 -0
  47. package/models/create-commission-agreement-version-request-dto.ts +7 -0
  48. package/models/create-commission-candidate-request-dto.ts +16 -3
  49. package/models/create-commission-clawback-request-dto.ts +30 -0
  50. package/models/create-commission-clawback-response-class.ts +52 -0
  51. package/models/create-commission-item-request-dto.ts +3 -2
  52. package/models/create-commission-request-dto.ts +6 -0
  53. package/models/evaluated-commission-class.ts +3 -2
  54. package/models/index.ts +6 -0
  55. package/models/trigger-due-commission-clawbacks-request-dto.ts +36 -0
  56. package/models/trigger-due-commission-clawbacks-response-class.ts +30 -0
  57. package/models/update-commission-candidate-request-dto.ts +3 -2
  58. package/package.json +1 -1
@@ -0,0 +1,43 @@
1
+ /**
2
+ * EMIL CommissionService
3
+ * The EMIL CommissionService API description
4
+ *
5
+ * The version of the OpenAPI document: 1.0
6
+ * Contact: kontakt@emil.de
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import { CommissionClass } from './commission-class';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface CreateCommissionClawbackResponseClass
17
+ */
18
+ export interface CreateCommissionClawbackResponseClass {
19
+ /**
20
+ * Whether a new clawback commission was created.
21
+ * @type {boolean}
22
+ * @memberof CreateCommissionClawbackResponseClass
23
+ */
24
+ 'created': boolean;
25
+ /**
26
+ * Reason why no clawback commission was created. Possible reasons: the original commission was not paid out, the calculated clawback amount was zero or positive, or the commission was already fully clawed back.
27
+ * @type {string}
28
+ * @memberof CreateCommissionClawbackResponseClass
29
+ */
30
+ 'notCreatedReason'?: CreateCommissionClawbackResponseClassNotCreatedReasonEnum;
31
+ /**
32
+ * Created clawback commission. Set only when created is true.
33
+ * @type {CommissionClass}
34
+ * @memberof CreateCommissionClawbackResponseClass
35
+ */
36
+ 'commission'?: CommissionClass;
37
+ }
38
+ export declare const CreateCommissionClawbackResponseClassNotCreatedReasonEnum: {
39
+ readonly CommissionNotPaidOut: "commission_not_paid_out";
40
+ readonly ClawbackAmountNotNegative: "clawback_amount_not_negative";
41
+ readonly CommissionAlreadyFullyClawedBack: "commission_already_fully_clawed_back";
42
+ };
43
+ export type CreateCommissionClawbackResponseClassNotCreatedReasonEnum = typeof CreateCommissionClawbackResponseClassNotCreatedReasonEnum[keyof typeof CreateCommissionClawbackResponseClassNotCreatedReasonEnum];
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * EMIL CommissionService
6
+ * The EMIL CommissionService API description
7
+ *
8
+ * The version of the OpenAPI document: 1.0
9
+ * Contact: kontakt@emil.de
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.CreateCommissionClawbackResponseClassNotCreatedReasonEnum = void 0;
17
+ exports.CreateCommissionClawbackResponseClassNotCreatedReasonEnum = {
18
+ CommissionNotPaidOut: 'commission_not_paid_out',
19
+ ClawbackAmountNotNegative: 'clawback_amount_not_negative',
20
+ CommissionAlreadyFullyClawedBack: 'commission_already_fully_clawed_back'
21
+ };
@@ -34,7 +34,7 @@ export interface CreateCommissionItemRequestDto {
34
34
  */
35
35
  'amount': number;
36
36
  /**
37
- * The type of commission item. Valid values: sales, maintenance, other
37
+ * The type of commission item. Valid values: sales, maintenance, other, clawback
38
38
  * @type {string}
39
39
  * @memberof CreateCommissionItemRequestDto
40
40
  */
@@ -44,5 +44,6 @@ export declare const CreateCommissionItemRequestDtoTypeEnum: {
44
44
  readonly Sales: "sales";
45
45
  readonly Maintenance: "maintenance";
46
46
  readonly Other: "other";
47
+ readonly Clawback: "clawback";
47
48
  };
48
49
  export type CreateCommissionItemRequestDtoTypeEnum = typeof CreateCommissionItemRequestDtoTypeEnum[keyof typeof CreateCommissionItemRequestDtoTypeEnum];
@@ -17,5 +17,6 @@ exports.CreateCommissionItemRequestDtoTypeEnum = void 0;
17
17
  exports.CreateCommissionItemRequestDtoTypeEnum = {
18
18
  Sales: 'sales',
19
19
  Maintenance: 'maintenance',
20
- Other: 'other'
20
+ Other: 'other',
21
+ Clawback: 'clawback'
21
22
  };
@@ -46,4 +46,10 @@ export interface CreateCommissionRequestDto {
46
46
  * @memberof CreateCommissionRequestDto
47
47
  */
48
48
  'items': Array<CreateCommissionItemRequestDto>;
49
+ /**
50
+ * Commission candidate code linked to this commission.
51
+ * @type {string}
52
+ * @memberof CreateCommissionRequestDto
53
+ */
54
+ 'commissionCandidateCode'?: string;
49
55
  }
@@ -16,7 +16,7 @@
16
16
  */
17
17
  export interface EvaluatedCommissionClass {
18
18
  /**
19
- * Type of commission (e.g., sales, maintenance, other)
19
+ * Type of commission (e.g., sales, maintenance, other, clawback)
20
20
  * @type {string}
21
21
  * @memberof EvaluatedCommissionClass
22
22
  */
@@ -50,5 +50,6 @@ export declare const EvaluatedCommissionClassTypeEnum: {
50
50
  readonly Sales: "sales";
51
51
  readonly Maintenance: "maintenance";
52
52
  readonly Other: "other";
53
+ readonly Clawback: "clawback";
53
54
  };
54
55
  export type EvaluatedCommissionClassTypeEnum = typeof EvaluatedCommissionClassTypeEnum[keyof typeof EvaluatedCommissionClassTypeEnum];
@@ -17,5 +17,6 @@ exports.EvaluatedCommissionClassTypeEnum = void 0;
17
17
  exports.EvaluatedCommissionClassTypeEnum = {
18
18
  Sales: 'sales',
19
19
  Maintenance: 'maintenance',
20
- Other: 'other'
20
+ Other: 'other',
21
+ Clawback: 'clawback'
21
22
  };
@@ -1,3 +1,5 @@
1
+ export * from './clawback-config-class';
2
+ export * from './clawback-config-dto';
1
3
  export * from './commission-agreement-class';
2
4
  export * from './commission-agreement-metadata-dto';
3
5
  export * from './commission-agreement-metadata-partner-dto';
@@ -24,6 +26,8 @@ export * from './create-commission-agreement-version-request-dto';
24
26
  export * from './create-commission-agreement-version-response-class';
25
27
  export * from './create-commission-candidate-request-dto';
26
28
  export * from './create-commission-candidate-response-class';
29
+ export * from './create-commission-clawback-request-dto';
30
+ export * from './create-commission-clawback-response-class';
27
31
  export * from './create-commission-item-request-dto';
28
32
  export * from './create-commission-recipient-for-products-request-dto';
29
33
  export * from './create-commission-recipient-for-products-response-class';
@@ -63,6 +67,8 @@ export * from './publish-commission-settlements-request-dto';
63
67
  export * from './publish-commission-settlements-response-class';
64
68
  export * from './trigger-commission-settlement-creation-request-dto';
65
69
  export * from './trigger-commission-settlement-creation-response-class';
70
+ export * from './trigger-due-commission-clawbacks-request-dto';
71
+ export * from './trigger-due-commission-clawbacks-response-class';
66
72
  export * from './update-commission-agreement-product-request-dto';
67
73
  export * from './update-commission-agreement-product-response-class';
68
74
  export * from './update-commission-agreement-request-dto';
@@ -14,6 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./clawback-config-class"), exports);
18
+ __exportStar(require("./clawback-config-dto"), exports);
17
19
  __exportStar(require("./commission-agreement-class"), exports);
18
20
  __exportStar(require("./commission-agreement-metadata-dto"), exports);
19
21
  __exportStar(require("./commission-agreement-metadata-partner-dto"), exports);
@@ -40,6 +42,8 @@ __exportStar(require("./create-commission-agreement-version-request-dto"), expor
40
42
  __exportStar(require("./create-commission-agreement-version-response-class"), exports);
41
43
  __exportStar(require("./create-commission-candidate-request-dto"), exports);
42
44
  __exportStar(require("./create-commission-candidate-response-class"), exports);
45
+ __exportStar(require("./create-commission-clawback-request-dto"), exports);
46
+ __exportStar(require("./create-commission-clawback-response-class"), exports);
43
47
  __exportStar(require("./create-commission-item-request-dto"), exports);
44
48
  __exportStar(require("./create-commission-recipient-for-products-request-dto"), exports);
45
49
  __exportStar(require("./create-commission-recipient-for-products-response-class"), exports);
@@ -79,6 +83,8 @@ __exportStar(require("./publish-commission-settlements-request-dto"), exports);
79
83
  __exportStar(require("./publish-commission-settlements-response-class"), exports);
80
84
  __exportStar(require("./trigger-commission-settlement-creation-request-dto"), exports);
81
85
  __exportStar(require("./trigger-commission-settlement-creation-response-class"), exports);
86
+ __exportStar(require("./trigger-due-commission-clawbacks-request-dto"), exports);
87
+ __exportStar(require("./trigger-due-commission-clawbacks-response-class"), exports);
82
88
  __exportStar(require("./update-commission-agreement-product-request-dto"), exports);
83
89
  __exportStar(require("./update-commission-agreement-product-response-class"), exports);
84
90
  __exportStar(require("./update-commission-agreement-request-dto"), exports);
@@ -0,0 +1,30 @@
1
+ /**
2
+ * EMIL CommissionService
3
+ * The EMIL CommissionService API description
4
+ *
5
+ * The version of the OpenAPI document: 1.0
6
+ * Contact: kontakt@emil.de
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface TriggerDueCommissionClawbacksRequestDto
16
+ */
17
+ export interface TriggerDueCommissionClawbacksRequestDto {
18
+ /**
19
+ * Processing cutoff for due scheduled clawback triggers. If omitted, server processing time is used.
20
+ * @type {string}
21
+ * @memberof TriggerDueCommissionClawbacksRequestDto
22
+ */
23
+ 'processingDate'?: string;
24
+ /**
25
+ * When true, due triggers are counted but not enqueued or marked queued.
26
+ * @type {boolean}
27
+ * @memberof TriggerDueCommissionClawbacksRequestDto
28
+ */
29
+ 'dryRun'?: boolean;
30
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * EMIL CommissionService
6
+ * The EMIL CommissionService API description
7
+ *
8
+ * The version of the OpenAPI document: 1.0
9
+ * Contact: kontakt@emil.de
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,24 @@
1
+ /**
2
+ * EMIL CommissionService
3
+ * The EMIL CommissionService API description
4
+ *
5
+ * The version of the OpenAPI document: 1.0
6
+ * Contact: kontakt@emil.de
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface TriggerDueCommissionClawbacksResponseClass
16
+ */
17
+ export interface TriggerDueCommissionClawbacksResponseClass {
18
+ /**
19
+ * Whether due scheduled clawback trigger processing completed.
20
+ * @type {boolean}
21
+ * @memberof TriggerDueCommissionClawbacksResponseClass
22
+ */
23
+ 'success': boolean;
24
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * EMIL CommissionService
6
+ * The EMIL CommissionService API description
7
+ *
8
+ * The version of the OpenAPI document: 1.0
9
+ * Contact: kontakt@emil.de
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -40,7 +40,7 @@ export interface UpdateCommissionCandidateRequestDto {
40
40
  */
41
41
  'status'?: UpdateCommissionCandidateRequestDtoStatusEnum;
42
42
  /**
43
- * The type of commission. Valid values: sales, maintenance, other
43
+ * The type of commission. Valid values: sales, maintenance, other, clawback
44
44
  * @type {string}
45
45
  * @memberof UpdateCommissionCandidateRequestDto
46
46
  */
@@ -67,5 +67,6 @@ export declare const UpdateCommissionCandidateRequestDtoCommissionTypeEnum: {
67
67
  readonly Sales: "sales";
68
68
  readonly Maintenance: "maintenance";
69
69
  readonly Other: "other";
70
+ readonly Clawback: "clawback";
70
71
  };
71
72
  export type UpdateCommissionCandidateRequestDtoCommissionTypeEnum = typeof UpdateCommissionCandidateRequestDtoCommissionTypeEnum[keyof typeof UpdateCommissionCandidateRequestDtoCommissionTypeEnum];
@@ -21,5 +21,6 @@ exports.UpdateCommissionCandidateRequestDtoStatusEnum = {
21
21
  exports.UpdateCommissionCandidateRequestDtoCommissionTypeEnum = {
22
22
  Sales: 'sales',
23
23
  Maintenance: 'maintenance',
24
- Other: 'other'
24
+ Other: 'other',
25
+ Clawback: 'clawback'
25
26
  };
@@ -0,0 +1,42 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * EMIL CommissionService
5
+ * The EMIL CommissionService API description
6
+ *
7
+ * The version of the OpenAPI document: 1.0
8
+ * Contact: kontakt@emil.de
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+
17
+ /**
18
+ *
19
+ * @export
20
+ * @interface ClawbackConfigClass
21
+ */
22
+ export interface ClawbackConfigClass {
23
+ /**
24
+ * Allow manual commission clawback creation.
25
+ * @type {boolean}
26
+ * @memberof ClawbackConfigClass
27
+ */
28
+ 'manual': boolean;
29
+ /**
30
+ * Allow automatic commission clawback creation for policy termination and withdrawal.
31
+ * @type {boolean}
32
+ * @memberof ClawbackConfigClass
33
+ */
34
+ 'policyCancellation': boolean;
35
+ /**
36
+ * Allow automatic commission clawback creation for intermediary switches.
37
+ * @type {boolean}
38
+ * @memberof ClawbackConfigClass
39
+ */
40
+ 'intermediarySwitched': boolean;
41
+ }
42
+
@@ -0,0 +1,42 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * EMIL CommissionService
5
+ * The EMIL CommissionService API description
6
+ *
7
+ * The version of the OpenAPI document: 1.0
8
+ * Contact: kontakt@emil.de
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+
17
+ /**
18
+ *
19
+ * @export
20
+ * @interface ClawbackConfigDto
21
+ */
22
+ export interface ClawbackConfigDto {
23
+ /**
24
+ * Allow manual commission clawback creation.
25
+ * @type {boolean}
26
+ * @memberof ClawbackConfigDto
27
+ */
28
+ 'manual': boolean;
29
+ /**
30
+ * Allow automatic commission clawback creation for policy termination and withdrawal.
31
+ * @type {boolean}
32
+ * @memberof ClawbackConfigDto
33
+ */
34
+ 'policyCancellation': boolean;
35
+ /**
36
+ * Allow automatic commission clawback creation for intermediary switches.
37
+ * @type {boolean}
38
+ * @memberof ClawbackConfigDto
39
+ */
40
+ 'intermediarySwitched': boolean;
41
+ }
42
+
@@ -13,6 +13,7 @@
13
13
  */
14
14
 
15
15
 
16
+ import { ClawbackConfigClass } from './clawback-config-class';
16
17
  import { CommissionAgreementClass } from './commission-agreement-class';
17
18
  import { CommissionAgreementProductClass } from './commission-agreement-product-class';
18
19
 
@@ -64,6 +65,12 @@ export interface CommissionAgreementVersionClass {
64
65
  * @memberof CommissionAgreementVersionClass
65
66
  */
66
67
  'settlementCreationDate'?: string;
68
+ /**
69
+ * Version-scoped clawback creation configuration.
70
+ * @type {ClawbackConfigClass}
71
+ * @memberof CommissionAgreementVersionClass
72
+ */
73
+ 'clawbackConfig': ClawbackConfigClass;
67
74
  /**
68
75
  * Description explaining what changed in this version or version notes
69
76
  * @type {string}
@@ -68,6 +68,18 @@ export interface CommissionCandidateClass {
68
68
  * @memberof CommissionCandidateClass
69
69
  */
70
70
  'policyRenewalDate'?: string;
71
+ /**
72
+ * Exclusive end of the period the commission will be created for
73
+ * @type {string}
74
+ * @memberof CommissionCandidateClass
75
+ */
76
+ 'commissionPeriodTo'?: string;
77
+ /**
78
+ * Expected invoice entry count in the commission period, used as the pro rata denominator
79
+ * @type {number}
80
+ * @memberof CommissionCandidateClass
81
+ */
82
+ 'expectedInvoiceEntryCount'?: number;
71
83
  /**
72
84
  * Time at which the object was created.
73
85
  * @type {string}
@@ -112,6 +112,42 @@ export interface CommissionClass {
112
112
  * @memberof CommissionClass
113
113
  */
114
114
  'settlementCode'?: string;
115
+ /**
116
+ * The source invoice code for invoice-driven commissions
117
+ * @type {string}
118
+ * @memberof CommissionClass
119
+ */
120
+ 'invoiceCode'?: string;
121
+ /**
122
+ * Start of the period the commission was originally created for
123
+ * @type {string}
124
+ * @memberof CommissionClass
125
+ */
126
+ 'commissionPeriodFrom'?: string;
127
+ /**
128
+ * Exclusive end of the period the commission was originally created for
129
+ * @type {string}
130
+ * @memberof CommissionClass
131
+ */
132
+ 'commissionPeriodTo'?: string;
133
+ /**
134
+ * Expected invoice entry count in the commission period, used as the pro rata denominator
135
+ * @type {number}
136
+ * @memberof CommissionClass
137
+ */
138
+ 'expectedInvoiceEntryCount'?: number;
139
+ /**
140
+ * For clawback commissions, the original commission being clawed back
141
+ * @type {string}
142
+ * @memberof CommissionClass
143
+ */
144
+ 'originalCommissionCode'?: string;
145
+ /**
146
+ * The trigger type that created this clawback commission
147
+ * @type {string}
148
+ * @memberof CommissionClass
149
+ */
150
+ 'clawbackTriggerType'?: CommissionClassClawbackTriggerTypeEnum;
115
151
  /**
116
152
  * Time at which the object was created.
117
153
  * @type {string}
@@ -144,3 +180,13 @@ export interface CommissionClass {
144
180
  'items': Array<CommissionItemClass>;
145
181
  }
146
182
 
183
+ export const CommissionClassClawbackTriggerTypeEnum = {
184
+ Manual: 'manual',
185
+ PolicyTermination: 'policy_termination',
186
+ PolicyWithdrawal: 'policy_withdrawal',
187
+ IntermediarySwitched: 'intermediary_switched'
188
+ } as const;
189
+
190
+ export type CommissionClassClawbackTriggerTypeEnum = typeof CommissionClassClawbackTriggerTypeEnum[keyof typeof CommissionClassClawbackTriggerTypeEnum];
191
+
192
+
@@ -22,7 +22,7 @@ import { CommissionConditionsDto } from './commission-conditions-dto';
22
22
  */
23
23
  export interface CommissionConfigDto {
24
24
  /**
25
- * Type of commission (e.g., sales, maintenance, other)
25
+ * Type of commission (e.g., sales, maintenance, other, clawback)
26
26
  * @type {string}
27
27
  * @memberof CommissionConfigDto
28
28
  */
@@ -50,7 +50,8 @@ export interface CommissionConfigDto {
50
50
  export const CommissionConfigDtoTypeEnum = {
51
51
  Sales: 'sales',
52
52
  Maintenance: 'maintenance',
53
- Other: 'other'
53
+ Other: 'other',
54
+ Clawback: 'clawback'
54
55
  } as const;
55
56
 
56
57
  export type CommissionConfigDtoTypeEnum = typeof CommissionConfigDtoTypeEnum[keyof typeof CommissionConfigDtoTypeEnum];
@@ -39,7 +39,7 @@ export interface CommissionEstimateClass {
39
39
  */
40
40
  'amount': number;
41
41
  /**
42
- * Type of commission. Valid values: sales, maintenance, other
42
+ * Type of commission. Valid values: sales, maintenance, other, clawback
43
43
  * @type {string}
44
44
  * @memberof CommissionEstimateClass
45
45
  */
@@ -55,7 +55,8 @@ export interface CommissionEstimateClass {
55
55
  export const CommissionEstimateClassTypeEnum = {
56
56
  Sales: 'sales',
57
57
  Maintenance: 'maintenance',
58
- Other: 'other'
58
+ Other: 'other',
59
+ Clawback: 'clawback'
59
60
  } as const;
60
61
 
61
62
  export type CommissionEstimateClassTypeEnum = typeof CommissionEstimateClassTypeEnum[keyof typeof CommissionEstimateClassTypeEnum];
@@ -13,6 +13,7 @@
13
13
  */
14
14
 
15
15
 
16
+ import { ClawbackConfigDto } from './clawback-config-dto';
16
17
  import { CommissionAgreementMetadataDto } from './commission-agreement-metadata-dto';
17
18
 
18
19
  /**
@@ -75,6 +76,12 @@ export interface CreateCommissionAgreementRequestDto {
75
76
  * @memberof CreateCommissionAgreementRequestDto
76
77
  */
77
78
  'settlementCreationDate'?: string;
79
+ /**
80
+ * Initial version clawback creation configuration. Missing config defaults to all triggers disabled.
81
+ * @type {ClawbackConfigDto}
82
+ * @memberof CreateCommissionAgreementRequestDto
83
+ */
84
+ 'clawbackConfig'?: ClawbackConfigDto;
78
85
  }
79
86
 
80
87
  export const CreateCommissionAgreementRequestDtoBillingFrequencyEnum = {
@@ -13,6 +13,7 @@
13
13
  */
14
14
 
15
15
 
16
+ import { ClawbackConfigDto } from './clawback-config-dto';
16
17
 
17
18
  /**
18
19
  *
@@ -50,5 +51,11 @@ export interface CreateCommissionAgreementVersionRequestDto {
50
51
  * @memberof CreateCommissionAgreementVersionRequestDto
51
52
  */
52
53
  'versionDescription'?: string;
54
+ /**
55
+ * Version-scoped clawback creation configuration. Missing config defaults to all triggers disabled.
56
+ * @type {ClawbackConfigDto}
57
+ * @memberof CreateCommissionAgreementVersionRequestDto
58
+ */
59
+ 'clawbackConfig'?: ClawbackConfigDto;
53
60
  }
54
61
 
@@ -39,7 +39,7 @@ export interface CreateCommissionCandidateRequestDto {
39
39
  */
40
40
  'candidateType': CreateCommissionCandidateRequestDtoCandidateTypeEnum;
41
41
  /**
42
- * The type of commission. Valid values: sales, maintenance, other
42
+ * The type of commission. Valid values: sales, maintenance, other, clawback
43
43
  * @type {string}
44
44
  * @memberof CreateCommissionCandidateRequestDto
45
45
  */
@@ -51,11 +51,23 @@ export interface CreateCommissionCandidateRequestDto {
51
51
  */
52
52
  'commissionCode'?: string;
53
53
  /**
54
- * The date of the next policy renewal for this commission candidate
54
+ * The date of the next policy renewal for this commission candidate. Required when renewal clawback metadata is provided.
55
55
  * @type {string}
56
56
  * @memberof CreateCommissionCandidateRequestDto
57
57
  */
58
58
  'policyRenewalDate'?: string;
59
+ /**
60
+ * Exclusive end of the commission period. If provided, policyRenewalDate and expectedInvoiceEntryCount must also be provided.
61
+ * @type {string}
62
+ * @memberof CreateCommissionCandidateRequestDto
63
+ */
64
+ 'commissionPeriodTo'?: string;
65
+ /**
66
+ * Expected invoice entry count in the commission period. If provided, policyRenewalDate and commissionPeriodTo must also be provided.
67
+ * @type {number}
68
+ * @memberof CreateCommissionCandidateRequestDto
69
+ */
70
+ 'expectedInvoiceEntryCount'?: number;
59
71
  }
60
72
 
61
73
  export const CreateCommissionCandidateRequestDtoCandidateTypeEnum = {
@@ -67,7 +79,8 @@ export type CreateCommissionCandidateRequestDtoCandidateTypeEnum = typeof Create
67
79
  export const CreateCommissionCandidateRequestDtoCommissionTypeEnum = {
68
80
  Sales: 'sales',
69
81
  Maintenance: 'maintenance',
70
- Other: 'other'
82
+ Other: 'other',
83
+ Clawback: 'clawback'
71
84
  } as const;
72
85
 
73
86
  export type CreateCommissionCandidateRequestDtoCommissionTypeEnum = typeof CreateCommissionCandidateRequestDtoCommissionTypeEnum[keyof typeof CreateCommissionCandidateRequestDtoCommissionTypeEnum];
@@ -0,0 +1,30 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * EMIL CommissionService
5
+ * The EMIL CommissionService API description
6
+ *
7
+ * The version of the OpenAPI document: 1.0
8
+ * Contact: kontakt@emil.de
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+
17
+ /**
18
+ *
19
+ * @export
20
+ * @interface CreateCommissionClawbackRequestDto
21
+ */
22
+ export interface CreateCommissionClawbackRequestDto {
23
+ /**
24
+ * Optional business effective date for the clawback calculation. If omitted, server processing time is used.
25
+ * @type {string}
26
+ * @memberof CreateCommissionClawbackRequestDto
27
+ */
28
+ 'effectiveDate'?: string;
29
+ }
30
+