@munchi_oy/core 1.9.73 → 1.9.75

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.
package/generated/api.ts CHANGED
@@ -3668,10 +3668,10 @@ export interface CreateManualSessionDto {
3668
3668
  'tipAmount'?: number;
3669
3669
  /**
3670
3670
  *
3671
- * @type {InitiateVivaSessionDtoSplitContext}
3671
+ * @type {CreateManualSessionDtoSplitContext}
3672
3672
  * @memberof CreateManualSessionDto
3673
3673
  */
3674
- 'splitContext'?: InitiateVivaSessionDtoSplitContext;
3674
+ 'splitContext'?: CreateManualSessionDtoSplitContext;
3675
3675
  /**
3676
3676
  * Arbitrary client metadata persisted on the session (e.g. voucher code, gift card id, employee id, external reference, notes). Surfaced to reconciliation when building the order paymentEvent.
3677
3677
  * @type {object}
@@ -3930,6 +3930,33 @@ export interface CreateManualSessionDtoOrder {
3930
3930
  }
3931
3931
 
3932
3932
 
3933
+ /**
3934
+ * Split context. Omit for a full-cart payment, or send { mode, partId|seatId } for a split. Must match the order\'s checkoutModel.
3935
+ * @export
3936
+ * @interface CreateManualSessionDtoSplitContext
3937
+ */
3938
+ export interface CreateManualSessionDtoSplitContext {
3939
+ /**
3940
+ *
3941
+ * @type {CheckoutModelEnum}
3942
+ * @memberof CreateManualSessionDtoSplitContext
3943
+ */
3944
+ 'mode': CheckoutModelEnum;
3945
+ /**
3946
+ * Equal-split part id. Required when mode=EQUAL_SPLIT; ignored otherwise.
3947
+ * @type {string}
3948
+ * @memberof CreateManualSessionDtoSplitContext
3949
+ */
3950
+ 'partId'?: string;
3951
+ /**
3952
+ * Item-split seat id. Required when mode=ITEM_SPLIT; ignored otherwise.
3953
+ * @type {string}
3954
+ * @memberof CreateManualSessionDtoSplitContext
3955
+ */
3956
+ 'seatId'?: string;
3957
+ }
3958
+
3959
+
3933
3960
  /**
3934
3961
  *
3935
3962
  * @export
@@ -6677,6 +6704,56 @@ export interface ImageBackgroundConfig {
6677
6704
  }
6678
6705
 
6679
6706
 
6707
+ /**
6708
+ *
6709
+ * @export
6710
+ * @interface InitiateNetsSessionDto
6711
+ */
6712
+ export interface InitiateNetsSessionDto {
6713
+ /**
6714
+ * The internal business ID.
6715
+ * @type {number}
6716
+ * @memberof InitiateNetsSessionDto
6717
+ */
6718
+ 'businessId': number;
6719
+ /**
6720
+ * The POS order ID this payment session is for.
6721
+ * @type {string}
6722
+ * @memberof InitiateNetsSessionDto
6723
+ */
6724
+ 'orderId': string;
6725
+ /**
6726
+ * Amount to charge in smallest currency unit (cents).
6727
+ * @type {number}
6728
+ * @memberof InitiateNetsSessionDto
6729
+ */
6730
+ 'amount': number;
6731
+ /**
6732
+ *
6733
+ * @type {CreateManualSessionDtoSplitContext}
6734
+ * @memberof InitiateNetsSessionDto
6735
+ */
6736
+ 'splitContext'?: CreateManualSessionDtoSplitContext;
6737
+ }
6738
+ /**
6739
+ *
6740
+ * @export
6741
+ * @interface InitiateNetsSessionResponseDto
6742
+ */
6743
+ export interface InitiateNetsSessionResponseDto {
6744
+ /**
6745
+ * Opaque token returned to the client. Used by the client to poll/sync the session. Never sent to Nets.
6746
+ * @type {string}
6747
+ * @memberof InitiateNetsSessionResponseDto
6748
+ */
6749
+ 'clientToken': string;
6750
+ /**
6751
+ * Internal session ID — the Nets ConnectCloud request id the webhook resolves against.
6752
+ * @type {string}
6753
+ * @memberof InitiateNetsSessionResponseDto
6754
+ */
6755
+ 'sessionId': string;
6756
+ }
6680
6757
  /**
6681
6758
  *
6682
6759
  * @export
@@ -6746,10 +6823,10 @@ export interface InitiateVivaA2aSessionDto {
6746
6823
  'showTransactionResult'?: boolean;
6747
6824
  /**
6748
6825
  *
6749
- * @type {InitiateVivaSessionDtoSplitContext}
6826
+ * @type {CreateManualSessionDtoSplitContext}
6750
6827
  * @memberof InitiateVivaA2aSessionDto
6751
6828
  */
6752
- 'splitContext'?: InitiateVivaSessionDtoSplitContext;
6829
+ 'splitContext'?: CreateManualSessionDtoSplitContext;
6753
6830
  }
6754
6831
 
6755
6832
 
@@ -6890,38 +6967,11 @@ export interface InitiateVivaSessionDto {
6890
6967
  'amount': number;
6891
6968
  /**
6892
6969
  *
6893
- * @type {InitiateVivaSessionDtoSplitContext}
6970
+ * @type {CreateManualSessionDtoSplitContext}
6894
6971
  * @memberof InitiateVivaSessionDto
6895
6972
  */
6896
- 'splitContext'?: InitiateVivaSessionDtoSplitContext;
6897
- }
6898
- /**
6899
- * Split context. Omit for a full-cart payment, or send { mode, partId|seatId } for a split. Must match the order\'s checkoutModel.
6900
- * @export
6901
- * @interface InitiateVivaSessionDtoSplitContext
6902
- */
6903
- export interface InitiateVivaSessionDtoSplitContext {
6904
- /**
6905
- *
6906
- * @type {CheckoutModelEnum}
6907
- * @memberof InitiateVivaSessionDtoSplitContext
6908
- */
6909
- 'mode': CheckoutModelEnum;
6910
- /**
6911
- * Equal-split part id. Required when mode=EQUAL_SPLIT; ignored otherwise.
6912
- * @type {string}
6913
- * @memberof InitiateVivaSessionDtoSplitContext
6914
- */
6915
- 'partId'?: string;
6916
- /**
6917
- * Item-split seat id. Required when mode=ITEM_SPLIT; ignored otherwise.
6918
- * @type {string}
6919
- * @memberof InitiateVivaSessionDtoSplitContext
6920
- */
6921
- 'seatId'?: string;
6973
+ 'splitContext'?: CreateManualSessionDtoSplitContext;
6922
6974
  }
6923
-
6924
-
6925
6975
  /**
6926
6976
  *
6927
6977
  * @export
@@ -7034,6 +7084,74 @@ export interface InitiateVivaSessionResponseDtoVivaIntent {
7034
7084
  }
7035
7085
 
7036
7086
 
7087
+ /**
7088
+ *
7089
+ * @export
7090
+ * @interface InitiateWorldlineSessionDto
7091
+ */
7092
+ export interface InitiateWorldlineSessionDto {
7093
+ /**
7094
+ * The internal business ID.
7095
+ * @type {number}
7096
+ * @memberof InitiateWorldlineSessionDto
7097
+ */
7098
+ 'businessId': number;
7099
+ /**
7100
+ * The POS order ID this payment session is for.
7101
+ * @type {string}
7102
+ * @memberof InitiateWorldlineSessionDto
7103
+ */
7104
+ 'orderId': string;
7105
+ /**
7106
+ * Amount to charge in smallest currency unit (cents).
7107
+ * @type {number}
7108
+ * @memberof InitiateWorldlineSessionDto
7109
+ */
7110
+ 'amount': number;
7111
+ /**
7112
+ * Optional tip amount in the smallest currency unit (cents).
7113
+ * @type {number}
7114
+ * @memberof InitiateWorldlineSessionDto
7115
+ */
7116
+ 'tipAmount'?: number;
7117
+ /**
7118
+ * Whether the terminal should print the customer receipt.
7119
+ * @type {boolean}
7120
+ * @memberof InitiateWorldlineSessionDto
7121
+ */
7122
+ 'showReceipt'?: boolean;
7123
+ /**
7124
+ *
7125
+ * @type {CreateManualSessionDtoSplitContext}
7126
+ * @memberof InitiateWorldlineSessionDto
7127
+ */
7128
+ 'splitContext'?: CreateManualSessionDtoSplitContext;
7129
+ }
7130
+ /**
7131
+ *
7132
+ * @export
7133
+ * @interface InitiateWorldlineSessionResponseDto
7134
+ */
7135
+ export interface InitiateWorldlineSessionResponseDto {
7136
+ /**
7137
+ * Opaque token returned to the client. Used by the client to poll/sync the session via GET /payment-session/:clientToken.
7138
+ * @type {string}
7139
+ * @memberof InitiateWorldlineSessionResponseDto
7140
+ */
7141
+ 'clientToken': string;
7142
+ /**
7143
+ * Internal session ID — equal to the Worldline operationId the webhook resolves against.
7144
+ * @type {string}
7145
+ * @memberof InitiateWorldlineSessionResponseDto
7146
+ */
7147
+ 'sessionId': string;
7148
+ /**
7149
+ * The Worldline operationId. Same value as sessionId; exposed so the client can correlate terminal/Ably updates during the transition.
7150
+ * @type {string}
7151
+ * @memberof InitiateWorldlineSessionResponseDto
7152
+ */
7153
+ 'operationId': string;
7154
+ }
7037
7155
  /**
7038
7156
  *
7039
7157
  * @export
@@ -10147,6 +10265,65 @@ export interface NetsPaymentMessageDtoData {
10147
10265
  */
10148
10266
  'storeboxToken'?: string;
10149
10267
  }
10268
+ /**
10269
+ *
10270
+ * @export
10271
+ * @enum {string}
10272
+ */
10273
+
10274
+ export const NetsRevertMethod = {
10275
+ Reversal: 'REVERSAL',
10276
+ Refund: 'REFUND'
10277
+ } as const;
10278
+
10279
+ export type NetsRevertMethod = typeof NetsRevertMethod[keyof typeof NetsRevertMethod];
10280
+
10281
+
10282
+ /**
10283
+ *
10284
+ * @export
10285
+ * @interface NetsRevertResponseDto
10286
+ */
10287
+ export interface NetsRevertResponseDto {
10288
+ /**
10289
+ *
10290
+ * @type {NetsRevertMethod}
10291
+ * @memberof NetsRevertResponseDto
10292
+ */
10293
+ 'method': NetsRevertMethod;
10294
+ /**
10295
+ * True when the customer must tap their card to complete (REFUND); false for a REVERSAL, which settles without a tap.
10296
+ * @type {boolean}
10297
+ * @memberof NetsRevertResponseDto
10298
+ */
10299
+ 'requiresCardTap': boolean;
10300
+ /**
10301
+ * Opaque token to poll GET /payment-session/:clientToken for the final outcome.
10302
+ * @type {string}
10303
+ * @memberof NetsRevertResponseDto
10304
+ */
10305
+ 'clientToken': string;
10306
+ /**
10307
+ * Internal session id — the Nets connectcloud-request-id the webhook resolves against.
10308
+ * @type {string}
10309
+ * @memberof NetsRevertResponseDto
10310
+ */
10311
+ 'sessionId': string;
10312
+ /**
10313
+ * Amount being reverted, in the smallest currency unit (cents).
10314
+ * @type {number}
10315
+ * @memberof NetsRevertResponseDto
10316
+ */
10317
+ 'amount': number;
10318
+ /**
10319
+ *
10320
+ * @type {PaymentSessionStatus}
10321
+ * @memberof NetsRevertResponseDto
10322
+ */
10323
+ 'status': PaymentSessionStatus;
10324
+ }
10325
+
10326
+
10150
10327
  /**
10151
10328
  *
10152
10329
  * @export
@@ -14015,6 +14192,19 @@ export interface PollVivaSessionDto {
14015
14192
  */
14016
14193
  'sessionId': string;
14017
14194
  }
14195
+ /**
14196
+ *
14197
+ * @export
14198
+ * @interface PollWorldlineSessionDto
14199
+ */
14200
+ export interface PollWorldlineSessionDto {
14201
+ /**
14202
+ * The Worldline session id (= operationId) to poll.
14203
+ * @type {string}
14204
+ * @memberof PollWorldlineSessionDto
14205
+ */
14206
+ 'sessionId': string;
14207
+ }
14018
14208
  /**
14019
14209
  *
14020
14210
  * @export
@@ -25256,6 +25446,12 @@ export interface WorldlineRefundRequestDataDto {
25256
25446
  * @memberof WorldlineRefundRequestDataDto
25257
25447
  */
25258
25448
  'amounts': WorldlineRefundRequestDataDtoAmounts;
25449
+ /**
25450
+ * Receipt number of the original payment (from PaymentCompleted.receiptNumber). Required for a REVERSAL — it identifies which transaction on the terminal to void. Omit for a ReturnOfGoods refund.
25451
+ * @type {string}
25452
+ * @memberof WorldlineRefundRequestDataDto
25453
+ */
25454
+ 'receiptNumber'?: string;
25259
25455
  /**
25260
25456
  * Cashier identifier
25261
25457
  * @type {string}
@@ -25312,6 +25508,65 @@ export interface WorldlineRefundRequestDataDtoAmounts {
25312
25508
  */
25313
25509
  'tip'?: number;
25314
25510
  }
