@pandait.tech/payment-nuvei 0.1.1 → 0.2.1
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/README.md +29 -0
- package/dist/adapters/index.cjs +54 -0
- package/dist/adapters/index.cjs.map +1 -0
- package/dist/adapters/index.d.cts +35 -0
- package/dist/adapters/index.d.ts +35 -0
- package/dist/adapters/index.js +51 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/handlers/index.cjs +273 -132
- package/dist/handlers/index.cjs.map +1 -1
- package/dist/handlers/index.d.cts +34 -121
- package/dist/handlers/index.d.ts +34 -121
- package/dist/handlers/index.js +273 -133
- package/dist/handlers/index.js.map +1 -1
- package/package.json +17 -9
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { NextRequest, NextResponse } from 'next/server';
|
|
2
1
|
import { Auth } from 'firebase-admin/auth';
|
|
3
2
|
import { Firestore } from 'firebase-admin/firestore';
|
|
4
3
|
|
|
@@ -156,31 +155,7 @@ interface ChargeHandlerDeps {
|
|
|
156
155
|
* validation, Nuvei debit call, 3DS/OTP handling, Firestore order updates, email
|
|
157
156
|
* dispatch, and optional post-success side effects via `onPaymentSucceeded`.
|
|
158
157
|
*/
|
|
159
|
-
declare function createChargeHandler(deps: ChargeHandlerDeps): (request:
|
|
160
|
-
error: string;
|
|
161
|
-
}> | NextResponse<{
|
|
162
|
-
success: boolean;
|
|
163
|
-
transactionId: string;
|
|
164
|
-
authorizationCode: string | null;
|
|
165
|
-
orderId: string;
|
|
166
|
-
emailSent: boolean;
|
|
167
|
-
}> | NextResponse<{
|
|
168
|
-
review: boolean;
|
|
169
|
-
orderId: string;
|
|
170
|
-
transactionId: string;
|
|
171
|
-
}> | NextResponse<{
|
|
172
|
-
challenge: boolean;
|
|
173
|
-
challengeHtml: string;
|
|
174
|
-
isDeviceFingerprint: boolean;
|
|
175
|
-
orderId: string;
|
|
176
|
-
nuveiTransactionId: string;
|
|
177
|
-
statusDetail: number;
|
|
178
|
-
}> | NextResponse<{
|
|
179
|
-
otpRequired: boolean;
|
|
180
|
-
orderId: string;
|
|
181
|
-
nuveiTransactionId: string;
|
|
182
|
-
statusDetail: number;
|
|
183
|
-
}>>;
|
|
158
|
+
declare function createChargeHandler(deps: ChargeHandlerDeps): (request: Request) => Promise<Response>;
|
|
184
159
|
|
|
185
160
|
interface NuveiWebhookPayload {
|
|
186
161
|
transaction: {
|
|
@@ -206,15 +181,15 @@ interface WebhookHandlerDeps {
|
|
|
206
181
|
onPaymentSucceeded?: (order: MinimalOrder & {
|
|
207
182
|
id: string;
|
|
208
183
|
}) => Promise<void>;
|
|
209
|
-
/** Optional custom dev_reference handler. If the webhook's `transaction.dev_reference` matches a custom format (e.g. "pn_<id>" for Plan Novios), the consumer returns a
|
|
210
|
-
handleCustomDevReference?: (devReference: string, transaction: NuveiWebhookPayload["transaction"], payload: NuveiWebhookPayload) => Promise<
|
|
184
|
+
/** Optional custom dev_reference handler. If the webhook's `transaction.dev_reference` matches a custom format (e.g. "pn_<id>" for Plan Novios), the consumer returns a Response and the standard order flow is skipped. Return null to fall through to standard order processing. */
|
|
185
|
+
handleCustomDevReference?: (devReference: string, transaction: NuveiWebhookPayload["transaction"], payload: NuveiWebhookPayload) => Promise<Response | null>;
|
|
211
186
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
212
187
|
}
|
|
213
188
|
/**
|
|
214
189
|
* Creates a Next.js App Router POST handler for the Nuvei webhook callback.
|
|
215
190
|
* Reference: https://developers.paymentez.com/api/#webhook
|
|
216
191
|
*/
|
|
217
|
-
declare function createWebhookHandler(deps: WebhookHandlerDeps): (request:
|
|
192
|
+
declare function createWebhookHandler(deps: WebhookHandlerDeps): (request: Request) => Promise<Response>;
|
|
218
193
|
|
|
219
194
|
/** Dependencies the 3DS callback handler factory needs. */
|
|
220
195
|
interface ThreeDSCallbackHandlerDeps {
|
|
@@ -224,15 +199,16 @@ interface ThreeDSCallbackHandlerDeps {
|
|
|
224
199
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
225
200
|
}
|
|
226
201
|
/**
|
|
227
|
-
* Creates
|
|
228
|
-
*
|
|
202
|
+
* Creates the 3DS callback route handlers. Returns `{ POST, GET }` because the
|
|
203
|
+
* ACS may call either depending on bank/issuer.
|
|
229
204
|
*
|
|
230
|
-
* Usage:
|
|
231
|
-
*
|
|
205
|
+
* Usage (Next.js): export const { POST, GET } = create3dsCallbackHandler({ firebase: { db } });
|
|
206
|
+
* Usage (Functions): const { POST } = create3dsCallbackHandler({ firebase: { db } });
|
|
207
|
+
* exports.threeDSCallback = onRequest({ cors: true }, toCloudFunction(POST));
|
|
232
208
|
*/
|
|
233
209
|
declare function create3dsCallbackHandler(deps: ThreeDSCallbackHandlerDeps): {
|
|
234
|
-
POST: (request:
|
|
235
|
-
GET: (request:
|
|
210
|
+
POST: (request: Request) => Promise<Response>;
|
|
211
|
+
GET: (request: Request) => Promise<Response>;
|
|
236
212
|
};
|
|
237
213
|
|
|
238
214
|
/** Dependencies the 3DS complete handler factory needs. */
|
|
@@ -253,23 +229,7 @@ interface ThreeDSCompleteHandlerDeps {
|
|
|
253
229
|
* Creates a Next.js App Router POST handler for the 3DS complete endpoint.
|
|
254
230
|
* Called by the client after challenge completion to finalize the payment.
|
|
255
231
|
*/
|
|
256
|
-
declare function create3dsCompleteHandler(deps: ThreeDSCompleteHandlerDeps): (request:
|
|
257
|
-
error: string;
|
|
258
|
-
}> | NextResponse<{
|
|
259
|
-
success: boolean;
|
|
260
|
-
transactionId: unknown;
|
|
261
|
-
authorizationCode: {} | null;
|
|
262
|
-
orderId: string;
|
|
263
|
-
}> | NextResponse<{
|
|
264
|
-
stillPending: boolean;
|
|
265
|
-
}> | NextResponse<{
|
|
266
|
-
challenge: boolean;
|
|
267
|
-
challengeHtml: string;
|
|
268
|
-
isDeviceFingerprint: boolean;
|
|
269
|
-
orderId: string;
|
|
270
|
-
nuveiTransactionId: {};
|
|
271
|
-
statusDetail: number;
|
|
272
|
-
}>>;
|
|
232
|
+
declare function create3dsCompleteHandler(deps: ThreeDSCompleteHandlerDeps): (request: Request) => Promise<Response>;
|
|
273
233
|
|
|
274
234
|
/** Dependencies the 3DS timeout handler factory needs. */
|
|
275
235
|
interface ThreeDSTimeoutHandlerDeps {
|
|
@@ -281,13 +241,7 @@ interface ThreeDSTimeoutHandlerDeps {
|
|
|
281
241
|
}) => string;
|
|
282
242
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
283
243
|
}
|
|
284
|
-
declare function create3dsTimeoutHandler(deps: ThreeDSTimeoutHandlerDeps): (request:
|
|
285
|
-
error: string;
|
|
286
|
-
}> | NextResponse<{
|
|
287
|
-
alreadyResolved: boolean;
|
|
288
|
-
}> | NextResponse<{
|
|
289
|
-
ok: boolean;
|
|
290
|
-
}>>;
|
|
244
|
+
declare function create3dsTimeoutHandler(deps: ThreeDSTimeoutHandlerDeps): (request: Request) => Promise<Response>;
|
|
291
245
|
|
|
292
246
|
/** Dependencies the refund handler factory needs. */
|
|
293
247
|
interface RefundHandlerDeps {
|
|
@@ -298,12 +252,7 @@ interface RefundHandlerDeps {
|
|
|
298
252
|
}) => Promise<void>;
|
|
299
253
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
300
254
|
}
|
|
301
|
-
declare function createRefundHandler(deps: RefundHandlerDeps): (request:
|
|
302
|
-
error: string;
|
|
303
|
-
}> | NextResponse<{
|
|
304
|
-
success: boolean;
|
|
305
|
-
detail: string;
|
|
306
|
-
}>>;
|
|
255
|
+
declare function createRefundHandler(deps: RefundHandlerDeps): (request: Request) => Promise<Response>;
|
|
307
256
|
|
|
308
257
|
/** Dependencies the init-checkout handler factory needs. */
|
|
309
258
|
interface InitCheckoutHandlerDeps {
|
|
@@ -319,12 +268,7 @@ interface InitCheckoutHandlerDeps {
|
|
|
319
268
|
};
|
|
320
269
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
321
270
|
}
|
|
322
|
-
declare function createInitCheckoutHandler(deps: InitCheckoutHandlerDeps): (request:
|
|
323
|
-
error: string;
|
|
324
|
-
}> | NextResponse<{
|
|
325
|
-
reference: string;
|
|
326
|
-
checkoutUrl: string | undefined;
|
|
327
|
-
}>>;
|
|
271
|
+
declare function createInitCheckoutHandler(deps: InitCheckoutHandlerDeps): (request: Request) => Promise<Response>;
|
|
328
272
|
|
|
329
273
|
/** Dependencies the cards handler factory needs. */
|
|
330
274
|
interface CardsHandlerDeps {
|
|
@@ -341,26 +285,8 @@ interface CardsHandlerDeps {
|
|
|
341
285
|
* export const { GET, DELETE } = createCardsHandler({ firebase: { db, auth } });
|
|
342
286
|
*/
|
|
343
287
|
declare function createCardsHandler(deps: CardsHandlerDeps): {
|
|
344
|
-
GET: (request:
|
|
345
|
-
|
|
346
|
-
}> | NextResponse<{
|
|
347
|
-
cards: {
|
|
348
|
-
bin: string;
|
|
349
|
-
status: string;
|
|
350
|
-
token: string;
|
|
351
|
-
holder_name: string;
|
|
352
|
-
expiry_year: string;
|
|
353
|
-
expiry_month: string;
|
|
354
|
-
transaction_reference: string;
|
|
355
|
-
type: string;
|
|
356
|
-
number: string;
|
|
357
|
-
}[];
|
|
358
|
-
}>>;
|
|
359
|
-
DELETE: (request: NextRequest) => Promise<NextResponse<{
|
|
360
|
-
error: string;
|
|
361
|
-
}> | NextResponse<{
|
|
362
|
-
message: string;
|
|
363
|
-
}>>;
|
|
288
|
+
GET: (request: Request) => Promise<Response>;
|
|
289
|
+
DELETE: (request: Request) => Promise<Response>;
|
|
364
290
|
};
|
|
365
291
|
|
|
366
292
|
/** Dependencies the verify handler factory needs. */
|
|
@@ -370,17 +296,7 @@ interface VerifyHandlerDeps {
|
|
|
370
296
|
enableVerifiedCardsTracking?: boolean;
|
|
371
297
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
372
298
|
}
|
|
373
|
-
declare function createVerifyHandler(deps: VerifyHandlerDeps): (request:
|
|
374
|
-
error: string;
|
|
375
|
-
}> | NextResponse<{
|
|
376
|
-
success: boolean;
|
|
377
|
-
transaction: {
|
|
378
|
-
status: string;
|
|
379
|
-
status_detail: number;
|
|
380
|
-
id: string;
|
|
381
|
-
message: string | null;
|
|
382
|
-
} | undefined;
|
|
383
|
-
}>>;
|
|
299
|
+
declare function createVerifyHandler(deps: VerifyHandlerDeps): (request: Request) => Promise<Response>;
|
|
384
300
|
|
|
385
301
|
/** Dependencies the test-charge handler factory needs. */
|
|
386
302
|
interface TestChargeHandlerDeps {
|
|
@@ -391,23 +307,20 @@ interface TestChargeHandlerDeps {
|
|
|
391
307
|
defaultDescription?: string;
|
|
392
308
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
393
309
|
}
|
|
394
|
-
declare function createTestChargeHandler(deps: TestChargeHandlerDeps): (request:
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
number: string;
|
|
410
|
-
} | undefined;
|
|
411
|
-
}>>;
|
|
310
|
+
declare function createTestChargeHandler(deps: TestChargeHandlerDeps): (request: Request) => Promise<Response>;
|
|
311
|
+
|
|
312
|
+
interface NuveiProxyHandlerDeps {
|
|
313
|
+
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Creates a Web-standard POST handler that forwards `{ path, method, body }` to
|
|
317
|
+
* Nuvei's REST API, attaching the caller-supplied `x-nuvei-auth-token` as the
|
|
318
|
+
* `Auth-Token` header and selecting prod/stg from `x-nuvei-env`.
|
|
319
|
+
*
|
|
320
|
+
* Usage (Next.js): export const POST = createNuveiProxyHandler();
|
|
321
|
+
* Usage (Functions): exports.nuveiProxy = onRequest({ cors: true },
|
|
322
|
+
* toCloudFunction(createNuveiProxyHandler()));
|
|
323
|
+
*/
|
|
324
|
+
declare function createNuveiProxyHandler(deps?: NuveiProxyHandlerDeps): (request: Request) => Promise<Response>;
|
|
412
325
|
|
|
413
|
-
export { type CardsHandlerDeps, type ChargeHandlerDeps, type CustomOrderValidationResult, type EmailService, type FirebaseDeps, type FirestoreData, type GetPriceDisplayFn, type InitCheckoutHandlerDeps, type MinimalOrder, type PaymentConfirmationArgs, type PaymentFailedArgs, type PaymentPendingArgs, type RateLimitFn, type RefundHandlerDeps, type TestChargeHandlerDeps, type ThreeDSCallbackHandlerDeps, type ThreeDSCompleteHandlerDeps, type ThreeDSTimeoutHandlerDeps, type TurnstileFn, type ValidateCustomOrderFn, type VerifyHandlerDeps, type WebhookHandlerDeps, create3dsCallbackHandler, create3dsCompleteHandler, create3dsTimeoutHandler, createCardsHandler, createChargeHandler, createInitCheckoutHandler, createRefundHandler, createTestChargeHandler, createVerifyHandler, createWebhookHandler };
|
|
326
|
+
export { type CardsHandlerDeps, type ChargeHandlerDeps, type CustomOrderValidationResult, type EmailService, type FirebaseDeps, type FirestoreData, type GetPriceDisplayFn, type InitCheckoutHandlerDeps, type MinimalOrder, type NuveiProxyHandlerDeps, type PaymentConfirmationArgs, type PaymentFailedArgs, type PaymentPendingArgs, type RateLimitFn, type RefundHandlerDeps, type TestChargeHandlerDeps, type ThreeDSCallbackHandlerDeps, type ThreeDSCompleteHandlerDeps, type ThreeDSTimeoutHandlerDeps, type TurnstileFn, type ValidateCustomOrderFn, type VerifyHandlerDeps, type WebhookHandlerDeps, create3dsCallbackHandler, create3dsCompleteHandler, create3dsTimeoutHandler, createCardsHandler, createChargeHandler, createInitCheckoutHandler, createNuveiProxyHandler, createRefundHandler, createTestChargeHandler, createVerifyHandler, createWebhookHandler };
|
package/dist/handlers/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { NextRequest, NextResponse } from 'next/server';
|
|
2
1
|
import { Auth } from 'firebase-admin/auth';
|
|
3
2
|
import { Firestore } from 'firebase-admin/firestore';
|
|
4
3
|
|
|
@@ -156,31 +155,7 @@ interface ChargeHandlerDeps {
|
|
|
156
155
|
* validation, Nuvei debit call, 3DS/OTP handling, Firestore order updates, email
|
|
157
156
|
* dispatch, and optional post-success side effects via `onPaymentSucceeded`.
|
|
158
157
|
*/
|
|
159
|
-
declare function createChargeHandler(deps: ChargeHandlerDeps): (request:
|
|
160
|
-
error: string;
|
|
161
|
-
}> | NextResponse<{
|
|
162
|
-
success: boolean;
|
|
163
|
-
transactionId: string;
|
|
164
|
-
authorizationCode: string | null;
|
|
165
|
-
orderId: string;
|
|
166
|
-
emailSent: boolean;
|
|
167
|
-
}> | NextResponse<{
|
|
168
|
-
review: boolean;
|
|
169
|
-
orderId: string;
|
|
170
|
-
transactionId: string;
|
|
171
|
-
}> | NextResponse<{
|
|
172
|
-
challenge: boolean;
|
|
173
|
-
challengeHtml: string;
|
|
174
|
-
isDeviceFingerprint: boolean;
|
|
175
|
-
orderId: string;
|
|
176
|
-
nuveiTransactionId: string;
|
|
177
|
-
statusDetail: number;
|
|
178
|
-
}> | NextResponse<{
|
|
179
|
-
otpRequired: boolean;
|
|
180
|
-
orderId: string;
|
|
181
|
-
nuveiTransactionId: string;
|
|
182
|
-
statusDetail: number;
|
|
183
|
-
}>>;
|
|
158
|
+
declare function createChargeHandler(deps: ChargeHandlerDeps): (request: Request) => Promise<Response>;
|
|
184
159
|
|
|
185
160
|
interface NuveiWebhookPayload {
|
|
186
161
|
transaction: {
|
|
@@ -206,15 +181,15 @@ interface WebhookHandlerDeps {
|
|
|
206
181
|
onPaymentSucceeded?: (order: MinimalOrder & {
|
|
207
182
|
id: string;
|
|
208
183
|
}) => Promise<void>;
|
|
209
|
-
/** Optional custom dev_reference handler. If the webhook's `transaction.dev_reference` matches a custom format (e.g. "pn_<id>" for Plan Novios), the consumer returns a
|
|
210
|
-
handleCustomDevReference?: (devReference: string, transaction: NuveiWebhookPayload["transaction"], payload: NuveiWebhookPayload) => Promise<
|
|
184
|
+
/** Optional custom dev_reference handler. If the webhook's `transaction.dev_reference` matches a custom format (e.g. "pn_<id>" for Plan Novios), the consumer returns a Response and the standard order flow is skipped. Return null to fall through to standard order processing. */
|
|
185
|
+
handleCustomDevReference?: (devReference: string, transaction: NuveiWebhookPayload["transaction"], payload: NuveiWebhookPayload) => Promise<Response | null>;
|
|
211
186
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
212
187
|
}
|
|
213
188
|
/**
|
|
214
189
|
* Creates a Next.js App Router POST handler for the Nuvei webhook callback.
|
|
215
190
|
* Reference: https://developers.paymentez.com/api/#webhook
|
|
216
191
|
*/
|
|
217
|
-
declare function createWebhookHandler(deps: WebhookHandlerDeps): (request:
|
|
192
|
+
declare function createWebhookHandler(deps: WebhookHandlerDeps): (request: Request) => Promise<Response>;
|
|
218
193
|
|
|
219
194
|
/** Dependencies the 3DS callback handler factory needs. */
|
|
220
195
|
interface ThreeDSCallbackHandlerDeps {
|
|
@@ -224,15 +199,16 @@ interface ThreeDSCallbackHandlerDeps {
|
|
|
224
199
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
225
200
|
}
|
|
226
201
|
/**
|
|
227
|
-
* Creates
|
|
228
|
-
*
|
|
202
|
+
* Creates the 3DS callback route handlers. Returns `{ POST, GET }` because the
|
|
203
|
+
* ACS may call either depending on bank/issuer.
|
|
229
204
|
*
|
|
230
|
-
* Usage:
|
|
231
|
-
*
|
|
205
|
+
* Usage (Next.js): export const { POST, GET } = create3dsCallbackHandler({ firebase: { db } });
|
|
206
|
+
* Usage (Functions): const { POST } = create3dsCallbackHandler({ firebase: { db } });
|
|
207
|
+
* exports.threeDSCallback = onRequest({ cors: true }, toCloudFunction(POST));
|
|
232
208
|
*/
|
|
233
209
|
declare function create3dsCallbackHandler(deps: ThreeDSCallbackHandlerDeps): {
|
|
234
|
-
POST: (request:
|
|
235
|
-
GET: (request:
|
|
210
|
+
POST: (request: Request) => Promise<Response>;
|
|
211
|
+
GET: (request: Request) => Promise<Response>;
|
|
236
212
|
};
|
|
237
213
|
|
|
238
214
|
/** Dependencies the 3DS complete handler factory needs. */
|
|
@@ -253,23 +229,7 @@ interface ThreeDSCompleteHandlerDeps {
|
|
|
253
229
|
* Creates a Next.js App Router POST handler for the 3DS complete endpoint.
|
|
254
230
|
* Called by the client after challenge completion to finalize the payment.
|
|
255
231
|
*/
|
|
256
|
-
declare function create3dsCompleteHandler(deps: ThreeDSCompleteHandlerDeps): (request:
|
|
257
|
-
error: string;
|
|
258
|
-
}> | NextResponse<{
|
|
259
|
-
success: boolean;
|
|
260
|
-
transactionId: unknown;
|
|
261
|
-
authorizationCode: {} | null;
|
|
262
|
-
orderId: string;
|
|
263
|
-
}> | NextResponse<{
|
|
264
|
-
stillPending: boolean;
|
|
265
|
-
}> | NextResponse<{
|
|
266
|
-
challenge: boolean;
|
|
267
|
-
challengeHtml: string;
|
|
268
|
-
isDeviceFingerprint: boolean;
|
|
269
|
-
orderId: string;
|
|
270
|
-
nuveiTransactionId: {};
|
|
271
|
-
statusDetail: number;
|
|
272
|
-
}>>;
|
|
232
|
+
declare function create3dsCompleteHandler(deps: ThreeDSCompleteHandlerDeps): (request: Request) => Promise<Response>;
|
|
273
233
|
|
|
274
234
|
/** Dependencies the 3DS timeout handler factory needs. */
|
|
275
235
|
interface ThreeDSTimeoutHandlerDeps {
|
|
@@ -281,13 +241,7 @@ interface ThreeDSTimeoutHandlerDeps {
|
|
|
281
241
|
}) => string;
|
|
282
242
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
283
243
|
}
|
|
284
|
-
declare function create3dsTimeoutHandler(deps: ThreeDSTimeoutHandlerDeps): (request:
|
|
285
|
-
error: string;
|
|
286
|
-
}> | NextResponse<{
|
|
287
|
-
alreadyResolved: boolean;
|
|
288
|
-
}> | NextResponse<{
|
|
289
|
-
ok: boolean;
|
|
290
|
-
}>>;
|
|
244
|
+
declare function create3dsTimeoutHandler(deps: ThreeDSTimeoutHandlerDeps): (request: Request) => Promise<Response>;
|
|
291
245
|
|
|
292
246
|
/** Dependencies the refund handler factory needs. */
|
|
293
247
|
interface RefundHandlerDeps {
|
|
@@ -298,12 +252,7 @@ interface RefundHandlerDeps {
|
|
|
298
252
|
}) => Promise<void>;
|
|
299
253
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
300
254
|
}
|
|
301
|
-
declare function createRefundHandler(deps: RefundHandlerDeps): (request:
|
|
302
|
-
error: string;
|
|
303
|
-
}> | NextResponse<{
|
|
304
|
-
success: boolean;
|
|
305
|
-
detail: string;
|
|
306
|
-
}>>;
|
|
255
|
+
declare function createRefundHandler(deps: RefundHandlerDeps): (request: Request) => Promise<Response>;
|
|
307
256
|
|
|
308
257
|
/** Dependencies the init-checkout handler factory needs. */
|
|
309
258
|
interface InitCheckoutHandlerDeps {
|
|
@@ -319,12 +268,7 @@ interface InitCheckoutHandlerDeps {
|
|
|
319
268
|
};
|
|
320
269
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
321
270
|
}
|
|
322
|
-
declare function createInitCheckoutHandler(deps: InitCheckoutHandlerDeps): (request:
|
|
323
|
-
error: string;
|
|
324
|
-
}> | NextResponse<{
|
|
325
|
-
reference: string;
|
|
326
|
-
checkoutUrl: string | undefined;
|
|
327
|
-
}>>;
|
|
271
|
+
declare function createInitCheckoutHandler(deps: InitCheckoutHandlerDeps): (request: Request) => Promise<Response>;
|
|
328
272
|
|
|
329
273
|
/** Dependencies the cards handler factory needs. */
|
|
330
274
|
interface CardsHandlerDeps {
|
|
@@ -341,26 +285,8 @@ interface CardsHandlerDeps {
|
|
|
341
285
|
* export const { GET, DELETE } = createCardsHandler({ firebase: { db, auth } });
|
|
342
286
|
*/
|
|
343
287
|
declare function createCardsHandler(deps: CardsHandlerDeps): {
|
|
344
|
-
GET: (request:
|
|
345
|
-
|
|
346
|
-
}> | NextResponse<{
|
|
347
|
-
cards: {
|
|
348
|
-
bin: string;
|
|
349
|
-
status: string;
|
|
350
|
-
token: string;
|
|
351
|
-
holder_name: string;
|
|
352
|
-
expiry_year: string;
|
|
353
|
-
expiry_month: string;
|
|
354
|
-
transaction_reference: string;
|
|
355
|
-
type: string;
|
|
356
|
-
number: string;
|
|
357
|
-
}[];
|
|
358
|
-
}>>;
|
|
359
|
-
DELETE: (request: NextRequest) => Promise<NextResponse<{
|
|
360
|
-
error: string;
|
|
361
|
-
}> | NextResponse<{
|
|
362
|
-
message: string;
|
|
363
|
-
}>>;
|
|
288
|
+
GET: (request: Request) => Promise<Response>;
|
|
289
|
+
DELETE: (request: Request) => Promise<Response>;
|
|
364
290
|
};
|
|
365
291
|
|
|
366
292
|
/** Dependencies the verify handler factory needs. */
|
|
@@ -370,17 +296,7 @@ interface VerifyHandlerDeps {
|
|
|
370
296
|
enableVerifiedCardsTracking?: boolean;
|
|
371
297
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
372
298
|
}
|
|
373
|
-
declare function createVerifyHandler(deps: VerifyHandlerDeps): (request:
|
|
374
|
-
error: string;
|
|
375
|
-
}> | NextResponse<{
|
|
376
|
-
success: boolean;
|
|
377
|
-
transaction: {
|
|
378
|
-
status: string;
|
|
379
|
-
status_detail: number;
|
|
380
|
-
id: string;
|
|
381
|
-
message: string | null;
|
|
382
|
-
} | undefined;
|
|
383
|
-
}>>;
|
|
299
|
+
declare function createVerifyHandler(deps: VerifyHandlerDeps): (request: Request) => Promise<Response>;
|
|
384
300
|
|
|
385
301
|
/** Dependencies the test-charge handler factory needs. */
|
|
386
302
|
interface TestChargeHandlerDeps {
|
|
@@ -391,23 +307,20 @@ interface TestChargeHandlerDeps {
|
|
|
391
307
|
defaultDescription?: string;
|
|
392
308
|
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
393
309
|
}
|
|
394
|
-
declare function createTestChargeHandler(deps: TestChargeHandlerDeps): (request:
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
number: string;
|
|
410
|
-
} | undefined;
|
|
411
|
-
}>>;
|
|
310
|
+
declare function createTestChargeHandler(deps: TestChargeHandlerDeps): (request: Request) => Promise<Response>;
|
|
311
|
+
|
|
312
|
+
interface NuveiProxyHandlerDeps {
|
|
313
|
+
logger?: Pick<Console, "log" | "error" | "warn">;
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Creates a Web-standard POST handler that forwards `{ path, method, body }` to
|
|
317
|
+
* Nuvei's REST API, attaching the caller-supplied `x-nuvei-auth-token` as the
|
|
318
|
+
* `Auth-Token` header and selecting prod/stg from `x-nuvei-env`.
|
|
319
|
+
*
|
|
320
|
+
* Usage (Next.js): export const POST = createNuveiProxyHandler();
|
|
321
|
+
* Usage (Functions): exports.nuveiProxy = onRequest({ cors: true },
|
|
322
|
+
* toCloudFunction(createNuveiProxyHandler()));
|
|
323
|
+
*/
|
|
324
|
+
declare function createNuveiProxyHandler(deps?: NuveiProxyHandlerDeps): (request: Request) => Promise<Response>;
|
|
412
325
|
|
|
413
|
-
export { type CardsHandlerDeps, type ChargeHandlerDeps, type CustomOrderValidationResult, type EmailService, type FirebaseDeps, type FirestoreData, type GetPriceDisplayFn, type InitCheckoutHandlerDeps, type MinimalOrder, type PaymentConfirmationArgs, type PaymentFailedArgs, type PaymentPendingArgs, type RateLimitFn, type RefundHandlerDeps, type TestChargeHandlerDeps, type ThreeDSCallbackHandlerDeps, type ThreeDSCompleteHandlerDeps, type ThreeDSTimeoutHandlerDeps, type TurnstileFn, type ValidateCustomOrderFn, type VerifyHandlerDeps, type WebhookHandlerDeps, create3dsCallbackHandler, create3dsCompleteHandler, create3dsTimeoutHandler, createCardsHandler, createChargeHandler, createInitCheckoutHandler, createRefundHandler, createTestChargeHandler, createVerifyHandler, createWebhookHandler };
|
|
326
|
+
export { type CardsHandlerDeps, type ChargeHandlerDeps, type CustomOrderValidationResult, type EmailService, type FirebaseDeps, type FirestoreData, type GetPriceDisplayFn, type InitCheckoutHandlerDeps, type MinimalOrder, type NuveiProxyHandlerDeps, type PaymentConfirmationArgs, type PaymentFailedArgs, type PaymentPendingArgs, type RateLimitFn, type RefundHandlerDeps, type TestChargeHandlerDeps, type ThreeDSCallbackHandlerDeps, type ThreeDSCompleteHandlerDeps, type ThreeDSTimeoutHandlerDeps, type TurnstileFn, type ValidateCustomOrderFn, type VerifyHandlerDeps, type WebhookHandlerDeps, create3dsCallbackHandler, create3dsCompleteHandler, create3dsTimeoutHandler, createCardsHandler, createChargeHandler, createInitCheckoutHandler, createNuveiProxyHandler, createRefundHandler, createTestChargeHandler, createVerifyHandler, createWebhookHandler };
|