@plyaz/types 1.15.3 → 1.15.5

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.
@@ -53,7 +53,7 @@ export interface FormCampaignDataInterface {
53
53
  /**
54
54
  * Draft campaign data extending FormData with save timestamp
55
55
  */
56
- export interface DraftCampaignData extends FormData {
56
+ export interface DraftCampaignData extends FormCampaignDataInterface {
57
57
  /** Timestamp when the draft was last saved */
58
58
  lastSavedAt: Date;
59
59
  }
@@ -193,6 +193,8 @@ export declare const ERROR_CODES: {
193
193
  readonly DB_ENTITY_NOT_FOUND: "DB_ENTITY_NOT_FOUND";
194
194
  readonly DB_MIGRATION_FAILED: "DB_MIGRATION_FAILED";
195
195
  readonly DB_UNKNOWN_ERROR: "DB_UNKNOWN_ERROR";
196
+ readonly PAYMENT_TIMEOUT: "payment.timeout";
197
+ readonly PAYMENT_NETWORK_ERROR: "payment.network.error";
196
198
  readonly PAYMENT_REFUND_FAILED: "payment.refund.failed";
197
199
  readonly PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found";
198
200
  readonly PAYMENT_REFUND_ALREADY_PROCESSED: "payment.refund.already.processed";
@@ -209,6 +211,13 @@ export declare const ERROR_CODES: {
209
211
  readonly PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed";
210
212
  readonly PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded";
211
213
  readonly PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing";
214
+ readonly PAYMENT_COMPLIANCE_KYC_REQUIRED: "payment.compliance.kyc.required";
215
+ readonly PAYMENT_COMPLIANCE_GEOGRAPHIC_RESTRICTION: "payment.compliance.geographic.restriction";
216
+ readonly PAYMENT_COMPLIANCE_AML_CHECK_FAILED: "payment.compliance.aml.check.failed";
217
+ readonly PAYMENT_COMPLIANCE_PSD2_STRONG_AUTH_REQUIRED: "payment.compliance.psd2.strong.auth.required";
218
+ readonly PAYMENT_COMPLIANCE_GDPR_DATA_ACCESS: "payment.compliance.gdpr.data.access";
219
+ readonly PAYMENT_COMPLIANCE_PCI_COMPLIANCE: "payment.compliance.pci.compliance";
220
+ readonly PAYMENT_COMPLIANCE_LOCAL_BANKING_RESTRICTION: "payment.compliance.local.banking.restriction";
212
221
  readonly PAYMENT_PROCESSING_FAILED: "payment.processing.failed";
213
222
  readonly PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout";
214
223
  readonly PAYMENT_PROCESSING_GATEWAY_ERROR: "payment.processing.gateway.error";
@@ -385,6 +394,8 @@ export declare const NOTIFICATION_ERROR_CODES: {
385
394
  * Subset of ERROR_CODES for @plyaz/payments package
386
395
  */
387
396
  export declare const PAYMENT_ERROR_CODES: {
397
+ PAYMENT_TIMEOUT: string;
398
+ PAYMENT_NETWORK_ERROR: string;
388
399
  PAYMENT_REFUND_FAILED: string;
389
400
  PAYMENT_REFUND_NOT_FOUND: string;
390
401
  PAYMENT_REFUND_ALREADY_PROCESSED: string;
@@ -401,6 +412,8 @@ export declare const PAYMENT_ERROR_CODES: {
401
412
  PAYMENT_COMPLIANCE_CHECK_FAILED: string;
402
413
  PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: string;
403
414
  PAYMENT_COMPLIANCE_POLICY_MISSING: string;
415
+ PAYMENT_COMPLIANCE_KYC_REQUIRED: string;
416
+ PAYMENT_COMPLIANCE_GEOGRAPHIC_RESTRICTION: string;
404
417
  PAYMENT_PROCESSING_FAILED: string;
405
418
  PAYMENT_PROCESSING_TIMEOUT: string;
406
419
  PAYMENT_PROCESSING_GATEWAY_ERROR: string;
@@ -347,4 +347,6 @@ export declare const ERROR_EXCEPTIONS_NAMESPACES: {
347
347
  MONITORING: string;
348
348
  HOOKS: string;
349
349
  COMMON: string;
350
+ COMPLIANCE: string;
351
+ PAYMENT_WEBHOOKS: string;
350
352
  };
@@ -264,7 +264,9 @@ var ERROR_EXCEPTIONS_NAMESPACES = {
264
264
  WEB3: "web3",
265
265
  MONITORING: "monitoring",
266
266
  HOOKS: "hooks",
267
- COMMON: "common"
267
+ COMMON: "common",
268
+ COMPLIANCE: "compliance",
269
+ PAYMENT_WEBHOOKS: "payment-webhook"
268
270
  };
269
271
 
270
272
  // src/http/constants.ts
@@ -307,6 +309,10 @@ var HTTP_STATUS = {
307
309
  * 429 Too Many Requests - The user has sent too many requests in a given amount of time
308
310
  */
309
311
  TOO_MANY_REQUESTS: 429,
312
+ /**
313
+ * 451 Unavailable For Legal Reasons - The user requested a resource that cannot legally be provided
314
+ */
315
+ UNAVAILABLE_FOR_LEGAL_REASONS: 451,
310
316
  // 5xx Server Errors
311
317
  /**
312
318
  * 500 Internal Server Error - The server encountered an unexpected condition
@@ -327,7 +333,12 @@ var HTTP_STATUS = {
327
333
  /**
328
334
  * 504 Gateway Timeout - The server did not get a response in time from the upstream server
329
335
  */
330
- GATEWAY_TIMEOUT: 504};
336
+ GATEWAY_TIMEOUT: 504,
337
+ /**
338
+ * 511 Network Authentication Required - The client needs to authenticate to gain network access
339
+ */
340
+ NETWORK_AUTHENTICATION_REQUIRED: 511
341
+ };
331
342
 
332
343
  // src/errors/codes.ts
333
344
  var ERROR_CODES = {
@@ -564,6 +575,8 @@ var ERROR_CODES = {
564
575
  // General
565
576
  DB_UNKNOWN_ERROR: "DB_UNKNOWN_ERROR",
566
577
  // ===== Payments Package Errors =====
578
+ PAYMENT_TIMEOUT: "payment.timeout",
579
+ PAYMENT_NETWORK_ERROR: "payment.network.error",
567
580
  // Refund
568
581
  PAYMENT_REFUND_FAILED: "payment.refund.failed",
569
582
  PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found",
@@ -583,6 +596,13 @@ var ERROR_CODES = {
583
596
  PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed",
584
597
  PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded",
585
598
  PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing",
599
+ PAYMENT_COMPLIANCE_KYC_REQUIRED: "payment.compliance.kyc.required",
600
+ PAYMENT_COMPLIANCE_GEOGRAPHIC_RESTRICTION: "payment.compliance.geographic.restriction",
601
+ PAYMENT_COMPLIANCE_AML_CHECK_FAILED: "payment.compliance.aml.check.failed",
602
+ PAYMENT_COMPLIANCE_PSD2_STRONG_AUTH_REQUIRED: "payment.compliance.psd2.strong.auth.required",
603
+ PAYMENT_COMPLIANCE_GDPR_DATA_ACCESS: "payment.compliance.gdpr.data.access",
604
+ PAYMENT_COMPLIANCE_PCI_COMPLIANCE: "payment.compliance.pci.compliance",
605
+ PAYMENT_COMPLIANCE_LOCAL_BANKING_RESTRICTION: "payment.compliance.local.banking.restriction",
586
606
  // Processing
587
607
  PAYMENT_PROCESSING_FAILED: "payment.processing.failed",
588
608
  PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout",
@@ -751,6 +771,8 @@ var NOTIFICATION_ERROR_CODES = {
751
771
  INITIALIZATION_FAILED: ERROR_CODES.NOTIFICATION_INITIALIZATION_FAILED
752
772
  };
753
773
  var PAYMENT_ERROR_CODES = {
774
+ PAYMENT_TIMEOUT: "payment.timeout",
775
+ PAYMENT_NETWORK_ERROR: "payment.network.error",
754
776
  // Refund
755
777
  PAYMENT_REFUND_FAILED: "payment.refund.failed",
756
778
  PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found",
@@ -770,6 +792,8 @@ var PAYMENT_ERROR_CODES = {
770
792
  PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed",
771
793
  PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded",
772
794
  PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing",
795
+ PAYMENT_COMPLIANCE_KYC_REQUIRED: "payment.compliance.kyc.required",
796
+ PAYMENT_COMPLIANCE_GEOGRAPHIC_RESTRICTION: "payment.compliance.geographic.restriction",
773
797
  // Processing
774
798
  PAYMENT_PROCESSING_FAILED: "payment.processing.failed",
775
799
  PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout",
@@ -2281,6 +2305,71 @@ var ERROR_DEFINITIONS = {
2281
2305
  severity: ERROR_SEVERITY.High,
2282
2306
  retryable: false
2283
2307
  },
2308
+ [ERROR_CODES.PAYMENT_TIMEOUT]: {
2309
+ code: ERROR_CODES.PAYMENT_TIMEOUT,
2310
+ status: HTTP_STATUS.REQUEST_TIMEOUT,
2311
+ category: ERROR_CATEGORY.Timeout,
2312
+ userMessage: "errors.payment.timeout",
2313
+ severity: ERROR_SEVERITY.Medium,
2314
+ retryable: true
2315
+ },
2316
+ [ERROR_CODES.PAYMENT_NETWORK_ERROR]: {
2317
+ code: ERROR_CODES.PAYMENT_NETWORK_ERROR,
2318
+ status: HTTP_STATUS.NETWORK_AUTHENTICATION_REQUIRED,
2319
+ category: ERROR_CATEGORY.Network,
2320
+ userMessage: "errors.payment.network_error",
2321
+ severity: ERROR_SEVERITY.Medium,
2322
+ retryable: true
2323
+ },
2324
+ // Misc
2325
+ [ERROR_CODES.DB_SCHEDULE_SETUP_FAILED]: {
2326
+ code: ERROR_CODES.DB_SCHEDULE_SETUP_FAILED,
2327
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2328
+ category: ERROR_CATEGORY.Server,
2329
+ userMessage: "db.misc.schedule_setup_failed",
2330
+ severity: ERROR_SEVERITY.Critical,
2331
+ retryable: false
2332
+ },
2333
+ [ERROR_CODES.DB_DECRYPTION_FAILED]: {
2334
+ code: ERROR_CODES.DB_DECRYPTION_FAILED,
2335
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2336
+ category: ERROR_CATEGORY.Server,
2337
+ userMessage: "db.misc.decryption_failed",
2338
+ severity: ERROR_SEVERITY.Critical,
2339
+ retryable: false
2340
+ },
2341
+ [ERROR_CODES.DB_INVALID_SHELL_ARG]: {
2342
+ code: ERROR_CODES.DB_INVALID_SHELL_ARG,
2343
+ status: HTTP_STATUS.BAD_REQUEST,
2344
+ category: ERROR_CATEGORY.Validation,
2345
+ userMessage: "db.misc.invalid_shell_arg",
2346
+ severity: ERROR_SEVERITY.Medium,
2347
+ retryable: false
2348
+ },
2349
+ [ERROR_CODES.DB_INVALID_BETWEEN_OPERATOR]: {
2350
+ code: ERROR_CODES.DB_INVALID_BETWEEN_OPERATOR,
2351
+ status: HTTP_STATUS.BAD_REQUEST,
2352
+ category: ERROR_CATEGORY.Validation,
2353
+ userMessage: "db.misc.invalid_between_operator",
2354
+ severity: ERROR_SEVERITY.Medium,
2355
+ retryable: false
2356
+ },
2357
+ [ERROR_CODES.DB_INVALID_IN_OPERATOR]: {
2358
+ code: ERROR_CODES.DB_INVALID_IN_OPERATOR,
2359
+ status: HTTP_STATUS.BAD_REQUEST,
2360
+ category: ERROR_CATEGORY.Validation,
2361
+ userMessage: "db.misc.invalid_in_operator",
2362
+ severity: ERROR_SEVERITY.Medium,
2363
+ retryable: false
2364
+ },
2365
+ [ERROR_CODES.DB_INVALID_COUNT]: {
2366
+ code: ERROR_CODES.DB_INVALID_COUNT,
2367
+ status: HTTP_STATUS.BAD_REQUEST,
2368
+ category: ERROR_CATEGORY.Validation,
2369
+ userMessage: "db.misc.invalid_count",
2370
+ severity: ERROR_SEVERITY.Medium,
2371
+ retryable: false
2372
+ },
2284
2373
  // ===== Payments Package Error Definitions =====
2285
2374
  // ===== Refund Errors =====
2286
2375
  [ERROR_CODES.PAYMENT_REFUND_FAILED]: {
@@ -2413,45 +2502,20 @@ var ERROR_DEFINITIONS = {
2413
2502
  severity: ERROR_SEVERITY.Critical,
2414
2503
  retryable: false
2415
2504
  },
2416
- // ===== Processing Errors =====
2417
- [ERROR_CODES.PAYMENT_PROCESSING_FAILED]: {
2418
- code: ERROR_CODES.PAYMENT_PROCESSING_FAILED,
2419
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2420
- category: ERROR_CATEGORY.Processing,
2421
- userMessage: "errors.payment.processing.failed",
2422
- severity: ERROR_SEVERITY.Critical,
2423
- retryable: true
2424
- },
2425
- [ERROR_CODES.PAYMENT_PROCESSING_TIMEOUT]: {
2426
- code: ERROR_CODES.PAYMENT_PROCESSING_TIMEOUT,
2427
- status: HTTP_STATUS.GATEWAY_TIMEOUT,
2428
- category: ERROR_CATEGORY.Timeout,
2429
- userMessage: "errors.payment.processing.timeout",
2430
- severity: ERROR_SEVERITY.High,
2431
- retryable: true
2432
- },
2433
- [ERROR_CODES.PAYMENT_PROCESSING_GATEWAY_ERROR]: {
2434
- code: ERROR_CODES.PAYMENT_PROCESSING_GATEWAY_ERROR,
2435
- status: HTTP_STATUS.BAD_GATEWAY,
2436
- category: ERROR_CATEGORY.Provider,
2437
- userMessage: "errors.payment.processing.gateway_error",
2438
- severity: ERROR_SEVERITY.High,
2439
- retryable: true
2440
- },
2441
- [ERROR_CODES.PAYMENT_PROCESSING_DUPLICATE]: {
2442
- code: ERROR_CODES.PAYMENT_PROCESSING_DUPLICATE,
2443
- status: HTTP_STATUS.CONFLICT,
2444
- category: ERROR_CATEGORY.Processing,
2445
- userMessage: "errors.payment.processing.duplicate",
2446
- severity: ERROR_SEVERITY.Low,
2505
+ [ERROR_CODES.PAYMENT_COMPLIANCE_KYC_REQUIRED]: {
2506
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_KYC_REQUIRED,
2507
+ status: HTTP_STATUS.FORBIDDEN,
2508
+ category: ERROR_CATEGORY.Compliance,
2509
+ userMessage: "errors.payment.compliance.kyc_required",
2510
+ severity: ERROR_SEVERITY.Medium,
2447
2511
  retryable: false
2448
2512
  },
2449
- [ERROR_CODES.PAYMENT_PROCESSING_UNEXPECTED_STATE]: {
2450
- code: ERROR_CODES.PAYMENT_PROCESSING_UNEXPECTED_STATE,
2451
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2452
- category: ERROR_CATEGORY.System,
2453
- userMessage: "errors.payment.processing.unexpected_state",
2454
- severity: ERROR_SEVERITY.Critical,
2513
+ [ERROR_CODES.PAYMENT_COMPLIANCE_GEOGRAPHIC_RESTRICTION]: {
2514
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_GEOGRAPHIC_RESTRICTION,
2515
+ status: HTTP_STATUS.FORBIDDEN,
2516
+ category: ERROR_CATEGORY.Compliance,
2517
+ userMessage: "errors.payment.compliance.geographic_restriction",
2518
+ severity: ERROR_SEVERITY.Medium,
2455
2519
  retryable: false
2456
2520
  },
2457
2521
  // ===== Security Errors =====
@@ -2708,55 +2772,6 @@ var ERROR_DEFINITIONS = {
2708
2772
  severity: ERROR_SEVERITY.High,
2709
2773
  retryable: true
2710
2774
  },
2711
- // Misc
2712
- [ERROR_CODES.DB_SCHEDULE_SETUP_FAILED]: {
2713
- code: ERROR_CODES.DB_SCHEDULE_SETUP_FAILED,
2714
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2715
- category: ERROR_CATEGORY.Server,
2716
- userMessage: "db.misc.schedule_setup_failed",
2717
- severity: ERROR_SEVERITY.Critical,
2718
- retryable: false
2719
- },
2720
- [ERROR_CODES.DB_DECRYPTION_FAILED]: {
2721
- code: ERROR_CODES.DB_DECRYPTION_FAILED,
2722
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2723
- category: ERROR_CATEGORY.Server,
2724
- userMessage: "db.misc.decryption_failed",
2725
- severity: ERROR_SEVERITY.Critical,
2726
- retryable: false
2727
- },
2728
- [ERROR_CODES.DB_INVALID_SHELL_ARG]: {
2729
- code: ERROR_CODES.DB_INVALID_SHELL_ARG,
2730
- status: HTTP_STATUS.BAD_REQUEST,
2731
- category: ERROR_CATEGORY.Validation,
2732
- userMessage: "db.misc.invalid_shell_arg",
2733
- severity: ERROR_SEVERITY.Medium,
2734
- retryable: false
2735
- },
2736
- [ERROR_CODES.DB_INVALID_BETWEEN_OPERATOR]: {
2737
- code: ERROR_CODES.DB_INVALID_BETWEEN_OPERATOR,
2738
- status: HTTP_STATUS.BAD_REQUEST,
2739
- category: ERROR_CATEGORY.Validation,
2740
- userMessage: "db.misc.invalid_between_operator",
2741
- severity: ERROR_SEVERITY.Medium,
2742
- retryable: false
2743
- },
2744
- [ERROR_CODES.DB_INVALID_IN_OPERATOR]: {
2745
- code: ERROR_CODES.DB_INVALID_IN_OPERATOR,
2746
- status: HTTP_STATUS.BAD_REQUEST,
2747
- category: ERROR_CATEGORY.Validation,
2748
- userMessage: "db.misc.invalid_in_operator",
2749
- severity: ERROR_SEVERITY.Medium,
2750
- retryable: false
2751
- },
2752
- [ERROR_CODES.DB_INVALID_COUNT]: {
2753
- code: ERROR_CODES.DB_INVALID_COUNT,
2754
- status: HTTP_STATUS.BAD_REQUEST,
2755
- category: ERROR_CATEGORY.Validation,
2756
- userMessage: "db.misc.invalid_count",
2757
- severity: ERROR_SEVERITY.Medium,
2758
- retryable: false
2759
- },
2760
2775
  // Connection & Network
2761
2776
  [ERROR_CODES.DB_CONNECTION_FAILED]: {
2762
2777
  code: ERROR_CODES.DB_CONNECTION_FAILED,
@@ -2834,7 +2849,6 @@ var ERROR_DEFINITIONS = {
2834
2849
  severity: ERROR_SEVERITY.Medium,
2835
2850
  retryable: false
2836
2851
  },
2837
- // ===== General Payment Framework Errors =====
2838
2852
  [ERROR_CODES.PAYMENT_SYSTEM_NOT_INITIALIZED]: {
2839
2853
  code: ERROR_CODES.PAYMENT_SYSTEM_NOT_INITIALIZED,
2840
2854
  status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
@@ -2915,6 +2929,87 @@ var ERROR_DEFINITIONS = {
2915
2929
  userMessage: "errors.payment.event.lifecycle_failure",
2916
2930
  severity: ERROR_SEVERITY.High,
2917
2931
  retryable: false
2932
+ },
2933
+ [ERROR_CODES.PAYMENT_COMPLIANCE_AML_CHECK_FAILED]: {
2934
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_AML_CHECK_FAILED,
2935
+ status: HTTP_STATUS.FORBIDDEN,
2936
+ category: ERROR_CATEGORY.Compliance,
2937
+ userMessage: "errors.payment.compliance.aml_check_failed",
2938
+ severity: ERROR_SEVERITY.High,
2939
+ retryable: false
2940
+ },
2941
+ [ERROR_CODES.PAYMENT_COMPLIANCE_PSD2_STRONG_AUTH_REQUIRED]: {
2942
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_PSD2_STRONG_AUTH_REQUIRED,
2943
+ status: HTTP_STATUS.UNAUTHORIZED,
2944
+ category: ERROR_CATEGORY.Authentication,
2945
+ userMessage: "errors.payment.compliance.psd2_strong_auth_required",
2946
+ severity: ERROR_SEVERITY.Medium,
2947
+ retryable: true
2948
+ },
2949
+ [ERROR_CODES.PAYMENT_COMPLIANCE_GDPR_DATA_ACCESS]: {
2950
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_GDPR_DATA_ACCESS,
2951
+ status: HTTP_STATUS.UNAVAILABLE_FOR_LEGAL_REASONS,
2952
+ category: ERROR_CATEGORY.Compliance,
2953
+ userMessage: "errors.payment.compliance.gdpr_data_access",
2954
+ severity: ERROR_SEVERITY.Medium,
2955
+ retryable: false
2956
+ },
2957
+ [ERROR_CODES.PAYMENT_COMPLIANCE_PCI_COMPLIANCE]: {
2958
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_PCI_COMPLIANCE,
2959
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2960
+ category: ERROR_CATEGORY.Security,
2961
+ userMessage: "errors.payment.compliance.pci_compliance",
2962
+ severity: ERROR_SEVERITY.Critical,
2963
+ retryable: false
2964
+ },
2965
+ [ERROR_CODES.PAYMENT_COMPLIANCE_LOCAL_BANKING_RESTRICTION]: {
2966
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_LOCAL_BANKING_RESTRICTION,
2967
+ status: HTTP_STATUS.FORBIDDEN,
2968
+ category: ERROR_CATEGORY.Regional,
2969
+ userMessage: "errors.payment.compliance.local_banking_restriction",
2970
+ severity: ERROR_SEVERITY.Medium,
2971
+ retryable: false
2972
+ },
2973
+ // === Processing Errors ===
2974
+ [ERROR_CODES.PAYMENT_PROCESSING_FAILED]: {
2975
+ code: ERROR_CODES.PAYMENT_PROCESSING_FAILED,
2976
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2977
+ category: ERROR_CATEGORY.Processing,
2978
+ userMessage: "errors.payment.processing.failed",
2979
+ severity: ERROR_SEVERITY.Critical,
2980
+ retryable: false
2981
+ },
2982
+ [ERROR_CODES.PAYMENT_PROCESSING_TIMEOUT]: {
2983
+ code: ERROR_CODES.PAYMENT_PROCESSING_TIMEOUT,
2984
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
2985
+ category: ERROR_CATEGORY.Timeout,
2986
+ userMessage: "errors.payment.processing.timeout",
2987
+ severity: ERROR_SEVERITY.High,
2988
+ retryable: true
2989
+ },
2990
+ [ERROR_CODES.PAYMENT_PROCESSING_GATEWAY_ERROR]: {
2991
+ code: ERROR_CODES.PAYMENT_PROCESSING_GATEWAY_ERROR,
2992
+ status: HTTP_STATUS.BAD_GATEWAY,
2993
+ category: ERROR_CATEGORY.Provider,
2994
+ userMessage: "errors.payment.processing.gateway_error",
2995
+ severity: ERROR_SEVERITY.High,
2996
+ retryable: true
2997
+ },
2998
+ [ERROR_CODES.PAYMENT_PROCESSING_DUPLICATE]: {
2999
+ code: ERROR_CODES.PAYMENT_PROCESSING_DUPLICATE,
3000
+ status: HTTP_STATUS.CONFLICT,
3001
+ category: ERROR_CATEGORY.Processing,
3002
+ userMessage: "errors.payment.processing.duplicate",
3003
+ severity: ERROR_SEVERITY.Medium,
3004
+ retryable: false
3005
+ },
3006
+ [ERROR_CODES.PAYMENT_PROCESSING_UNEXPECTED_STATE]: {
3007
+ code: ERROR_CODES.PAYMENT_PROCESSING_UNEXPECTED_STATE,
3008
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
3009
+ category: ERROR_CATEGORY.System,
3010
+ userMessage: "errors.payment.processing.unexpected_state",
3011
+ severity: ERROR_SEVERITY.Critical,
3012
+ retryable: false
2918
3013
  }
2919
3014
  };
2920
3015