25511
+ /**
25512
+ *
25513
+ * @export
25514
+ * @enum {string}
25515
+ */
25516
+
25517
+ export const WorldlineRevertMethod = {
25518
+ Reversal: 'REVERSAL',
25519
+ Refund: 'REFUND'
25520
+ } as const;
25521
+
25522
+ export type WorldlineRevertMethod = typeof WorldlineRevertMethod[keyof typeof WorldlineRevertMethod];
25523
+
25524
+
25525
+ /**
25526
+ *
25527
+ * @export
25528
+ * @interface WorldlineRevertResponseDto
25529
+ */
25530
+ export interface WorldlineRevertResponseDto {
25531
+ /**
25532
+ *
25533
+ * @type {WorldlineRevertMethod}
25534
+ * @memberof WorldlineRevertResponseDto
25535
+ */
25536
+ 'method': WorldlineRevertMethod;
25537
+ /**
25538
+ * True when the customer must tap their card to complete (REFUND); false for a REVERSAL, which settles without a tap.
25539
+ * @type {boolean}
25540
+ * @memberof WorldlineRevertResponseDto
25541
+ */
25542
+ 'requiresCardTap': boolean;
25543
+ /**
25544
+ * Opaque token to poll GET /payment-session/:clientToken for the final outcome.
25545
+ * @type {string}
25546
+ * @memberof WorldlineRevertResponseDto
25547
+ */
25548
+ 'clientToken': string;
25549
+ /**
25550
+ * Internal session id — the Worldline operationId the webhook resolves against.
25551
+ * @type {string}
25552
+ * @memberof WorldlineRevertResponseDto
25553
+ */
25554
+ 'sessionId': string;
25555
+ /**
25556
+ * Amount being reverted, in the smallest currency unit (cents).
25557
+ * @type {number}
25558
+ * @memberof WorldlineRevertResponseDto
25559
+ */
25560
+ 'amount': number;
25561
+ /**
25562
+ *
25563
+ * @type {PaymentSessionStatus}
25564
+ * @memberof WorldlineRevertResponseDto
25565
+ */
25566
+ 'status': PaymentSessionStatus;
25567
+ }
25568
+
25569
+
25315
25570
 
25316
25571
  /**
25317
25572
  * AblyApi - axios parameter creator
@@ -40769,15 +41024,15 @@ export class PaymentMethodsApi extends BaseAPI implements PaymentMethodsApiInter
40769
41024
  export const PaymentSessionApiAxiosParamCreator = function (configuration?: Configuration) {
40770
41025
  return {
40771
41026
  /**
40772
- * Arms cancelRequestedAt + aborts the Viva terminal session. Does not flip status — the webhook/sweep resolves the real outcome, and a late success is auto-voided. Viva card only.
40773
- * @summary Cancel an in-flight Viva payment session
41027
+ * Arms cancelRequestedAt + aborts at the gateway (Viva session abort / Nets terminal cancelAction, dispatched on the session\'s provider). Does not flip status — the webhook/sweep resolves the real outcome; a late success parks at VOID_PENDING with a dev alert. Card sessions only.
41028
+ * @summary Cancel an in-flight card payment session (Viva or Nets)
40774
41029
  * @param {string} clientToken
40775
41030
  * @param {*} [options] Override http request option.
40776
41031
  * @throws {RequiredError}
40777
41032
  */
40778
- cancelVivaSession: async (clientToken: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41033
+ cancelSession: async (clientToken: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
40779
41034
  // verify required parameter 'clientToken' is not null or undefined
40780
- assertParamExists('cancelVivaSession', 'clientToken', clientToken)
41035
+ assertParamExists('cancelSession', 'clientToken', clientToken)
40781
41036
  const localVarPath = `/api/v1/payment-session/{clientToken}/cancel`
40782
41037
  .replace(`{${"clientToken"}}`, encodeURIComponent(String(clientToken)));
40783
41038
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
@@ -40837,53 +41092,94 @@ export const PaymentSessionApiAxiosParamCreator = function (configuration?: Conf
40837
41092
  };
40838
41093
  },
40839
41094
  /**
40840
- * Builds the Viva app-to-app launch params (same as the legacy viva/a2a/create-payment) and persists a PaymentSession keyed by the Viva clientTransactionId, so the webhook + reconciliation own the order mutation. Returns the launch params plus a clientToken to poll the session.
40841
- * @summary Initiate a Viva app-to-app payment session
40842
- * @param {InitiateVivaA2aSessionDto} initiateVivaA2aSessionDto
40843
- * @param {*} [options] Override http request option.
40844
- * @throws {RequiredError}
40845
- */
40846
- initiateVivaA2aSession: async (initiateVivaA2aSessionDto: InitiateVivaA2aSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
40847
- // verify required parameter 'initiateVivaA2aSessionDto' is not null or undefined
40848
- assertParamExists('initiateVivaA2aSession', 'initiateVivaA2aSessionDto', initiateVivaA2aSessionDto)
40849
- const localVarPath = `/api/v1/payment-session/viva/a2a`;
40850
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
40851
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
40852
- let baseOptions;
40853
- if (configuration) {
40854
- baseOptions = configuration.baseOptions;
40855
- }
40856
-
40857
- const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
40858
- const localVarHeaderParameter = {} as any;
40859
- const localVarQueryParameter = {} as any;
40860
-
40861
-
40862
-
40863
- localVarHeaderParameter['Content-Type'] = 'application/json';
40864
-
40865
- setSearchParams(localVarUrlObj, localVarQueryParameter);
40866
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
40867
- localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
40868
- localVarRequestOptions.data = serializeDataIfNeeded(initiateVivaA2aSessionDto, localVarRequestOptions, configuration)
40869
-
40870
- return {
40871
- url: toPathString(localVarUrlObj),
40872
- options: localVarRequestOptions,
40873
- };
40874
- },
40875
- /**
40876
- * Creates a PaymentSession row, calls Viva createTransaction, returns a client-facing token and the Viva payment intent. Idempotent via X-Idempotency-Key header.
40877
- * @summary Initiate a Viva payment session
40878
- * @param {InitiateVivaSessionDto} initiateVivaSessionDto
41095
+ * Creates a PaymentSession row, pushes the transaction to the station\'s Nets terminal (async — the result arrives via the Nets webhook), returns a client-facing token to poll. Idempotent via X-Idempotency-Key header.
41096
+ * @summary Initiate a Nets terminal payment session
41097
+ * @param {InitiateNetsSessionDto} initiateNetsSessionDto
40879
41098
  * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
40880
41099
  * @param {*} [options] Override http request option.
40881
41100
  * @throws {RequiredError}
40882
41101
  */
40883
- initiateVivaSession: async (initiateVivaSessionDto: InitiateVivaSessionDto, xIdempotencyKey?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
40884
- // verify required parameter 'initiateVivaSessionDto' is not null or undefined
40885
- assertParamExists('initiateVivaSession', 'initiateVivaSessionDto', initiateVivaSessionDto)
40886
- const localVarPath = `/api/v1/payment-session/viva/initiate`;
41102
+ initiateNetsSession: async (initiateNetsSessionDto: InitiateNetsSessionDto, xIdempotencyKey?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41103
+ // verify required parameter 'initiateNetsSessionDto' is not null or undefined
41104
+ assertParamExists('initiateNetsSession', 'initiateNetsSessionDto', initiateNetsSessionDto)
41105
+ const localVarPath = `/api/v1/payment-session/nets/initiate`;
41106
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41107
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41108
+ let baseOptions;
41109
+ if (configuration) {
41110
+ baseOptions = configuration.baseOptions;
41111
+ }
41112
+
41113
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41114
+ const localVarHeaderParameter = {} as any;
41115
+ const localVarQueryParameter = {} as any;
41116
+
41117
+ if (xIdempotencyKey != null) {
41118
+ localVarHeaderParameter['X-Idempotency-Key'] = String(xIdempotencyKey);
41119
+ }
41120
+
41121
+
41122
+
41123
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41124
+
41125
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41126
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41127
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41128
+ localVarRequestOptions.data = serializeDataIfNeeded(initiateNetsSessionDto, localVarRequestOptions, configuration)
41129
+
41130
+ return {
41131
+ url: toPathString(localVarUrlObj),
41132
+ options: localVarRequestOptions,
41133
+ };
41134
+ },
41135
+ /**
41136
+ * Builds the Viva app-to-app launch params (same as the legacy viva/a2a/create-payment) and persists a PaymentSession keyed by the Viva clientTransactionId, so the webhook + reconciliation own the order mutation. Returns the launch params plus a clientToken to poll the session.
41137
+ * @summary Initiate a Viva app-to-app payment session
41138
+ * @param {InitiateVivaA2aSessionDto} initiateVivaA2aSessionDto
41139
+ * @param {*} [options] Override http request option.
41140
+ * @throws {RequiredError}
41141
+ */
41142
+ initiateVivaA2aSession: async (initiateVivaA2aSessionDto: InitiateVivaA2aSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41143
+ // verify required parameter 'initiateVivaA2aSessionDto' is not null or undefined
41144
+ assertParamExists('initiateVivaA2aSession', 'initiateVivaA2aSessionDto', initiateVivaA2aSessionDto)
41145
+ const localVarPath = `/api/v1/payment-session/viva/a2a`;
41146
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41147
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41148
+ let baseOptions;
41149
+ if (configuration) {
41150
+ baseOptions = configuration.baseOptions;
41151
+ }
41152
+
41153
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41154
+ const localVarHeaderParameter = {} as any;
41155
+ const localVarQueryParameter = {} as any;
41156
+
41157
+
41158
+
41159
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41160
+
41161
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41162
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41163
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41164
+ localVarRequestOptions.data = serializeDataIfNeeded(initiateVivaA2aSessionDto, localVarRequestOptions, configuration)
41165
+
41166
+ return {
41167
+ url: toPathString(localVarUrlObj),
41168
+ options: localVarRequestOptions,
41169
+ };
41170
+ },
41171
+ /**
41172
+ * Creates a PaymentSession row, calls Viva createTransaction, returns a client-facing token and the Viva payment intent. Idempotent via X-Idempotency-Key header.
41173
+ * @summary Initiate a Viva payment session
41174
+ * @param {InitiateVivaSessionDto} initiateVivaSessionDto
41175
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
41176
+ * @param {*} [options] Override http request option.
41177
+ * @throws {RequiredError}
41178
+ */
41179
+ initiateVivaSession: async (initiateVivaSessionDto: InitiateVivaSessionDto, xIdempotencyKey?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41180
+ // verify required parameter 'initiateVivaSessionDto' is not null or undefined
41181
+ assertParamExists('initiateVivaSession', 'initiateVivaSessionDto', initiateVivaSessionDto)
41182
+ const localVarPath = `/api/v1/payment-session/viva/initiate`;
40887
41183
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
40888
41184
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
40889
41185
  let baseOptions;
@@ -40913,6 +41209,47 @@ export const PaymentSessionApiAxiosParamCreator = function (configuration?: Conf
40913
41209
  options: localVarRequestOptions,
40914
41210
  };
40915
41211
  },
41212
+ /**
41213
+ * Creates a PaymentSession row and pushes the transaction to the station\'s Worldline terminal via the Worldline microservice (async — the result arrives via the Worldline webhook). Returns a client-facing token to poll. The backend owns the order mutation (webhook → reconciliation), replacing the legacy FE-writes-from-Ably flow. Idempotent via X-Idempotency-Key header.
41214
+ * @summary Initiate a Worldline terminal payment session
41215
+ * @param {InitiateWorldlineSessionDto} initiateWorldlineSessionDto
41216
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
41217
+ * @param {*} [options] Override http request option.
41218
+ * @throws {RequiredError}
41219
+ */
41220
+ initiateWorldlineSession: async (initiateWorldlineSessionDto: InitiateWorldlineSessionDto, xIdempotencyKey?: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41221
+ // verify required parameter 'initiateWorldlineSessionDto' is not null or undefined
41222
+ assertParamExists('initiateWorldlineSession', 'initiateWorldlineSessionDto', initiateWorldlineSessionDto)
41223
+ const localVarPath = `/api/v1/payment-session/worldline/initiate`;
41224
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41225
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41226
+ let baseOptions;
41227
+ if (configuration) {
41228
+ baseOptions = configuration.baseOptions;
41229
+ }
41230
+
41231
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41232
+ const localVarHeaderParameter = {} as any;
41233
+ const localVarQueryParameter = {} as any;
41234
+
41235
+ if (xIdempotencyKey != null) {
41236
+ localVarHeaderParameter['X-Idempotency-Key'] = String(xIdempotencyKey);
41237
+ }
41238
+
41239
+
41240
+
41241
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41242
+
41243
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41244
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41245
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41246
+ localVarRequestOptions.data = serializeDataIfNeeded(initiateWorldlineSessionDto, localVarRequestOptions, configuration)
41247
+
41248
+ return {
41249
+ url: toPathString(localVarUrlObj),
41250
+ options: localVarRequestOptions,
41251
+ };
41252
+ },
40916
41253
  /**
40917
41254
  * Called by a Cloud Task (not the client). Holds the request open and long-polls Viva by sessionId for up to ~45s. As soon as the transaction is terminal it updates the session status and, on success, triggers order reconciliation — guarded by a CAS claim (tryClose) so a late webhook never double-writes the paymentEvent — so the order closes even if the webhook never arrives.
40918
41255
  * @summary Internal: long-poll Viva for a stuck payment session (Cloud Task callback)
@@ -40949,6 +41286,42 @@ export const PaymentSessionApiAxiosParamCreator = function (configuration?: Conf
40949
41286
  options: localVarRequestOptions,
40950
41287
  };
40951
41288
  },
41289
+ /**
41290
+ * Called by a Cloud Task (not the client). Polls the Worldline microservice by operationId for up to ~45s; as soon as the operation is terminal it finalizes the PaymentSession through the same sweep the webhook uses (CAS-guarded, so a webhook + poll never double-write). Ensures the session resolves even if the webhook is slow or never arrives.
41291
+ * @summary Internal: poll Worldline for a stuck payment session (Cloud Task callback)
41292
+ * @param {PollWorldlineSessionDto} pollWorldlineSessionDto
41293
+ * @param {*} [options] Override http request option.
41294
+ * @throws {RequiredError}
41295
+ */
41296
+ pollWorldlineSession: async (pollWorldlineSessionDto: PollWorldlineSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41297
+ // verify required parameter 'pollWorldlineSessionDto' is not null or undefined
41298
+ assertParamExists('pollWorldlineSession', 'pollWorldlineSessionDto', pollWorldlineSessionDto)
41299
+ const localVarPath = `/api/v1/payment-session/worldline/poll`;
41300
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41301
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41302
+ let baseOptions;
41303
+ if (configuration) {
41304
+ baseOptions = configuration.baseOptions;
41305
+ }
41306
+
41307
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41308
+ const localVarHeaderParameter = {} as any;
41309
+ const localVarQueryParameter = {} as any;
41310
+
41311
+
41312
+
41313
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41314
+
41315
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41316
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41317
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41318
+ localVarRequestOptions.data = serializeDataIfNeeded(pollWorldlineSessionDto, localVarRequestOptions, configuration)
41319
+
41320
+ return {
41321
+ url: toPathString(localVarUrlObj),
41322
+ options: localVarRequestOptions,
41323
+ };
41324
+ },
40952
41325
  /**
40953
41326
  * Records a non-gateway payment (cash / voucher / CardManual / gift card / …) through PaymentSession so every device sees it. Card paymethods (Card/Debit/Credit/Edenred) use a gateway initiate. Resolves to SUCCESS immediately; reconciliation writes the paymentEvent.
40954
41327
  * @summary Record a manual payment session
@@ -40985,6 +41358,42 @@ export const PaymentSessionApiAxiosParamCreator = function (configuration?: Conf
40985
41358
  options: localVarRequestOptions,
40986
41359
  };
40987
41360
  },
41361
+ /**
41362
+ * Starts a terminal-present ReturnOfGoods on the station\'s Nets terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session (status INITIATED) — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
41363
+ * @summary Refund a settled Nets payment session (gateway only, async)
41364
+ * @param {ReverseSessionDto} reverseSessionDto
41365
+ * @param {*} [options] Override http request option.
41366
+ * @throws {RequiredError}
41367
+ */
41368
+ refundNetsSession: async (reverseSessionDto: ReverseSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41369
+ // verify required parameter 'reverseSessionDto' is not null or undefined
41370
+ assertParamExists('refundNetsSession', 'reverseSessionDto', reverseSessionDto)
41371
+ const localVarPath = `/api/v1/payment-session/nets/refund`;
41372
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41373
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41374
+ let baseOptions;
41375
+ if (configuration) {
41376
+ baseOptions = configuration.baseOptions;
41377
+ }
41378
+
41379
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41380
+ const localVarHeaderParameter = {} as any;
41381
+ const localVarQueryParameter = {} as any;
41382
+
41383
+
41384
+
41385
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41386
+
41387
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41388
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41389
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41390
+ localVarRequestOptions.data = serializeDataIfNeeded(reverseSessionDto, localVarRequestOptions, configuration)
41391
+
41392
+ return {
41393
+ url: toPathString(localVarUrlObj),
41394
+ options: localVarRequestOptions,
41395
+ };
41396
+ },
40988
41397
  /**
40989
41398
  * Refunds a Viva card payment at the gateway by its sessionId, optionally a partial `amount` (item / cluster refund). Validates the remaining refundable balance and supports multiple partial refunds. Does NOT write a reversal paymentEvent to the order — order-side accounting is handled by the refund plan. For a full reversal that writes the order paymentEvent, use /revert.
40990
41399
  * @summary Refund a settled Viva payment session (gateway only)
@@ -41009,6 +41418,78 @@ export const PaymentSessionApiAxiosParamCreator = function (configuration?: Conf
41009
41418
 
41010
41419
 
41011
41420
 
41421
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41422
+
41423
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41424
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41425
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41426
+ localVarRequestOptions.data = serializeDataIfNeeded(reverseSessionDto, localVarRequestOptions, configuration)
41427
+
41428
+ return {
41429
+ url: toPathString(localVarUrlObj),
41430
+ options: localVarRequestOptions,
41431
+ };
41432
+ },
41433
+ /**
41434
+ * Starts a terminal-present ReturnOfGoods on the station\'s Worldline terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
41435
+ * @summary Refund a settled Worldline payment session (gateway only, async)
41436
+ * @param {ReverseSessionDto} reverseSessionDto
41437
+ * @param {*} [options] Override http request option.
41438
+ * @throws {RequiredError}
41439
+ */
41440
+ refundWorldlineSession: async (reverseSessionDto: ReverseSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41441
+ // verify required parameter 'reverseSessionDto' is not null or undefined
41442
+ assertParamExists('refundWorldlineSession', 'reverseSessionDto', reverseSessionDto)
41443
+ const localVarPath = `/api/v1/payment-session/worldline/refund`;
41444
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41445
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41446
+ let baseOptions;
41447
+ if (configuration) {
41448
+ baseOptions = configuration.baseOptions;
41449
+ }
41450
+
41451
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41452
+ const localVarHeaderParameter = {} as any;
41453
+ const localVarQueryParameter = {} as any;
41454
+
41455
+
41456
+
41457
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41458
+
41459
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41460
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41461
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41462
+ localVarRequestOptions.data = serializeDataIfNeeded(reverseSessionDto, localVarRequestOptions, configuration)
41463
+
41464
+ return {
41465
+ url: toPathString(localVarUrlObj),
41466
+ options: localVarRequestOptions,
41467
+ };
41468
+ },
41469
+ /**
41470
+ * Starts a terminal-present ReturnOfGoods for the full remaining amount AND writes a reversal paymentEvent to the order once the refund settles (via reconciliation). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED.
41471
+ * @summary Revert (fully reverse) a settled Nets payment session (async)
41472
+ * @param {ReverseSessionDto} reverseSessionDto
41473
+ * @param {*} [options] Override http request option.
41474
+ * @throws {RequiredError}
41475
+ */
41476
+ revertNetsSession: async (reverseSessionDto: ReverseSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41477
+ // verify required parameter 'reverseSessionDto' is not null or undefined
41478
+ assertParamExists('revertNetsSession', 'reverseSessionDto', reverseSessionDto)
41479
+ const localVarPath = `/api/v1/payment-session/nets/revert`;
41480
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41481
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41482
+ let baseOptions;
41483
+ if (configuration) {
41484
+ baseOptions = configuration.baseOptions;
41485
+ }
41486
+
41487
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41488
+ const localVarHeaderParameter = {} as any;
41489
+ const localVarQueryParameter = {} as any;
41490
+
41491
+
41492
+
41012
41493
  localVarHeaderParameter['Content-Type'] = 'application/json';
41013
41494
 
41014
41495
  setSearchParams(localVarUrlObj, localVarQueryParameter);
@@ -41045,6 +41526,42 @@ export const PaymentSessionApiAxiosParamCreator = function (configuration?: Conf
41045
41526
 
41046
41527
 
41047
41528
 
41529
+ localVarHeaderParameter['Content-Type'] = 'application/json';
41530
+
41531
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
41532
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
41533
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
41534
+ localVarRequestOptions.data = serializeDataIfNeeded(reverseSessionDto, localVarRequestOptions, configuration)
41535
+
41536
+ return {
41537
+ url: toPathString(localVarUrlObj),
41538
+ options: localVarRequestOptions,
41539
+ };
41540
+ },
41541
+ /**
41542
+ * Starts a terminal reversal for the full remaining amount AND writes a reversal paymentEvent to the order once the reversal settles (via reconciliation). Returns a PENDING refund session — poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. A reversal typically settles without a card tap; if the payment is already batched/settled the reversal fails and the client should fall back to /worldline/refund.
41543
+ * @summary Revert (fully reverse) a settled Worldline payment session (async)
41544
+ * @param {ReverseSessionDto} reverseSessionDto
41545
+ * @param {*} [options] Override http request option.
41546
+ * @throws {RequiredError}
41547
+ */
41548
+ revertWorldlineSession: async (reverseSessionDto: ReverseSessionDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
41549
+ // verify required parameter 'reverseSessionDto' is not null or undefined
41550
+ assertParamExists('revertWorldlineSession', 'reverseSessionDto', reverseSessionDto)
41551
+ const localVarPath = `/api/v1/payment-session/worldline/revert`;
41552
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
41553
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
41554
+ let baseOptions;
41555
+ if (configuration) {
41556
+ baseOptions = configuration.baseOptions;
41557
+ }
41558
+
41559
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
41560
+ const localVarHeaderParameter = {} as any;
41561
+ const localVarQueryParameter = {} as any;
41562
+
41563
+
41564
+
41048
41565
  localVarHeaderParameter['Content-Type'] = 'application/json';
41049
41566
 
41050
41567
  setSearchParams(localVarUrlObj, localVarQueryParameter);
@@ -41104,14 +41621,14 @@ export const PaymentSessionApiFp = function(configuration?: Configuration) {
41104
41621
  const localVarAxiosParamCreator = PaymentSessionApiAxiosParamCreator(configuration)
41105
41622
  return {
41106
41623
  /**
41107
- * Arms cancelRequestedAt + aborts the Viva terminal session. Does not flip status — the webhook/sweep resolves the real outcome, and a late success is auto-voided. Viva card only.
41108
- * @summary Cancel an in-flight Viva payment session
41624
+ * Arms cancelRequestedAt + aborts at the gateway (Viva session abort / Nets terminal cancelAction, dispatched on the session\'s provider). Does not flip status — the webhook/sweep resolves the real outcome; a late success parks at VOID_PENDING with a dev alert. Card sessions only.
41625
+ * @summary Cancel an in-flight card payment session (Viva or Nets)
41109
41626
  * @param {string} clientToken
41110
41627
  * @param {*} [options] Override http request option.
41111
41628
  * @throws {RequiredError}
41112
41629
  */
41113
- async cancelVivaSession(clientToken: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PaymentSessionViewDto>> {
41114
- const localVarAxiosArgs = await localVarAxiosParamCreator.cancelVivaSession(clientToken, options);
41630
+ async cancelSession(clientToken: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PaymentSessionViewDto>> {
41631
+ const localVarAxiosArgs = await localVarAxiosParamCreator.cancelSession(clientToken, options);
41115
41632
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41116
41633
  },
41117
41634
  /**
@@ -41125,6 +41642,18 @@ export const PaymentSessionApiFp = function(configuration?: Configuration) {
41125
41642
  const localVarAxiosArgs = await localVarAxiosParamCreator.getPaymentSession(clientToken, options);
41126
41643
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41127
41644
  },
41645
+ /**
41646
+ * Creates a PaymentSession row, pushes the transaction to the station\'s Nets terminal (async — the result arrives via the Nets webhook), returns a client-facing token to poll. Idempotent via X-Idempotency-Key header.
41647
+ * @summary Initiate a Nets terminal payment session
41648
+ * @param {InitiateNetsSessionDto} initiateNetsSessionDto
41649
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
41650
+ * @param {*} [options] Override http request option.
41651
+ * @throws {RequiredError}
41652
+ */
41653
+ async initiateNetsSession(initiateNetsSessionDto: InitiateNetsSessionDto, xIdempotencyKey?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<InitiateNetsSessionResponseDto>> {
41654
+ const localVarAxiosArgs = await localVarAxiosParamCreator.initiateNetsSession(initiateNetsSessionDto, xIdempotencyKey, options);
41655
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41656
+ },
41128
41657
  /**
41129
41658
  * Builds the Viva app-to-app launch params (same as the legacy viva/a2a/create-payment) and persists a PaymentSession keyed by the Viva clientTransactionId, so the webhook + reconciliation own the order mutation. Returns the launch params plus a clientToken to poll the session.
41130
41659
  * @summary Initiate a Viva app-to-app payment session
@@ -41148,6 +41677,18 @@ export const PaymentSessionApiFp = function(configuration?: Configuration) {
41148
41677
  const localVarAxiosArgs = await localVarAxiosParamCreator.initiateVivaSession(initiateVivaSessionDto, xIdempotencyKey, options);
41149
41678
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41150
41679
  },
41680
+ /**
41681
+ * Creates a PaymentSession row and pushes the transaction to the station\'s Worldline terminal via the Worldline microservice (async — the result arrives via the Worldline webhook). Returns a client-facing token to poll. The backend owns the order mutation (webhook → reconciliation), replacing the legacy FE-writes-from-Ably flow. Idempotent via X-Idempotency-Key header.
41682
+ * @summary Initiate a Worldline terminal payment session
41683
+ * @param {InitiateWorldlineSessionDto} initiateWorldlineSessionDto
41684
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
41685
+ * @param {*} [options] Override http request option.
41686
+ * @throws {RequiredError}
41687
+ */
41688
+ async initiateWorldlineSession(initiateWorldlineSessionDto: InitiateWorldlineSessionDto, xIdempotencyKey?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<InitiateWorldlineSessionResponseDto>> {
41689
+ const localVarAxiosArgs = await localVarAxiosParamCreator.initiateWorldlineSession(initiateWorldlineSessionDto, xIdempotencyKey, options);
41690
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41691
+ },
41151
41692
  /**
41152
41693
  * Called by a Cloud Task (not the client). Holds the request open and long-polls Viva by sessionId for up to ~45s. As soon as the transaction is terminal it updates the session status and, on success, triggers order reconciliation — guarded by a CAS claim (tryClose) so a late webhook never double-writes the paymentEvent — so the order closes even if the webhook never arrives.
41153
41694
  * @summary Internal: long-poll Viva for a stuck payment session (Cloud Task callback)
@@ -41159,6 +41700,17 @@ export const PaymentSessionApiFp = function(configuration?: Configuration) {
41159
41700
  const localVarAxiosArgs = await localVarAxiosParamCreator.pollVivaSession(pollVivaSessionDto, options);
41160
41701
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41161
41702
  },
41703
+ /**
41704
+ * Called by a Cloud Task (not the client). Polls the Worldline microservice by operationId for up to ~45s; as soon as the operation is terminal it finalizes the PaymentSession through the same sweep the webhook uses (CAS-guarded, so a webhook + poll never double-write). Ensures the session resolves even if the webhook is slow or never arrives.
41705
+ * @summary Internal: poll Worldline for a stuck payment session (Cloud Task callback)
41706
+ * @param {PollWorldlineSessionDto} pollWorldlineSessionDto
41707
+ * @param {*} [options] Override http request option.
41708
+ * @throws {RequiredError}
41709
+ */
41710
+ async pollWorldlineSession(pollWorldlineSessionDto: PollWorldlineSessionDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
41711
+ const localVarAxiosArgs = await localVarAxiosParamCreator.pollWorldlineSession(pollWorldlineSessionDto, options);
41712
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41713
+ },
41162
41714
  /**
41163
41715
  * Records a non-gateway payment (cash / voucher / CardManual / gift card / …) through PaymentSession so every device sees it. Card paymethods (Card/Debit/Credit/Edenred) use a gateway initiate. Resolves to SUCCESS immediately; reconciliation writes the paymentEvent.
41164
41716
  * @summary Record a manual payment session
@@ -41170,6 +41722,17 @@ export const PaymentSessionApiFp = function(configuration?: Configuration) {
41170
41722
  const localVarAxiosArgs = await localVarAxiosParamCreator.recordManualPayment(createManualSessionDto, options);
41171
41723
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41172
41724
  },
41725
+ /**
41726
+ * Starts a terminal-present ReturnOfGoods on the station\'s Nets terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session (status INITIATED) — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
41727
+ * @summary Refund a settled Nets payment session (gateway only, async)
41728
+ * @param {ReverseSessionDto} reverseSessionDto
41729
+ * @param {*} [options] Override http request option.
41730
+ * @throws {RequiredError}
41731
+ */
41732
+ async refundNetsSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PaymentSessionViewDto>> {
41733
+ const localVarAxiosArgs = await localVarAxiosParamCreator.refundNetsSession(reverseSessionDto, options);
41734
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41735
+ },
41173
41736
  /**
41174
41737
  * Refunds a Viva card payment at the gateway by its sessionId, optionally a partial `amount` (item / cluster refund). Validates the remaining refundable balance and supports multiple partial refunds. Does NOT write a reversal paymentEvent to the order — order-side accounting is handled by the refund plan. For a full reversal that writes the order paymentEvent, use /revert.
41175
41738
  * @summary Refund a settled Viva payment session (gateway only)
@@ -41181,6 +41744,28 @@ export const PaymentSessionApiFp = function(configuration?: Configuration) {
41181
41744
  const localVarAxiosArgs = await localVarAxiosParamCreator.refundVivaSession(reverseSessionDto, options);
41182
41745
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41183
41746
  },
41747
+ /**
41748
+ * Starts a terminal-present ReturnOfGoods on the station\'s Worldline terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
41749
+ * @summary Refund a settled Worldline payment session (gateway only, async)
41750
+ * @param {ReverseSessionDto} reverseSessionDto
41751
+ * @param {*} [options] Override http request option.
41752
+ * @throws {RequiredError}
41753
+ */
41754
+ async refundWorldlineSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PaymentSessionViewDto>> {
41755
+ const localVarAxiosArgs = await localVarAxiosParamCreator.refundWorldlineSession(reverseSessionDto, options);
41756
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41757
+ },
41758
+ /**
41759
+ * Starts a terminal-present ReturnOfGoods for the full remaining amount AND writes a reversal paymentEvent to the order once the refund settles (via reconciliation). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED.
41760
+ * @summary Revert (fully reverse) a settled Nets payment session (async)
41761
+ * @param {ReverseSessionDto} reverseSessionDto
41762
+ * @param {*} [options] Override http request option.
41763
+ * @throws {RequiredError}
41764
+ */
41765
+ async revertNetsSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<NetsRevertResponseDto>> {
41766
+ const localVarAxiosArgs = await localVarAxiosParamCreator.revertNetsSession(reverseSessionDto, options);
41767
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41768
+ },
41184
41769
  /**
41185
41770
  * Fully reverses a completed Viva card payment (SUCCESS / CLOSED) by its sessionId: refunds the full amount at the gateway AND writes a reversal paymentEvent to the order via the settlement engine. Idempotent: re-calling a reverted session is a no-op.
41186
41771
  * @summary Revert (fully reverse) a settled Viva payment session
@@ -41192,6 +41777,17 @@ export const PaymentSessionApiFp = function(configuration?: Configuration) {
41192
41777
  const localVarAxiosArgs = await localVarAxiosParamCreator.revertVivaSession(reverseSessionDto, options);
41193
41778
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41194
41779
  },
41780
+ /**
41781
+ * Starts a terminal reversal for the full remaining amount AND writes a reversal paymentEvent to the order once the reversal settles (via reconciliation). Returns a PENDING refund session — poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. A reversal typically settles without a card tap; if the payment is already batched/settled the reversal fails and the client should fall back to /worldline/refund.
41782
+ * @summary Revert (fully reverse) a settled Worldline payment session (async)
41783
+ * @param {ReverseSessionDto} reverseSessionDto
41784
+ * @param {*} [options] Override http request option.
41785
+ * @throws {RequiredError}
41786
+ */
41787
+ async revertWorldlineSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<WorldlineRevertResponseDto>> {
41788
+ const localVarAxiosArgs = await localVarAxiosParamCreator.revertWorldlineSession(reverseSessionDto, options);
41789
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
41790
+ },
41195
41791
  /**
41196
41792
  * Reverses a manually-recorded payment (cash / voucher / CardManual / gift card / …) by its sessionId (the order paymentEvent referenceId). Not for card paymethods (Card/Debit/Credit/Edenred) — those use cancel/refund. Idempotent: re-calling a voided session is a no-op.
41197
41793
  * @summary Void a manual payment session
@@ -41214,14 +41810,14 @@ export const PaymentSessionApiFactory = function (configuration?: Configuration,
41214
41810
  const localVarFp = PaymentSessionApiFp(configuration)
41215
41811
  return {
41216
41812
  /**
41217
- * Arms cancelRequestedAt + aborts the Viva terminal session. Does not flip status — the webhook/sweep resolves the real outcome, and a late success is auto-voided. Viva card only.
41218
- * @summary Cancel an in-flight Viva payment session
41813
+ * Arms cancelRequestedAt + aborts at the gateway (Viva session abort / Nets terminal cancelAction, dispatched on the session\'s provider). Does not flip status — the webhook/sweep resolves the real outcome; a late success parks at VOID_PENDING with a dev alert. Card sessions only.
41814
+ * @summary Cancel an in-flight card payment session (Viva or Nets)
41219
41815
  * @param {string} clientToken
41220
41816
  * @param {*} [options] Override http request option.
41221
41817
  * @throws {RequiredError}
41222
41818
  */
41223
- cancelVivaSession(clientToken: string, options?: any): AxiosPromise<PaymentSessionViewDto> {
41224
- return localVarFp.cancelVivaSession(clientToken, options).then((request) => request(axios, basePath));
41819
+ cancelSession(clientToken: string, options?: any): AxiosPromise<PaymentSessionViewDto> {
41820
+ return localVarFp.cancelSession(clientToken, options).then((request) => request(axios, basePath));
41225
41821
  },
41226
41822
  /**
41227
41823
  * Reads PaymentSession from Postgres. Use this to poll session lifecycle without hitting the Viva API.
@@ -41233,6 +41829,17 @@ export const PaymentSessionApiFactory = function (configuration?: Configuration,
41233
41829
  getPaymentSession(clientToken: string, options?: any): AxiosPromise<PaymentSessionViewDto> {
41234
41830
  return localVarFp.getPaymentSession(clientToken, options).then((request) => request(axios, basePath));
41235
41831
  },
41832
+ /**
41833
+ * Creates a PaymentSession row, pushes the transaction to the station\'s Nets terminal (async — the result arrives via the Nets webhook), returns a client-facing token to poll. Idempotent via X-Idempotency-Key header.
41834
+ * @summary Initiate a Nets terminal payment session
41835
+ * @param {InitiateNetsSessionDto} initiateNetsSessionDto
41836
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
41837
+ * @param {*} [options] Override http request option.
41838
+ * @throws {RequiredError}
41839
+ */
41840
+ initiateNetsSession(initiateNetsSessionDto: InitiateNetsSessionDto, xIdempotencyKey?: string, options?: any): AxiosPromise<InitiateNetsSessionResponseDto> {
41841
+ return localVarFp.initiateNetsSession(initiateNetsSessionDto, xIdempotencyKey, options).then((request) => request(axios, basePath));
41842
+ },
41236
41843
  /**
41237
41844
  * Builds the Viva app-to-app launch params (same as the legacy viva/a2a/create-payment) and persists a PaymentSession keyed by the Viva clientTransactionId, so the webhook + reconciliation own the order mutation. Returns the launch params plus a clientToken to poll the session.
41238
41845
  * @summary Initiate a Viva app-to-app payment session
@@ -41254,6 +41861,17 @@ export const PaymentSessionApiFactory = function (configuration?: Configuration,
41254
41861
  initiateVivaSession(initiateVivaSessionDto: InitiateVivaSessionDto, xIdempotencyKey?: string, options?: any): AxiosPromise<InitiateVivaSessionResponseDto> {
41255
41862
  return localVarFp.initiateVivaSession(initiateVivaSessionDto, xIdempotencyKey, options).then((request) => request(axios, basePath));
41256
41863
  },
41864
+ /**
41865
+ * Creates a PaymentSession row and pushes the transaction to the station\'s Worldline terminal via the Worldline microservice (async — the result arrives via the Worldline webhook). Returns a client-facing token to poll. The backend owns the order mutation (webhook → reconciliation), replacing the legacy FE-writes-from-Ably flow. Idempotent via X-Idempotency-Key header.
41866
+ * @summary Initiate a Worldline terminal payment session
41867
+ * @param {InitiateWorldlineSessionDto} initiateWorldlineSessionDto
41868
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
41869
+ * @param {*} [options] Override http request option.
41870
+ * @throws {RequiredError}
41871
+ */
41872
+ initiateWorldlineSession(initiateWorldlineSessionDto: InitiateWorldlineSessionDto, xIdempotencyKey?: string, options?: any): AxiosPromise<InitiateWorldlineSessionResponseDto> {
41873
+ return localVarFp.initiateWorldlineSession(initiateWorldlineSessionDto, xIdempotencyKey, options).then((request) => request(axios, basePath));
41874
+ },
41257
41875
  /**
41258
41876
  * Called by a Cloud Task (not the client). Holds the request open and long-polls Viva by sessionId for up to ~45s. As soon as the transaction is terminal it updates the session status and, on success, triggers order reconciliation — guarded by a CAS claim (tryClose) so a late webhook never double-writes the paymentEvent — so the order closes even if the webhook never arrives.
41259
41877
  * @summary Internal: long-poll Viva for a stuck payment session (Cloud Task callback)
@@ -41264,6 +41882,16 @@ export const PaymentSessionApiFactory = function (configuration?: Configuration,
41264
41882
  pollVivaSession(pollVivaSessionDto: PollVivaSessionDto, options?: any): AxiosPromise<void> {
41265
41883
  return localVarFp.pollVivaSession(pollVivaSessionDto, options).then((request) => request(axios, basePath));
41266
41884
  },
41885
+ /**
41886
+ * Called by a Cloud Task (not the client). Polls the Worldline microservice by operationId for up to ~45s; as soon as the operation is terminal it finalizes the PaymentSession through the same sweep the webhook uses (CAS-guarded, so a webhook + poll never double-write). Ensures the session resolves even if the webhook is slow or never arrives.
41887
+ * @summary Internal: poll Worldline for a stuck payment session (Cloud Task callback)
41888
+ * @param {PollWorldlineSessionDto} pollWorldlineSessionDto
41889
+ * @param {*} [options] Override http request option.
41890
+ * @throws {RequiredError}
41891
+ */
41892
+ pollWorldlineSession(pollWorldlineSessionDto: PollWorldlineSessionDto, options?: any): AxiosPromise<void> {
41893
+ return localVarFp.pollWorldlineSession(pollWorldlineSessionDto, options).then((request) => request(axios, basePath));
41894
+ },
41267
41895
  /**
41268
41896
  * Records a non-gateway payment (cash / voucher / CardManual / gift card / …) through PaymentSession so every device sees it. Card paymethods (Card/Debit/Credit/Edenred) use a gateway initiate. Resolves to SUCCESS immediately; reconciliation writes the paymentEvent.
41269
41897
  * @summary Record a manual payment session
@@ -41274,6 +41902,16 @@ export const PaymentSessionApiFactory = function (configuration?: Configuration,
41274
41902
  recordManualPayment(createManualSessionDto: CreateManualSessionDto, options?: any): AxiosPromise<RecordManualPaymentResultDto> {
41275
41903
  return localVarFp.recordManualPayment(createManualSessionDto, options).then((request) => request(axios, basePath));
41276
41904
  },
41905
+ /**
41906
+ * Starts a terminal-present ReturnOfGoods on the station\'s Nets terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session (status INITIATED) — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
41907
+ * @summary Refund a settled Nets payment session (gateway only, async)
41908
+ * @param {ReverseSessionDto} reverseSessionDto
41909
+ * @param {*} [options] Override http request option.
41910
+ * @throws {RequiredError}
41911
+ */
41912
+ refundNetsSession(reverseSessionDto: ReverseSessionDto, options?: any): AxiosPromise<PaymentSessionViewDto> {
41913
+ return localVarFp.refundNetsSession(reverseSessionDto, options).then((request) => request(axios, basePath));
41914
+ },
41277
41915
  /**
41278
41916
  * Refunds a Viva card payment at the gateway by its sessionId, optionally a partial `amount` (item / cluster refund). Validates the remaining refundable balance and supports multiple partial refunds. Does NOT write a reversal paymentEvent to the order — order-side accounting is handled by the refund plan. For a full reversal that writes the order paymentEvent, use /revert.
41279
41917
  * @summary Refund a settled Viva payment session (gateway only)
@@ -41284,6 +41922,26 @@ export const PaymentSessionApiFactory = function (configuration?: Configuration,
41284
41922
  refundVivaSession(reverseSessionDto: ReverseSessionDto, options?: any): AxiosPromise<PaymentSessionViewDto> {
41285
41923
  return localVarFp.refundVivaSession(reverseSessionDto, options).then((request) => request(axios, basePath));
41286
41924
  },
41925
+ /**
41926
+ * Starts a terminal-present ReturnOfGoods on the station\'s Worldline terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
41927
+ * @summary Refund a settled Worldline payment session (gateway only, async)
41928
+ * @param {ReverseSessionDto} reverseSessionDto
41929
+ * @param {*} [options] Override http request option.
41930
+ * @throws {RequiredError}
41931
+ */
41932
+ refundWorldlineSession(reverseSessionDto: ReverseSessionDto, options?: any): AxiosPromise<PaymentSessionViewDto> {
41933
+ return localVarFp.refundWorldlineSession(reverseSessionDto, options).then((request) => request(axios, basePath));
41934
+ },
41935
+ /**
41936
+ * Starts a terminal-present ReturnOfGoods for the full remaining amount AND writes a reversal paymentEvent to the order once the refund settles (via reconciliation). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED.
41937
+ * @summary Revert (fully reverse) a settled Nets payment session (async)
41938
+ * @param {ReverseSessionDto} reverseSessionDto
41939
+ * @param {*} [options] Override http request option.
41940
+ * @throws {RequiredError}
41941
+ */
41942
+ revertNetsSession(reverseSessionDto: ReverseSessionDto, options?: any): AxiosPromise<NetsRevertResponseDto> {
41943
+ return localVarFp.revertNetsSession(reverseSessionDto, options).then((request) => request(axios, basePath));
41944
+ },
41287
41945
  /**
41288
41946
  * Fully reverses a completed Viva card payment (SUCCESS / CLOSED) by its sessionId: refunds the full amount at the gateway AND writes a reversal paymentEvent to the order via the settlement engine. Idempotent: re-calling a reverted session is a no-op.
41289
41947
  * @summary Revert (fully reverse) a settled Viva payment session
@@ -41294,6 +41952,16 @@ export const PaymentSessionApiFactory = function (configuration?: Configuration,
41294
41952
  revertVivaSession(reverseSessionDto: ReverseSessionDto, options?: any): AxiosPromise<PaymentSessionViewDto> {
41295
41953
  return localVarFp.revertVivaSession(reverseSessionDto, options).then((request) => request(axios, basePath));
41296
41954
  },
41955
+ /**
41956
+ * Starts a terminal reversal for the full remaining amount AND writes a reversal paymentEvent to the order once the reversal settles (via reconciliation). Returns a PENDING refund session — poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. A reversal typically settles without a card tap; if the payment is already batched/settled the reversal fails and the client should fall back to /worldline/refund.
41957
+ * @summary Revert (fully reverse) a settled Worldline payment session (async)
41958
+ * @param {ReverseSessionDto} reverseSessionDto
41959
+ * @param {*} [options] Override http request option.
41960
+ * @throws {RequiredError}
41961
+ */
41962
+ revertWorldlineSession(reverseSessionDto: ReverseSessionDto, options?: any): AxiosPromise<WorldlineRevertResponseDto> {
41963
+ return localVarFp.revertWorldlineSession(reverseSessionDto, options).then((request) => request(axios, basePath));
41964
+ },
41297
41965
  /**
41298
41966
  * Reverses a manually-recorded payment (cash / voucher / CardManual / gift card / …) by its sessionId (the order paymentEvent referenceId). Not for card paymethods (Card/Debit/Credit/Edenred) — those use cancel/refund. Idempotent: re-calling a voided session is a no-op.
41299
41967
  * @summary Void a manual payment session
@@ -41314,14 +41982,14 @@ export const PaymentSessionApiFactory = function (configuration?: Configuration,
41314
41982
  */
41315
41983
  export interface PaymentSessionApiInterface {
41316
41984
  /**
41317
- * Arms cancelRequestedAt + aborts the Viva terminal session. Does not flip status — the webhook/sweep resolves the real outcome, and a late success is auto-voided. Viva card only.
41318
- * @summary Cancel an in-flight Viva payment session
41985
+ * Arms cancelRequestedAt + aborts at the gateway (Viva session abort / Nets terminal cancelAction, dispatched on the session\'s provider). Does not flip status — the webhook/sweep resolves the real outcome; a late success parks at VOID_PENDING with a dev alert. Card sessions only.
41986
+ * @summary Cancel an in-flight card payment session (Viva or Nets)
41319
41987
  * @param {string} clientToken
41320
41988
  * @param {*} [options] Override http request option.
41321
41989
  * @throws {RequiredError}
41322
41990
  * @memberof PaymentSessionApiInterface
41323
41991
  */
41324
- cancelVivaSession(clientToken: string, options?: AxiosRequestConfig): AxiosPromise<PaymentSessionViewDto>;
41992
+ cancelSession(clientToken: string, options?: AxiosRequestConfig): AxiosPromise<PaymentSessionViewDto>;
41325
41993
 
41326
41994
  /**
41327
41995
  * Reads PaymentSession from Postgres. Use this to poll session lifecycle without hitting the Viva API.
@@ -41333,6 +42001,17 @@ export interface PaymentSessionApiInterface {
41333
42001
  */
41334
42002
  getPaymentSession(clientToken: string, options?: AxiosRequestConfig): AxiosPromise<PaymentSessionViewDto>;
41335
42003
 
42004
+ /**
42005
+ * Creates a PaymentSession row, pushes the transaction to the station\'s Nets terminal (async — the result arrives via the Nets webhook), returns a client-facing token to poll. Idempotent via X-Idempotency-Key header.
42006
+ * @summary Initiate a Nets terminal payment session
42007
+ * @param {InitiateNetsSessionDto} initiateNetsSessionDto
42008
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
42009
+ * @param {*} [options] Override http request option.
42010
+ * @throws {RequiredError}
42011
+ * @memberof PaymentSessionApiInterface
42012
+ */
42013
+ initiateNetsSession(initiateNetsSessionDto: InitiateNetsSessionDto, xIdempotencyKey?: string, options?: AxiosRequestConfig): AxiosPromise<InitiateNetsSessionResponseDto>;
42014
+
41336
42015
  /**
41337
42016
  * Builds the Viva app-to-app launch params (same as the legacy viva/a2a/create-payment) and persists a PaymentSession keyed by the Viva clientTransactionId, so the webhook + reconciliation own the order mutation. Returns the launch params plus a clientToken to poll the session.
41338
42017
  * @summary Initiate a Viva app-to-app payment session
@@ -41354,6 +42033,17 @@ export interface PaymentSessionApiInterface {
41354
42033
  */
41355
42034
  initiateVivaSession(initiateVivaSessionDto: InitiateVivaSessionDto, xIdempotencyKey?: string, options?: AxiosRequestConfig): AxiosPromise<InitiateVivaSessionResponseDto>;
41356
42035
 
42036
+ /**
42037
+ * Creates a PaymentSession row and pushes the transaction to the station\'s Worldline terminal via the Worldline microservice (async — the result arrives via the Worldline webhook). Returns a client-facing token to poll. The backend owns the order mutation (webhook → reconciliation), replacing the legacy FE-writes-from-Ably flow. Idempotent via X-Idempotency-Key header.
42038
+ * @summary Initiate a Worldline terminal payment session
42039
+ * @param {InitiateWorldlineSessionDto} initiateWorldlineSessionDto
42040
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
42041
+ * @param {*} [options] Override http request option.
42042
+ * @throws {RequiredError}
42043
+ * @memberof PaymentSessionApiInterface
42044
+ */
42045
+ initiateWorldlineSession(initiateWorldlineSessionDto: InitiateWorldlineSessionDto, xIdempotencyKey?: string, options?: AxiosRequestConfig): AxiosPromise<InitiateWorldlineSessionResponseDto>;
42046
+
41357
42047
  /**
41358
42048
  * Called by a Cloud Task (not the client). Holds the request open and long-polls Viva by sessionId for up to ~45s. As soon as the transaction is terminal it updates the session status and, on success, triggers order reconciliation — guarded by a CAS claim (tryClose) so a late webhook never double-writes the paymentEvent — so the order closes even if the webhook never arrives.
41359
42049
  * @summary Internal: long-poll Viva for a stuck payment session (Cloud Task callback)
@@ -41364,6 +42054,16 @@ export interface PaymentSessionApiInterface {
41364
42054
  */
41365
42055
  pollVivaSession(pollVivaSessionDto: PollVivaSessionDto, options?: AxiosRequestConfig): AxiosPromise<void>;
41366
42056
 
42057
+ /**
42058
+ * Called by a Cloud Task (not the client). Polls the Worldline microservice by operationId for up to ~45s; as soon as the operation is terminal it finalizes the PaymentSession through the same sweep the webhook uses (CAS-guarded, so a webhook + poll never double-write). Ensures the session resolves even if the webhook is slow or never arrives.
42059
+ * @summary Internal: poll Worldline for a stuck payment session (Cloud Task callback)
42060
+ * @param {PollWorldlineSessionDto} pollWorldlineSessionDto
42061
+ * @param {*} [options] Override http request option.
42062
+ * @throws {RequiredError}
42063
+ * @memberof PaymentSessionApiInterface
42064
+ */
42065
+ pollWorldlineSession(pollWorldlineSessionDto: PollWorldlineSessionDto, options?: AxiosRequestConfig): AxiosPromise<void>;
42066
+
41367
42067
  /**
41368
42068
  * Records a non-gateway payment (cash / voucher / CardManual / gift card / …) through PaymentSession so every device sees it. Card paymethods (Card/Debit/Credit/Edenred) use a gateway initiate. Resolves to SUCCESS immediately; reconciliation writes the paymentEvent.
41369
42069
  * @summary Record a manual payment session
@@ -41374,6 +42074,16 @@ export interface PaymentSessionApiInterface {
41374
42074
  */
41375
42075
  recordManualPayment(createManualSessionDto: CreateManualSessionDto, options?: AxiosRequestConfig): AxiosPromise<RecordManualPaymentResultDto>;
41376
42076
 
42077
+ /**
42078
+ * Starts a terminal-present ReturnOfGoods on the station\'s Nets terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session (status INITIATED) — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
42079
+ * @summary Refund a settled Nets payment session (gateway only, async)
42080
+ * @param {ReverseSessionDto} reverseSessionDto
42081
+ * @param {*} [options] Override http request option.
42082
+ * @throws {RequiredError}
42083
+ * @memberof PaymentSessionApiInterface
42084
+ */
42085
+ refundNetsSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): AxiosPromise<PaymentSessionViewDto>;
42086
+
41377
42087
  /**
41378
42088
  * Refunds a Viva card payment at the gateway by its sessionId, optionally a partial `amount` (item / cluster refund). Validates the remaining refundable balance and supports multiple partial refunds. Does NOT write a reversal paymentEvent to the order — order-side accounting is handled by the refund plan. For a full reversal that writes the order paymentEvent, use /revert.
41379
42089
  * @summary Refund a settled Viva payment session (gateway only)
@@ -41384,6 +42094,26 @@ export interface PaymentSessionApiInterface {
41384
42094
  */
41385
42095
  refundVivaSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): AxiosPromise<PaymentSessionViewDto>;
41386
42096
 
42097
+ /**
42098
+ * Starts a terminal-present ReturnOfGoods on the station\'s Worldline terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
42099
+ * @summary Refund a settled Worldline payment session (gateway only, async)
42100
+ * @param {ReverseSessionDto} reverseSessionDto
42101
+ * @param {*} [options] Override http request option.
42102
+ * @throws {RequiredError}
42103
+ * @memberof PaymentSessionApiInterface
42104
+ */
42105
+ refundWorldlineSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): AxiosPromise<PaymentSessionViewDto>;
42106
+
42107
+ /**
42108
+ * Starts a terminal-present ReturnOfGoods for the full remaining amount AND writes a reversal paymentEvent to the order once the refund settles (via reconciliation). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED.
42109
+ * @summary Revert (fully reverse) a settled Nets payment session (async)
42110
+ * @param {ReverseSessionDto} reverseSessionDto
42111
+ * @param {*} [options] Override http request option.
42112
+ * @throws {RequiredError}
42113
+ * @memberof PaymentSessionApiInterface
42114
+ */
42115
+ revertNetsSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): AxiosPromise<NetsRevertResponseDto>;
42116
+
41387
42117
  /**
41388
42118
  * Fully reverses a completed Viva card payment (SUCCESS / CLOSED) by its sessionId: refunds the full amount at the gateway AND writes a reversal paymentEvent to the order via the settlement engine. Idempotent: re-calling a reverted session is a no-op.
41389
42119
  * @summary Revert (fully reverse) a settled Viva payment session
@@ -41394,6 +42124,16 @@ export interface PaymentSessionApiInterface {
41394
42124
  */
41395
42125
  revertVivaSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): AxiosPromise<PaymentSessionViewDto>;
41396
42126
 
42127
+ /**
42128
+ * Starts a terminal reversal for the full remaining amount AND writes a reversal paymentEvent to the order once the reversal settles (via reconciliation). Returns a PENDING refund session — poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. A reversal typically settles without a card tap; if the payment is already batched/settled the reversal fails and the client should fall back to /worldline/refund.
42129
+ * @summary Revert (fully reverse) a settled Worldline payment session (async)
42130
+ * @param {ReverseSessionDto} reverseSessionDto
42131
+ * @param {*} [options] Override http request option.
42132
+ * @throws {RequiredError}
42133
+ * @memberof PaymentSessionApiInterface
42134
+ */
42135
+ revertWorldlineSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig): AxiosPromise<WorldlineRevertResponseDto>;
42136
+
41397
42137
  /**
41398
42138
  * Reverses a manually-recorded payment (cash / voucher / CardManual / gift card / …) by its sessionId (the order paymentEvent referenceId). Not for card paymethods (Card/Debit/Credit/Edenred) — those use cancel/refund. Idempotent: re-calling a voided session is a no-op.
41399
42139
  * @summary Void a manual payment session
@@ -41414,15 +42154,15 @@ export interface PaymentSessionApiInterface {
41414
42154
  */
41415
42155
  export class PaymentSessionApi extends BaseAPI implements PaymentSessionApiInterface {
41416
42156
  /**
41417
- * Arms cancelRequestedAt + aborts the Viva terminal session. Does not flip status — the webhook/sweep resolves the real outcome, and a late success is auto-voided. Viva card only.
41418
- * @summary Cancel an in-flight Viva payment session
42157
+ * Arms cancelRequestedAt + aborts at the gateway (Viva session abort / Nets terminal cancelAction, dispatched on the session\'s provider). Does not flip status — the webhook/sweep resolves the real outcome; a late success parks at VOID_PENDING with a dev alert. Card sessions only.
42158
+ * @summary Cancel an in-flight card payment session (Viva or Nets)
41419
42159
  * @param {string} clientToken
41420
42160
  * @param {*} [options] Override http request option.
41421
42161
  * @throws {RequiredError}
41422
42162
  * @memberof PaymentSessionApi
41423
42163
  */
41424
- public cancelVivaSession(clientToken: string, options?: AxiosRequestConfig) {
41425
- return PaymentSessionApiFp(this.configuration).cancelVivaSession(clientToken, options).then((request) => request(this.axios, this.basePath));
42164
+ public cancelSession(clientToken: string, options?: AxiosRequestConfig) {
42165
+ return PaymentSessionApiFp(this.configuration).cancelSession(clientToken, options).then((request) => request(this.axios, this.basePath));
41426
42166
  }
41427
42167
 
41428
42168
  /**
@@ -41437,6 +42177,19 @@ export class PaymentSessionApi extends BaseAPI implements PaymentSessionApiInter
41437
42177
  return PaymentSessionApiFp(this.configuration).getPaymentSession(clientToken, options).then((request) => request(this.axios, this.basePath));
41438
42178
  }
41439
42179
 
42180
+ /**
42181
+ * Creates a PaymentSession row, pushes the transaction to the station\'s Nets terminal (async — the result arrives via the Nets webhook), returns a client-facing token to poll. Idempotent via X-Idempotency-Key header.
42182
+ * @summary Initiate a Nets terminal payment session
42183
+ * @param {InitiateNetsSessionDto} initiateNetsSessionDto
42184
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
42185
+ * @param {*} [options] Override http request option.
42186
+ * @throws {RequiredError}
42187
+ * @memberof PaymentSessionApi
42188
+ */
42189
+ public initiateNetsSession(initiateNetsSessionDto: InitiateNetsSessionDto, xIdempotencyKey?: string, options?: AxiosRequestConfig) {
42190
+ return PaymentSessionApiFp(this.configuration).initiateNetsSession(initiateNetsSessionDto, xIdempotencyKey, options).then((request) => request(this.axios, this.basePath));
42191
+ }
42192
+
41440
42193
  /**
41441
42194
  * Builds the Viva app-to-app launch params (same as the legacy viva/a2a/create-payment) and persists a PaymentSession keyed by the Viva clientTransactionId, so the webhook + reconciliation own the order mutation. Returns the launch params plus a clientToken to poll the session.
41442
42195
  * @summary Initiate a Viva app-to-app payment session
@@ -41462,6 +42215,19 @@ export class PaymentSessionApi extends BaseAPI implements PaymentSessionApiInter
41462
42215
  return PaymentSessionApiFp(this.configuration).initiateVivaSession(initiateVivaSessionDto, xIdempotencyKey, options).then((request) => request(this.axios, this.basePath));
41463
42216
  }
41464
42217
 
42218
+ /**
42219
+ * Creates a PaymentSession row and pushes the transaction to the station\'s Worldline terminal via the Worldline microservice (async — the result arrives via the Worldline webhook). Returns a client-facing token to poll. The backend owns the order mutation (webhook → reconciliation), replacing the legacy FE-writes-from-Ably flow. Idempotent via X-Idempotency-Key header.
42220
+ * @summary Initiate a Worldline terminal payment session
42221
+ * @param {InitiateWorldlineSessionDto} initiateWorldlineSessionDto
42222
+ * @param {string} [xIdempotencyKey] Client-generated UUID. If a session already exists for this key, the existing session is returned.
42223
+ * @param {*} [options] Override http request option.
42224
+ * @throws {RequiredError}
42225
+ * @memberof PaymentSessionApi
42226
+ */
42227
+ public initiateWorldlineSession(initiateWorldlineSessionDto: InitiateWorldlineSessionDto, xIdempotencyKey?: string, options?: AxiosRequestConfig) {
42228
+ return PaymentSessionApiFp(this.configuration).initiateWorldlineSession(initiateWorldlineSessionDto, xIdempotencyKey, options).then((request) => request(this.axios, this.basePath));
42229
+ }
42230
+
41465
42231
  /**
41466
42232
  * Called by a Cloud Task (not the client). Holds the request open and long-polls Viva by sessionId for up to ~45s. As soon as the transaction is terminal it updates the session status and, on success, triggers order reconciliation — guarded by a CAS claim (tryClose) so a late webhook never double-writes the paymentEvent — so the order closes even if the webhook never arrives.
41467
42233
  * @summary Internal: long-poll Viva for a stuck payment session (Cloud Task callback)
@@ -41474,6 +42240,18 @@ export class PaymentSessionApi extends BaseAPI implements PaymentSessionApiInter
41474
42240
  return PaymentSessionApiFp(this.configuration).pollVivaSession(pollVivaSessionDto, options).then((request) => request(this.axios, this.basePath));
41475
42241
  }
41476
42242
 
42243
+ /**
42244
+ * Called by a Cloud Task (not the client). Polls the Worldline microservice by operationId for up to ~45s; as soon as the operation is terminal it finalizes the PaymentSession through the same sweep the webhook uses (CAS-guarded, so a webhook + poll never double-write). Ensures the session resolves even if the webhook is slow or never arrives.
42245
+ * @summary Internal: poll Worldline for a stuck payment session (Cloud Task callback)
42246
+ * @param {PollWorldlineSessionDto} pollWorldlineSessionDto
42247
+ * @param {*} [options] Override http request option.
42248
+ * @throws {RequiredError}
42249
+ * @memberof PaymentSessionApi
42250
+ */
42251
+ public pollWorldlineSession(pollWorldlineSessionDto: PollWorldlineSessionDto, options?: AxiosRequestConfig) {
42252
+ return PaymentSessionApiFp(this.configuration).pollWorldlineSession(pollWorldlineSessionDto, options).then((request) => request(this.axios, this.basePath));
42253
+ }
42254
+
41477
42255
  /**
41478
42256
  * Records a non-gateway payment (cash / voucher / CardManual / gift card / …) through PaymentSession so every device sees it. Card paymethods (Card/Debit/Credit/Edenred) use a gateway initiate. Resolves to SUCCESS immediately; reconciliation writes the paymentEvent.
41479
42257
  * @summary Record a manual payment session
@@ -41486,6 +42264,18 @@ export class PaymentSessionApi extends BaseAPI implements PaymentSessionApiInter
41486
42264
  return PaymentSessionApiFp(this.configuration).recordManualPayment(createManualSessionDto, options).then((request) => request(this.axios, this.basePath));
41487
42265
  }
41488
42266
 
42267
+ /**
42268
+ * Starts a terminal-present ReturnOfGoods on the station\'s Nets terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session (status INITIATED) — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
42269
+ * @summary Refund a settled Nets payment session (gateway only, async)
42270
+ * @param {ReverseSessionDto} reverseSessionDto
42271
+ * @param {*} [options] Override http request option.
42272
+ * @throws {RequiredError}
42273
+ * @memberof PaymentSessionApi
42274
+ */
42275
+ public refundNetsSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig) {
42276
+ return PaymentSessionApiFp(this.configuration).refundNetsSession(reverseSessionDto, options).then((request) => request(this.axios, this.basePath));
42277
+ }
42278
+
41489
42279
  /**
41490
42280
  * Refunds a Viva card payment at the gateway by its sessionId, optionally a partial `amount` (item / cluster refund). Validates the remaining refundable balance and supports multiple partial refunds. Does NOT write a reversal paymentEvent to the order — order-side accounting is handled by the refund plan. For a full reversal that writes the order paymentEvent, use /revert.
41491
42281
  * @summary Refund a settled Viva payment session (gateway only)
@@ -41498,6 +42288,30 @@ export class PaymentSessionApi extends BaseAPI implements PaymentSessionApiInter
41498
42288
  return PaymentSessionApiFp(this.configuration).refundVivaSession(reverseSessionDto, options).then((request) => request(this.axios, this.basePath));
41499
42289
  }
41500
42290
 
42291
+ /**
42292
+ * Starts a terminal-present ReturnOfGoods on the station\'s Worldline terminal for the given sessionId, refunding the payload `amount` (defaults to the full session amount). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. Does NOT write a reversal paymentEvent to the order.
42293
+ * @summary Refund a settled Worldline payment session (gateway only, async)
42294
+ * @param {ReverseSessionDto} reverseSessionDto
42295
+ * @param {*} [options] Override http request option.
42296
+ * @throws {RequiredError}
42297
+ * @memberof PaymentSessionApi
42298
+ */
42299
+ public refundWorldlineSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig) {
42300
+ return PaymentSessionApiFp(this.configuration).refundWorldlineSession(reverseSessionDto, options).then((request) => request(this.axios, this.basePath));
42301
+ }
42302
+
42303
+ /**
42304
+ * Starts a terminal-present ReturnOfGoods for the full remaining amount AND writes a reversal paymentEvent to the order once the refund settles (via reconciliation). Returns a PENDING refund session — the customer must tap their card; poll GET /:clientToken until REFUNDED/FAILED/CANCELLED.
42305
+ * @summary Revert (fully reverse) a settled Nets payment session (async)
42306
+ * @param {ReverseSessionDto} reverseSessionDto
42307
+ * @param {*} [options] Override http request option.
42308
+ * @throws {RequiredError}
42309
+ * @memberof PaymentSessionApi
42310
+ */
42311
+ public revertNetsSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig) {
42312
+ return PaymentSessionApiFp(this.configuration).revertNetsSession(reverseSessionDto, options).then((request) => request(this.axios, this.basePath));
42313
+ }
42314
+
41501
42315
  /**
41502
42316
  * Fully reverses a completed Viva card payment (SUCCESS / CLOSED) by its sessionId: refunds the full amount at the gateway AND writes a reversal paymentEvent to the order via the settlement engine. Idempotent: re-calling a reverted session is a no-op.
41503
42317
  * @summary Revert (fully reverse) a settled Viva payment session
@@ -41510,6 +42324,18 @@ export class PaymentSessionApi extends BaseAPI implements PaymentSessionApiInter
41510
42324
  return PaymentSessionApiFp(this.configuration).revertVivaSession(reverseSessionDto, options).then((request) => request(this.axios, this.basePath));
41511
42325
  }
41512
42326
 
42327
+ /**
42328
+ * Starts a terminal reversal for the full remaining amount AND writes a reversal paymentEvent to the order once the reversal settles (via reconciliation). Returns a PENDING refund session — poll GET /:clientToken until REFUNDED/FAILED/CANCELLED. A reversal typically settles without a card tap; if the payment is already batched/settled the reversal fails and the client should fall back to /worldline/refund.
42329
+ * @summary Revert (fully reverse) a settled Worldline payment session (async)
42330
+ * @param {ReverseSessionDto} reverseSessionDto
42331
+ * @param {*} [options] Override http request option.
42332
+ * @throws {RequiredError}
42333
+ * @memberof PaymentSessionApi
42334
+ */
42335
+ public revertWorldlineSession(reverseSessionDto: ReverseSessionDto, options?: AxiosRequestConfig) {
42336
+ return PaymentSessionApiFp(this.configuration).revertWorldlineSession(reverseSessionDto, options).then((request) => request(this.axios, this.basePath));
42337
+ }
42338
+
41513
42339
  /**
41514
42340
  * Reverses a manually-recorded payment (cash / voucher / CardManual / gift card / …) by its sessionId (the order paymentEvent referenceId). Not for card paymethods (Card/Debit/Credit/Edenred) — those use cancel/refund. Idempotent: re-calling a voided session is a no-op.
41515
42341
  * @summary Void a manual payment session
@@ -46666,6 +47492,260 @@ export const WebhookApiAxiosParamCreator = function (configuration?: Configurati
46666
47492
 
46667
47493
 
46668
47494
 
47495
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47496
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47497
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47498
+
47499
+ return {
47500
+ url: toPathString(localVarUrlObj),
47501
+ options: localVarRequestOptions,
47502
+ };
47503
+ },
47504
+ /**
47505
+ * Per-transaction callback registered at initiate (ConnectCloud-Webhook-Address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. Legacy /nets and /v2/nets stay untouched.
47506
+ * @summary Handle Nets webhook events for the payment-session flow
47507
+ * @param {*} [options] Override http request option.
47508
+ * @throws {RequiredError}
47509
+ */
47510
+ handleNetsSessionEvents: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47511
+ const localVarPath = `/api/webhook/nets/payments`;
47512
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47513
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47514
+ let baseOptions;
47515
+ if (configuration) {
47516
+ baseOptions = configuration.baseOptions;
47517
+ }
47518
+
47519
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47520
+ const localVarHeaderParameter = {} as any;
47521
+ const localVarQueryParameter = {} as any;
47522
+
47523
+
47524
+
47525
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47526
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47527
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47528
+
47529
+ return {
47530
+ url: toPathString(localVarUrlObj),
47531
+ options: localVarRequestOptions,
47532
+ };
47533
+ },
47534
+ /**
47535
+ *
47536
+ * @summary Handle preorder reminder (triggered by scheduler)
47537
+ * @param {PreOrderReminderDto} preOrderReminderDto
47538
+ * @param {*} [options] Override http request option.
47539
+ * @throws {RequiredError}
47540
+ */
47541
+ handlePreorderReminder: async (preOrderReminderDto: PreOrderReminderDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47542
+ // verify required parameter 'preOrderReminderDto' is not null or undefined
47543
+ assertParamExists('handlePreorderReminder', 'preOrderReminderDto', preOrderReminderDto)
47544
+ const localVarPath = `/api/webhook/preorder-reminder`;
47545
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47546
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47547
+ let baseOptions;
47548
+ if (configuration) {
47549
+ baseOptions = configuration.baseOptions;
47550
+ }
47551
+
47552
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47553
+ const localVarHeaderParameter = {} as any;
47554
+ const localVarQueryParameter = {} as any;
47555
+
47556
+
47557
+
47558
+ localVarHeaderParameter['Content-Type'] = 'application/json';
47559
+
47560
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47561
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47562
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47563
+ localVarRequestOptions.data = serializeDataIfNeeded(preOrderReminderDto, localVarRequestOptions, configuration)
47564
+
47565
+ return {
47566
+ url: toPathString(localVarUrlObj),
47567
+ options: localVarRequestOptions,
47568
+ };
47569
+ },
47570
+ /**
47571
+ *
47572
+ * @param {*} [options] Override http request option.
47573
+ * @throws {RequiredError}
47574
+ */
47575
+ handleRoleWebhook: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47576
+ const localVarPath = `/api/webhook/add-roles`;
47577
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47578
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47579
+ let baseOptions;
47580
+ if (configuration) {
47581
+ baseOptions = configuration.baseOptions;
47582
+ }
47583
+
47584
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47585
+ const localVarHeaderParameter = {} as any;
47586
+ const localVarQueryParameter = {} as any;
47587
+
47588
+
47589
+
47590
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47591
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47592
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47593
+
47594
+ return {
47595
+ url: toPathString(localVarUrlObj),
47596
+ options: localVarRequestOptions,
47597
+ };
47598
+ },
47599
+ /**
47600
+ *
47601
+ * @param {*} [options] Override http request option.
47602
+ * @throws {RequiredError}
47603
+ */
47604
+ handleShiftWebhook: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47605
+ const localVarPath = `/api/webhook/add-employee-shifts`;
47606
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47607
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47608
+ let baseOptions;
47609
+ if (configuration) {
47610
+ baseOptions = configuration.baseOptions;
47611
+ }
47612
+
47613
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47614
+ const localVarHeaderParameter = {} as any;
47615
+ const localVarQueryParameter = {} as any;
47616
+
47617
+
47618
+
47619
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47620
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47621
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47622
+
47623
+ return {
47624
+ url: toPathString(localVarUrlObj),
47625
+ options: localVarRequestOptions,
47626
+ };
47627
+ },
47628
+ /**
47629
+ *
47630
+ * @summary Handle Viva payment webhook events
47631
+ * @param {VivaWebhookPayloadDto} vivaWebhookPayloadDto
47632
+ * @param {*} [options] Override http request option.
47633
+ * @throws {RequiredError}
47634
+ */
47635
+ handleVivaEvents: async (vivaWebhookPayloadDto: VivaWebhookPayloadDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47636
+ // verify required parameter 'vivaWebhookPayloadDto' is not null or undefined
47637
+ assertParamExists('handleVivaEvents', 'vivaWebhookPayloadDto', vivaWebhookPayloadDto)
47638
+ const localVarPath = `/api/webhook/viva/verification`;
47639
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47640
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47641
+ let baseOptions;
47642
+ if (configuration) {
47643
+ baseOptions = configuration.baseOptions;
47644
+ }
47645
+
47646
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47647
+ const localVarHeaderParameter = {} as any;
47648
+ const localVarQueryParameter = {} as any;
47649
+
47650
+
47651
+
47652
+ localVarHeaderParameter['Content-Type'] = 'application/json';
47653
+
47654
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47655
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47656
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47657
+ localVarRequestOptions.data = serializeDataIfNeeded(vivaWebhookPayloadDto, localVarRequestOptions, configuration)
47658
+
47659
+ return {
47660
+ url: toPathString(localVarUrlObj),
47661
+ options: localVarRequestOptions,
47662
+ };
47663
+ },
47664
+ /**
47665
+ * Shared dispatcher: session-backed Viva events -> PaymentSession update + reconciliation, others -> legacy flow. Both /viva/verification and /viva/payments resolve to the same dispatcher so Viva may deliver to either URL.
47666
+ * @summary Handle Viva webhook events for the payment-session flow
47667
+ * @param {VivaWebhookPayloadDto} vivaWebhookPayloadDto
47668
+ * @param {*} [options] Override http request option.
47669
+ * @throws {RequiredError}
47670
+ */
47671
+ handleVivaSessionEvents: async (vivaWebhookPayloadDto: VivaWebhookPayloadDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47672
+ // verify required parameter 'vivaWebhookPayloadDto' is not null or undefined
47673
+ assertParamExists('handleVivaSessionEvents', 'vivaWebhookPayloadDto', vivaWebhookPayloadDto)
47674
+ const localVarPath = `/api/webhook/viva/payments`;
47675
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47676
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47677
+ let baseOptions;
47678
+ if (configuration) {
47679
+ baseOptions = configuration.baseOptions;
47680
+ }
47681
+
47682
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47683
+ const localVarHeaderParameter = {} as any;
47684
+ const localVarQueryParameter = {} as any;
47685
+
47686
+
47687
+
47688
+ localVarHeaderParameter['Content-Type'] = 'application/json';
47689
+
47690
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47691
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47692
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47693
+ localVarRequestOptions.data = serializeDataIfNeeded(vivaWebhookPayloadDto, localVarRequestOptions, configuration)
47694
+
47695
+ return {
47696
+ url: toPathString(localVarUrlObj),
47697
+ options: localVarRequestOptions,
47698
+ };
47699
+ },
47700
+ /**
47701
+ *
47702
+ * @param {*} [options] Override http request option.
47703
+ * @throws {RequiredError}
47704
+ */
47705
+ handleWebhook: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47706
+ const localVarPath = `/api/webhook/ship-day`;
47707
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47708
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47709
+ let baseOptions;
47710
+ if (configuration) {
47711
+ baseOptions = configuration.baseOptions;
47712
+ }
47713
+
47714
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47715
+ const localVarHeaderParameter = {} as any;
47716
+ const localVarQueryParameter = {} as any;
47717
+
47718
+
47719
+
47720
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
47721
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
47722
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
47723
+
47724
+ return {
47725
+ url: toPathString(localVarUrlObj),
47726
+ options: localVarRequestOptions,
47727
+ };
47728
+ },
47729
+ /**
47730
+ *
47731
+ * @param {*} [options] Override http request option.
47732
+ * @throws {RequiredError}
47733
+ */
47734
+ handleWoltDriveEvent: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47735
+ const localVarPath = `/api/webhook/wolt-drive/event`;
47736
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
47737
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
47738
+ let baseOptions;
47739
+ if (configuration) {
47740
+ baseOptions = configuration.baseOptions;
47741
+ }
47742
+
47743
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
47744
+ const localVarHeaderParameter = {} as any;
47745
+ const localVarQueryParameter = {} as any;
47746
+
47747
+
47748
+
46669
47749
  setSearchParams(localVarUrlObj, localVarQueryParameter);
46670
47750
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
46671
47751
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
@@ -46677,206 +47757,15 @@ export const WebhookApiAxiosParamCreator = function (configuration?: Configurati
46677
47757
  },
46678
47758
  /**
46679
47759
  *
46680
- * @summary Handle preorder reminder (triggered by scheduler)
46681
- * @param {PreOrderReminderDto} preOrderReminderDto
46682
- * @param {*} [options] Override http request option.
46683
- * @throws {RequiredError}
46684
- */
46685
- handlePreorderReminder: async (preOrderReminderDto: PreOrderReminderDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46686
- // verify required parameter 'preOrderReminderDto' is not null or undefined
46687
- assertParamExists('handlePreorderReminder', 'preOrderReminderDto', preOrderReminderDto)
46688
- const localVarPath = `/api/webhook/preorder-reminder`;
46689
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
46690
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46691
- let baseOptions;
46692
- if (configuration) {
46693
- baseOptions = configuration.baseOptions;
46694
- }
46695
-
46696
- const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
46697
- const localVarHeaderParameter = {} as any;
46698
- const localVarQueryParameter = {} as any;
46699
-
46700
-
46701
-
46702
- localVarHeaderParameter['Content-Type'] = 'application/json';
46703
-
46704
- setSearchParams(localVarUrlObj, localVarQueryParameter);
46705
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
46706
- localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
46707
- localVarRequestOptions.data = serializeDataIfNeeded(preOrderReminderDto, localVarRequestOptions, configuration)
46708
-
46709
- return {
46710
- url: toPathString(localVarUrlObj),
46711
- options: localVarRequestOptions,
46712
- };
46713
- },
46714
- /**
46715
- *
46716
- * @param {*} [options] Override http request option.
46717
- * @throws {RequiredError}
46718
- */
46719
- handleRoleWebhook: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46720
- const localVarPath = `/api/webhook/add-roles`;
46721
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
46722
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46723
- let baseOptions;
46724
- if (configuration) {
46725
- baseOptions = configuration.baseOptions;
46726
- }
46727
-
46728
- const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
46729
- const localVarHeaderParameter = {} as any;
46730
- const localVarQueryParameter = {} as any;
46731
-
46732
-
46733
-
46734
- setSearchParams(localVarUrlObj, localVarQueryParameter);
46735
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
46736
- localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
46737
-
46738
- return {
46739
- url: toPathString(localVarUrlObj),
46740
- options: localVarRequestOptions,
46741
- };
46742
- },
46743
- /**
46744
- *
46745
- * @param {*} [options] Override http request option.
46746
- * @throws {RequiredError}
46747
- */
46748
- handleShiftWebhook: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46749
- const localVarPath = `/api/webhook/add-employee-shifts`;
46750
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
46751
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46752
- let baseOptions;
46753
- if (configuration) {
46754
- baseOptions = configuration.baseOptions;
46755
- }
46756
-
46757
- const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
46758
- const localVarHeaderParameter = {} as any;
46759
- const localVarQueryParameter = {} as any;
46760
-
46761
-
46762
-
46763
- setSearchParams(localVarUrlObj, localVarQueryParameter);
46764
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
46765
- localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
46766
-
46767
- return {
46768
- url: toPathString(localVarUrlObj),
46769
- options: localVarRequestOptions,
46770
- };
46771
- },
46772
- /**
46773
- *
46774
- * @summary Handle Viva payment webhook events
46775
- * @param {VivaWebhookPayloadDto} vivaWebhookPayloadDto
46776
- * @param {*} [options] Override http request option.
46777
- * @throws {RequiredError}
46778
- */
46779
- handleVivaEvents: async (vivaWebhookPayloadDto: VivaWebhookPayloadDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46780
- // verify required parameter 'vivaWebhookPayloadDto' is not null or undefined
46781
- assertParamExists('handleVivaEvents', 'vivaWebhookPayloadDto', vivaWebhookPayloadDto)
46782
- const localVarPath = `/api/webhook/viva/verification`;
46783
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
46784
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46785
- let baseOptions;
46786
- if (configuration) {
46787
- baseOptions = configuration.baseOptions;
46788
- }
46789
-
46790
- const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
46791
- const localVarHeaderParameter = {} as any;
46792
- const localVarQueryParameter = {} as any;
46793
-
46794
-
46795
-
46796
- localVarHeaderParameter['Content-Type'] = 'application/json';
46797
-
46798
- setSearchParams(localVarUrlObj, localVarQueryParameter);
46799
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
46800
- localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
46801
- localVarRequestOptions.data = serializeDataIfNeeded(vivaWebhookPayloadDto, localVarRequestOptions, configuration)
46802
-
46803
- return {
46804
- url: toPathString(localVarUrlObj),
46805
- options: localVarRequestOptions,
46806
- };
46807
- },
46808
- /**
46809
- * Routes Viva ECR events to PaymentSession update + reconciliation. Does not touch the legacy /viva/verification path.
46810
- * @summary Handle Viva webhook events for the payment-session flow
46811
- * @param {VivaWebhookPayloadDto} vivaWebhookPayloadDto
46812
- * @param {*} [options] Override http request option.
46813
- * @throws {RequiredError}
46814
- */
46815
- handleVivaSessionEvents: async (vivaWebhookPayloadDto: VivaWebhookPayloadDto, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46816
- // verify required parameter 'vivaWebhookPayloadDto' is not null or undefined
46817
- assertParamExists('handleVivaSessionEvents', 'vivaWebhookPayloadDto', vivaWebhookPayloadDto)
46818
- const localVarPath = `/api/webhook/viva/payments`;
46819
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
46820
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46821
- let baseOptions;
46822
- if (configuration) {
46823
- baseOptions = configuration.baseOptions;
46824
- }
46825
-
46826
- const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
46827
- const localVarHeaderParameter = {} as any;
46828
- const localVarQueryParameter = {} as any;
46829
-
46830
-
46831
-
46832
- localVarHeaderParameter['Content-Type'] = 'application/json';
46833
-
46834
- setSearchParams(localVarUrlObj, localVarQueryParameter);
46835
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
46836
- localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
46837
- localVarRequestOptions.data = serializeDataIfNeeded(vivaWebhookPayloadDto, localVarRequestOptions, configuration)
46838
-
46839
- return {
46840
- url: toPathString(localVarUrlObj),
46841
- options: localVarRequestOptions,
46842
- };
46843
- },
46844
- /**
46845
- *
46846
- * @param {*} [options] Override http request option.
46847
- * @throws {RequiredError}
46848
- */
46849
- handleWebhook: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46850
- const localVarPath = `/api/webhook/ship-day`;
46851
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
46852
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46853
- let baseOptions;
46854
- if (configuration) {
46855
- baseOptions = configuration.baseOptions;
46856
- }
46857
-
46858
- const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
46859
- const localVarHeaderParameter = {} as any;
46860
- const localVarQueryParameter = {} as any;
46861
-
46862
-
46863
-
46864
- setSearchParams(localVarUrlObj, localVarQueryParameter);
46865
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
46866
- localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
46867
-
46868
- return {
46869
- url: toPathString(localVarUrlObj),
46870
- options: localVarRequestOptions,
46871
- };
46872
- },
46873
- /**
46874
- *
47760
+ * @param {string} country
46875
47761
  * @param {*} [options] Override http request option.
46876
47762
  * @throws {RequiredError}
46877
47763
  */
46878
- handleWoltDriveEvent: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46879
- const localVarPath = `/api/webhook/wolt-drive/event`;
47764
+ handleWoltDriveEventByCountry: async (country: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47765
+ // verify required parameter 'country' is not null or undefined
47766
+ assertParamExists('handleWoltDriveEventByCountry', 'country', country)
47767
+ const localVarPath = `/api/webhook/wolt-drive/{country}/event`
47768
+ .replace(`{${"country"}}`, encodeURIComponent(String(country)));
46880
47769
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
46881
47770
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46882
47771
  let baseOptions;
@@ -46901,15 +47790,11 @@ export const WebhookApiAxiosParamCreator = function (configuration?: Configurati
46901
47790
  },
46902
47791
  /**
46903
47792
  *
46904
- * @param {string} country
46905
47793
  * @param {*} [options] Override http request option.
46906
47794
  * @throws {RequiredError}
46907
47795
  */
46908
- handleWoltDriveEventByCountry: async (country: string, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46909
- // verify required parameter 'country' is not null or undefined
46910
- assertParamExists('handleWoltDriveEventByCountry', 'country', country)
46911
- const localVarPath = `/api/webhook/wolt-drive/{country}/event`
46912
- .replace(`{${"country"}}`, encodeURIComponent(String(country)));
47796
+ handleWorldlineEvents: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47797
+ const localVarPath = `/api/webhook/worldline/events`;
46913
47798
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
46914
47799
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46915
47800
  let baseOptions;
@@ -46933,12 +47818,13 @@ export const WebhookApiAxiosParamCreator = function (configuration?: Configurati
46933
47818
  };
46934
47819
  },
46935
47820
  /**
46936
- *
47821
+ * Per-operation callback registered at initiate (x-munchi-webhook-address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. The legacy /worldline/events (FE-writes-from-Ably) stays untouched.
47822
+ * @summary Handle Worldline webhook events for the payment-session flow
46937
47823
  * @param {*} [options] Override http request option.
46938
47824
  * @throws {RequiredError}
46939
47825
  */
46940
- handleWorldlineEvents: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
46941
- const localVarPath = `/api/webhook/worldline/events`;
47826
+ handleWorldlineSessionEvents: async (options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
47827
+ const localVarPath = `/api/webhook/worldline/payments`;
46942
47828
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
46943
47829
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
46944
47830
  let baseOptions;
@@ -47151,6 +48037,16 @@ export const WebhookApiFp = function(configuration?: Configuration) {
47151
48037
  const localVarAxiosArgs = await localVarAxiosParamCreator.handleNetsEventsV2(options);
47152
48038
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
47153
48039
  },
48040
+ /**
48041
+ * Per-transaction callback registered at initiate (ConnectCloud-Webhook-Address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. Legacy /nets and /v2/nets stay untouched.
48042
+ * @summary Handle Nets webhook events for the payment-session flow
48043
+ * @param {*} [options] Override http request option.
48044
+ * @throws {RequiredError}
48045
+ */
48046
+ async handleNetsSessionEvents(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
48047
+ const localVarAxiosArgs = await localVarAxiosParamCreator.handleNetsSessionEvents(options);
48048
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
48049
+ },
47154
48050
  /**
47155
48051
  *
47156
48052
  * @summary Handle preorder reminder (triggered by scheduler)
@@ -47192,7 +48088,7 @@ export const WebhookApiFp = function(configuration?: Configuration) {
47192
48088
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
47193
48089
  },
47194
48090
  /**
47195
- * Routes Viva ECR events to PaymentSession update + reconciliation. Does not touch the legacy /viva/verification path.
48091
+ * Shared dispatcher: session-backed Viva events -> PaymentSession update + reconciliation, others -> legacy flow. Both /viva/verification and /viva/payments resolve to the same dispatcher so Viva may deliver to either URL.
47196
48092
  * @summary Handle Viva webhook events for the payment-session flow
47197
48093
  * @param {VivaWebhookPayloadDto} vivaWebhookPayloadDto
47198
48094
  * @param {*} [options] Override http request option.
@@ -47239,6 +48135,16 @@ export const WebhookApiFp = function(configuration?: Configuration) {
47239
48135
  const localVarAxiosArgs = await localVarAxiosParamCreator.handleWorldlineEvents(options);
47240
48136
  return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
47241
48137
  },
48138
+ /**
48139
+ * Per-operation callback registered at initiate (x-munchi-webhook-address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. The legacy /worldline/events (FE-writes-from-Ably) stays untouched.
48140
+ * @summary Handle Worldline webhook events for the payment-session flow
48141
+ * @param {*} [options] Override http request option.
48142
+ * @throws {RequiredError}
48143
+ */
48144
+ async handleWorldlineSessionEvents(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
48145
+ const localVarAxiosArgs = await localVarAxiosParamCreator.handleWorldlineSessionEvents(options);
48146
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
48147
+ },
47242
48148
  /**
47243
48149
  *
47244
48150
  * @summary Process a queued POS order-actions job (triggered by Cloud Tasks)
@@ -47338,6 +48244,15 @@ export const WebhookApiFactory = function (configuration?: Configuration, basePa
47338
48244
  handleNetsEventsV2(options?: any): AxiosPromise<void> {
47339
48245
  return localVarFp.handleNetsEventsV2(options).then((request) => request(axios, basePath));
47340
48246
  },
48247
+ /**
48248
+ * Per-transaction callback registered at initiate (ConnectCloud-Webhook-Address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. Legacy /nets and /v2/nets stay untouched.
48249
+ * @summary Handle Nets webhook events for the payment-session flow
48250
+ * @param {*} [options] Override http request option.
48251
+ * @throws {RequiredError}
48252
+ */
48253
+ handleNetsSessionEvents(options?: any): AxiosPromise<void> {
48254
+ return localVarFp.handleNetsSessionEvents(options).then((request) => request(axios, basePath));
48255
+ },
47341
48256
  /**
47342
48257
  *
47343
48258
  * @summary Handle preorder reminder (triggered by scheduler)
@@ -47375,7 +48290,7 @@ export const WebhookApiFactory = function (configuration?: Configuration, basePa
47375
48290
  return localVarFp.handleVivaEvents(vivaWebhookPayloadDto, options).then((request) => request(axios, basePath));
47376
48291
  },
47377
48292
  /**
47378
- * Routes Viva ECR events to PaymentSession update + reconciliation. Does not touch the legacy /viva/verification path.
48293
+ * Shared dispatcher: session-backed Viva events -> PaymentSession update + reconciliation, others -> legacy flow. Both /viva/verification and /viva/payments resolve to the same dispatcher so Viva may deliver to either URL.
47379
48294
  * @summary Handle Viva webhook events for the payment-session flow
47380
48295
  * @param {VivaWebhookPayloadDto} vivaWebhookPayloadDto
47381
48296
  * @param {*} [options] Override http request option.
@@ -47417,6 +48332,15 @@ export const WebhookApiFactory = function (configuration?: Configuration, basePa
47417
48332
  handleWorldlineEvents(options?: any): AxiosPromise<void> {
47418
48333
  return localVarFp.handleWorldlineEvents(options).then((request) => request(axios, basePath));
47419
48334
  },
48335
+ /**
48336
+ * Per-operation callback registered at initiate (x-munchi-webhook-address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. The legacy /worldline/events (FE-writes-from-Ably) stays untouched.
48337
+ * @summary Handle Worldline webhook events for the payment-session flow
48338
+ * @param {*} [options] Override http request option.
48339
+ * @throws {RequiredError}
48340
+ */
48341
+ handleWorldlineSessionEvents(options?: any): AxiosPromise<void> {
48342
+ return localVarFp.handleWorldlineSessionEvents(options).then((request) => request(axios, basePath));
48343
+ },
47420
48344
  /**
47421
48345
  *
47422
48346
  * @summary Process a queued POS order-actions job (triggered by Cloud Tasks)
@@ -47511,6 +48435,15 @@ export interface WebhookApiInterface {
47511
48435
  */
47512
48436
  handleNetsEventsV2(options?: AxiosRequestConfig): AxiosPromise<void>;
47513
48437
 
48438
+ /**
48439
+ * Per-transaction callback registered at initiate (ConnectCloud-Webhook-Address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. Legacy /nets and /v2/nets stay untouched.
48440
+ * @summary Handle Nets webhook events for the payment-session flow
48441
+ * @param {*} [options] Override http request option.
48442
+ * @throws {RequiredError}
48443
+ * @memberof WebhookApiInterface
48444
+ */
48445
+ handleNetsSessionEvents(options?: AxiosRequestConfig): AxiosPromise<void>;
48446
+
47514
48447
  /**
47515
48448
  *
47516
48449
  * @summary Handle preorder reminder (triggered by scheduler)
@@ -47548,7 +48481,7 @@ export interface WebhookApiInterface {
47548
48481
  handleVivaEvents(vivaWebhookPayloadDto: VivaWebhookPayloadDto, options?: AxiosRequestConfig): AxiosPromise<void>;
47549
48482
 
47550
48483
  /**
47551
- * Routes Viva ECR events to PaymentSession update + reconciliation. Does not touch the legacy /viva/verification path.
48484
+ * Shared dispatcher: session-backed Viva events -> PaymentSession update + reconciliation, others -> legacy flow. Both /viva/verification and /viva/payments resolve to the same dispatcher so Viva may deliver to either URL.
47552
48485
  * @summary Handle Viva webhook events for the payment-session flow
47553
48486
  * @param {VivaWebhookPayloadDto} vivaWebhookPayloadDto
47554
48487
  * @param {*} [options] Override http request option.
@@ -47590,6 +48523,15 @@ export interface WebhookApiInterface {
47590
48523
  */
47591
48524
  handleWorldlineEvents(options?: AxiosRequestConfig): AxiosPromise<void>;
47592
48525
 
48526
+ /**
48527
+ * Per-operation callback registered at initiate (x-munchi-webhook-address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. The legacy /worldline/events (FE-writes-from-Ably) stays untouched.
48528
+ * @summary Handle Worldline webhook events for the payment-session flow
48529
+ * @param {*} [options] Override http request option.
48530
+ * @throws {RequiredError}
48531
+ * @memberof WebhookApiInterface
48532
+ */
48533
+ handleWorldlineSessionEvents(options?: AxiosRequestConfig): AxiosPromise<void>;
48534
+
47593
48535
  /**
47594
48536
  *
47595
48537
  * @summary Process a queued POS order-actions job (triggered by Cloud Tasks)
@@ -47696,6 +48638,17 @@ export class WebhookApi extends BaseAPI implements WebhookApiInterface {
47696
48638
  return WebhookApiFp(this.configuration).handleNetsEventsV2(options).then((request) => request(this.axios, this.basePath));
47697
48639
  }
47698
48640
 
48641
+ /**
48642
+ * Per-transaction callback registered at initiate (ConnectCloud-Webhook-Address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. Legacy /nets and /v2/nets stay untouched.
48643
+ * @summary Handle Nets webhook events for the payment-session flow
48644
+ * @param {*} [options] Override http request option.
48645
+ * @throws {RequiredError}
48646
+ * @memberof WebhookApi
48647
+ */
48648
+ public handleNetsSessionEvents(options?: AxiosRequestConfig) {
48649
+ return WebhookApiFp(this.configuration).handleNetsSessionEvents(options).then((request) => request(this.axios, this.basePath));
48650
+ }
48651
+
47699
48652
  /**
47700
48653
  *
47701
48654
  * @summary Handle preorder reminder (triggered by scheduler)
@@ -47741,7 +48694,7 @@ export class WebhookApi extends BaseAPI implements WebhookApiInterface {
47741
48694
  }
47742
48695
 
47743
48696
  /**
47744
- * Routes Viva ECR events to PaymentSession update + reconciliation. Does not touch the legacy /viva/verification path.
48697
+ * Shared dispatcher: session-backed Viva events -> PaymentSession update + reconciliation, others -> legacy flow. Both /viva/verification and /viva/payments resolve to the same dispatcher so Viva may deliver to either URL.
47745
48698
  * @summary Handle Viva webhook events for the payment-session flow
47746
48699
  * @param {VivaWebhookPayloadDto} vivaWebhookPayloadDto
47747
48700
  * @param {*} [options] Override http request option.
@@ -47793,6 +48746,17 @@ export class WebhookApi extends BaseAPI implements WebhookApiInterface {
47793
48746
  return WebhookApiFp(this.configuration).handleWorldlineEvents(options).then((request) => request(this.axios, this.basePath));
47794
48747
  }
47795
48748
 
48749
+ /**
48750
+ * Per-operation callback registered at initiate (x-munchi-webhook-address). Finalizes the PaymentSession to SUCCESS/FAILED/CANCELLED and triggers order reconciliation. The legacy /worldline/events (FE-writes-from-Ably) stays untouched.
48751
+ * @summary Handle Worldline webhook events for the payment-session flow
48752
+ * @param {*} [options] Override http request option.
48753
+ * @throws {RequiredError}
48754
+ * @memberof WebhookApi
48755
+ */
48756
+ public handleWorldlineSessionEvents(options?: AxiosRequestConfig) {
48757
+ return WebhookApiFp(this.configuration).handleWorldlineSessionEvents(options).then((request) => request(this.axios, this.basePath));
48758
+ }
48759
+
47796
48760
  /**
47797
48761
  *
47798
48762
  * @summary Process a queued POS order-actions job (triggered by Cloud Tasks)