@plyaz/types 1.14.8 → 1.14.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -127,6 +127,20 @@ var ERROR_CATEGORY = {
127
127
  Template: "template",
128
128
  /** Configuration-related error (e.g., invalid or missing configuration). */
129
129
  Configuration: "configuration",
130
+ /** Payment processing-related error (e.g., capture or settlement failure). */
131
+ Processing: "processing",
132
+ /** Fraud detection or prevention failure. */
133
+ Fraud: "fraud",
134
+ /** Compliance-related error (e.g., AML/KYC validation failure). */
135
+ Compliance: "compliance",
136
+ /** Limits or quota-related error (e.g., exceeded transaction limit). */
137
+ Limits: "limits",
138
+ /** System-level error (unexpected internal issue). */
139
+ System: "system",
140
+ /** Refund-related error (e.g., duplicate or failed refund). */
141
+ Refund: "refund",
142
+ /** Security-related error (e.g., encryption or signature failure). */
143
+ Security: "security",
130
144
  /** Unknown or unclassified error. */
131
145
  Unknown: "unknown"
132
146
  };
@@ -185,6 +199,13 @@ var ERROR_CATEGORY_TO_EMITTER_KEY = {
185
199
  [ERROR_CATEGORY.Webhook]: "webhook",
186
200
  [ERROR_CATEGORY.Template]: "template",
187
201
  [ERROR_CATEGORY.Configuration]: "configuration",
202
+ [ERROR_CATEGORY.Processing]: "processing",
203
+ [ERROR_CATEGORY.Fraud]: "fraud",
204
+ [ERROR_CATEGORY.Compliance]: "compliance",
205
+ [ERROR_CATEGORY.Limits]: "limits",
206
+ [ERROR_CATEGORY.System]: "system",
207
+ [ERROR_CATEGORY.Refund]: "refund",
208
+ [ERROR_CATEGORY.Security]: "security",
188
209
  [ERROR_CATEGORY.Unknown]: "unknown"
189
210
  };
190
211
  var COMMON_OPERATIONS = {
@@ -778,7 +799,86 @@ var ERROR_CODES = {
778
799
  DB_INVALID_SHELL_ARG: "DB_INVALID_SHELL_ARG",
779
800
  DB_INVALID_BETWEEN_OPERATOR: "DB_INVALID_BETWEEN_OPERATOR",
780
801
  DB_INVALID_IN_OPERATOR: "DB_INVALID_IN_OPERATOR",
781
- DB_INVALID_COUNT: "DB_INVALID_COUNT"
802
+ DB_INVALID_COUNT: "DB_INVALID_COUNT",
803
+ // ===== Payments Package Errors =====
804
+ // Refund
805
+ PAYMENT_REFUND_FAILED: "payment.refund.failed",
806
+ PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found",
807
+ PAYMENT_REFUND_ALREADY_PROCESSED: "payment.refund.already.processed",
808
+ PAYMENT_REFUND_AMOUNT_INVALID: "payment.refund.amount.invalid",
809
+ PAYMENT_REFUND_VALIDATION_FAILED: "payment.refund.validation.failed",
810
+ PAYMENT_REFUND_TIMEOUT: "payment.refund.timeout",
811
+ // Provider
812
+ PAYMENT_PROVIDER_ERROR: "payment.provider.error",
813
+ PAYMENT_PROVIDER_UNAVAILABLE: "payment.provider.unavailable",
814
+ PAYMENT_PROVIDER_CONFIGURATION_INVALID: "payment.provider.configuration.invalid",
815
+ PAYMENT_PROVIDER_RESPONSE_INVALID: "payment.provider.response.invalid",
816
+ PAYMENT_PROVIDER_TIMEOUT: "payment.provider.timeout",
817
+ PAYMENT_PROVIDER_AUTH_FAILED: "payment.provider.auth.failed",
818
+ // Compliance
819
+ PAYMENT_COMPLIANCE_VIOLATION: "payment.compliance.violation",
820
+ PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed",
821
+ PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded",
822
+ PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing",
823
+ // Processing
824
+ PAYMENT_PROCESSING_FAILED: "payment.processing.failed",
825
+ PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout",
826
+ PAYMENT_PROCESSING_GATEWAY_ERROR: "payment.processing.gateway.error",
827
+ PAYMENT_PROCESSING_DUPLICATE: "payment.processing.duplicate",
828
+ PAYMENT_PROCESSING_UNEXPECTED_STATE: "payment.processing.unexpected.state",
829
+ // Security
830
+ PAYMENT_SECURITY_VIOLATION: "payment.security.violation",
831
+ PAYMENT_SECURITY_SIGNATURE_INVALID: "payment.security.signature.invalid",
832
+ PAYMENT_SECURITY_ENCRYPTION_FAILED: "payment.security.encryption.failed",
833
+ PAYMENT_SECURITY_FRAUD_DETECTED: "payment.security.fraud.detected",
834
+ PAYMENT_SECURITY_TOKEN_INVALID: "payment.security.token.invalid",
835
+ // Validation
836
+ PAYMENT_VALIDATION_FAILED: "payment.validation.failed",
837
+ PAYMENT_VALIDATION_AMOUNT_INVALID: "payment.validation.amount.invalid",
838
+ PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED: "payment.validation.currency.unsupported",
839
+ PAYMENT_VALIDATION_METADATA_INVALID: "payment.validation.metadata.invalid",
840
+ PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD: "payment.validation.field.required",
841
+ // Webhook
842
+ PAYMENT_WEBHOOK_SIGNATURE_INVALID: "payment.webhook.signature.invalid",
843
+ PAYMENT_WEBHOOK_PROCESSING_FAILED: "payment.webhook.processing.failed",
844
+ PAYMENT_WEBHOOK_VALIDATION_FAILED: "payment.webhook.validation.failed",
845
+ PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED: "payment.webhook.event.type.unsupported",
846
+ PAYMENT_WEBHOOK_HANDLER_NOT_FOUND: "payment.webhook.handler.not.found",
847
+ // ===== Payment Adapter & Core Errors =====
848
+ PAYMENT_ADAPTER_INIT_FAILED: "payment.adapter.init.failed",
849
+ PAYMENT_ADAPTER_SHUTDOWN_ERROR: "payment.adapter.shutdown.error",
850
+ PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED: "payment.adapter.hmac.computation.failed",
851
+ PAYMENT_ADAPTER_MISSING_PROVIDER: "payment.adapter.missing.provider",
852
+ PAYMENT_ADAPTER_MISSING_ENVIRONMENT: "payment.adapter.missing.environment",
853
+ PAYMENT_ADAPTER_MISSING_CREDENTIALS: "payment.adapter.missing.credentials",
854
+ PAYMENT_ADAPTER_MISSING_WEBHOOK_URL: "payment.adapter.missing.webhook.url",
855
+ PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT: "payment.adapter.missing.unregister.endpoint",
856
+ PAYMENT_ADAPTER_UNSUPPORTED_OPERATION: "payment.adapter.unsupported.operation",
857
+ PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED: "payment.adapter.response.mapping.failed",
858
+ // Idempotency & State Management
859
+ PAYMENT_IDEMPOTENCY_VIOLATION: "payment.idempotency.violation",
860
+ PAYMENT_IDEMPOTENCY_KEY_MISSING: "payment.idempotency.key.missing",
861
+ PAYMENT_IDEMPOTENCY_STORE_ERROR: "payment.idempotency.store.error",
862
+ // Routing & Strategy
863
+ PAYMENT_ROUTING_FAILED: "payment.routing.failed",
864
+ PAYMENT_ROUTING_CONFIGURATION_INVALID: "payment.routing.configuration.invalid",
865
+ PAYMENT_ROUTING_PROVIDER_UNAVAILABLE: "payment.routing.provider.unavailable",
866
+ PAYMENT_ROUTING_RETRY_EXCEEDED: "payment.routing.retry.exceeded",
867
+ // General Payment Framework Errors
868
+ PAYMENT_SYSTEM_NOT_INITIALIZED: "payment.system.not.initialized",
869
+ PAYMENT_CONTEXT_OPERATION_FAILED: "payment.context.operation.failed",
870
+ PAYMENT_INTERNAL_ERROR: "payment.internal.error",
871
+ PAYMENT_UNKNOWN_ERROR: "payment.unknown.error",
872
+ /**
873
+ * Thrown when an event could not be emitted due to internal state or creation errors.
874
+ * Typically non-retryable, indicates a logic or validation fault.
875
+ */
876
+ PAYMENT_EVENT_EMIT_FAILED: "PAYMENT_EVENT_EMIT_FAILED",
877
+ PAYMENT_EVENT_INVALID_TYPE: "PAYMENT_EVENT_INVALID_TYPE",
878
+ PAYMENT_EVENT_CREATION_FAILED: "PAYMENT_EVENT_CREATION_FAILED",
879
+ PAYMENT_EVENT_HANDLER_TIMEOUT: "PAYMENT_EVENT_HANDLER_TIMEOUT",
880
+ PAYMENT_EVENT_HANDLER_INVALID_RESULT: "PAYMENT_EVENT_HANDLER_INVALID_RESULT",
881
+ PAYMENT_EVENT_LIFECYCLE_FAILURE: "PAYMENT_EVENT_LIFECYCLE_FAILURE"
782
882
  };
783
883
  var API_ERROR_CODES = {
784
884
  CLIENT_INITIALIZATION_FAILED: ERROR_CODES.CLIENT_INITIALIZATION_FAILED,
@@ -887,6 +987,86 @@ var NOTIFICATION_ERROR_CODES = {
887
987
  UNKNOWN_ERROR: ERROR_CODES.NOTIFICATION_UNKNOWN_ERROR,
888
988
  INITIALIZATION_FAILED: ERROR_CODES.NOTIFICATION_INITIALIZATION_FAILED
889
989
  };
990
+ var PAYMENT_ERROR_CODES = {
991
+ // Refund
992
+ PAYMENT_REFUND_FAILED: "payment.refund.failed",
993
+ PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found",
994
+ PAYMENT_REFUND_ALREADY_PROCESSED: "payment.refund.already.processed",
995
+ PAYMENT_REFUND_AMOUNT_INVALID: "payment.refund.amount.invalid",
996
+ PAYMENT_REFUND_VALIDATION_FAILED: "payment.refund.validation.failed",
997
+ PAYMENT_REFUND_TIMEOUT: "payment.refund.timeout",
998
+ // Provider
999
+ PAYMENT_PROVIDER_ERROR: "payment.provider.error",
1000
+ PAYMENT_PROVIDER_UNAVAILABLE: "payment.provider.unavailable",
1001
+ PAYMENT_PROVIDER_CONFIGURATION_INVALID: "payment.provider.configuration.invalid",
1002
+ PAYMENT_PROVIDER_RESPONSE_INVALID: "payment.provider.response.invalid",
1003
+ PAYMENT_PROVIDER_TIMEOUT: "payment.provider.timeout",
1004
+ PAYMENT_PROVIDER_AUTH_FAILED: "payment.provider.auth.failed",
1005
+ // Compliance
1006
+ PAYMENT_COMPLIANCE_VIOLATION: "payment.compliance.violation",
1007
+ PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed",
1008
+ PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded",
1009
+ PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing",
1010
+ // Processing
1011
+ PAYMENT_PROCESSING_FAILED: "payment.processing.failed",
1012
+ PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout",
1013
+ PAYMENT_PROCESSING_GATEWAY_ERROR: "payment.processing.gateway.error",
1014
+ PAYMENT_PROCESSING_DUPLICATE: "payment.processing.duplicate",
1015
+ PAYMENT_PROCESSING_UNEXPECTED_STATE: "payment.processing.unexpected.state",
1016
+ // Security
1017
+ PAYMENT_SECURITY_VIOLATION: "payment.security.violation",
1018
+ PAYMENT_SECURITY_SIGNATURE_INVALID: "payment.security.signature.invalid",
1019
+ PAYMENT_SECURITY_ENCRYPTION_FAILED: "payment.security.encryption.failed",
1020
+ PAYMENT_SECURITY_FRAUD_DETECTED: "payment.security.fraud.detected",
1021
+ PAYMENT_SECURITY_TOKEN_INVALID: "payment.security.token.invalid",
1022
+ // Validation
1023
+ PAYMENT_VALIDATION_FAILED: "payment.validation.failed",
1024
+ PAYMENT_VALIDATION_AMOUNT_INVALID: "payment.validation.amount.invalid",
1025
+ PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED: "payment.validation.currency.unsupported",
1026
+ PAYMENT_VALIDATION_METADATA_INVALID: "payment.validation.metadata.invalid",
1027
+ PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD: "payment.validation.field.required",
1028
+ // Webhook
1029
+ PAYMENT_WEBHOOK_SIGNATURE_INVALID: "payment.webhook.signature.invalid",
1030
+ PAYMENT_WEBHOOK_PROCESSING_FAILED: "payment.webhook.processing.failed",
1031
+ PAYMENT_WEBHOOK_VALIDATION_FAILED: "payment.webhook.validation.failed",
1032
+ PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED: "payment.webhook.event.type.unsupported",
1033
+ PAYMENT_WEBHOOK_HANDLER_NOT_FOUND: "payment.webhook.handler.not.found",
1034
+ // ===== Payment Adapter & Core Errors =====
1035
+ PAYMENT_ADAPTER_INIT_FAILED: "payment.adapter.init.failed",
1036
+ PAYMENT_ADAPTER_SHUTDOWN_ERROR: "payment.adapter.shutdown.error",
1037
+ PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED: "payment.adapter.hmac.computation.failed",
1038
+ PAYMENT_ADAPTER_MISSING_PROVIDER: "payment.adapter.missing.provider",
1039
+ PAYMENT_ADAPTER_MISSING_ENVIRONMENT: "payment.adapter.missing.environment",
1040
+ PAYMENT_ADAPTER_MISSING_CREDENTIALS: "payment.adapter.missing.credentials",
1041
+ PAYMENT_ADAPTER_MISSING_WEBHOOK_URL: "payment.adapter.missing.webhook.url",
1042
+ PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT: "payment.adapter.missing.unregister.endpoint",
1043
+ PAYMENT_ADAPTER_UNSUPPORTED_OPERATION: "payment.adapter.unsupported.operation",
1044
+ PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED: "payment.adapter.response.mapping.failed",
1045
+ // Idempotency & State Management
1046
+ PAYMENT_IDEMPOTENCY_VIOLATION: "payment.idempotency.violation",
1047
+ PAYMENT_IDEMPOTENCY_KEY_MISSING: "payment.idempotency.key.missing",
1048
+ PAYMENT_IDEMPOTENCY_STORE_ERROR: "payment.idempotency.store.error",
1049
+ // Routing & Strategy
1050
+ PAYMENT_ROUTING_FAILED: "payment.routing.failed",
1051
+ PAYMENT_ROUTING_CONFIGURATION_INVALID: "payment.routing.configuration.invalid",
1052
+ PAYMENT_ROUTING_PROVIDER_UNAVAILABLE: "payment.routing.provider.unavailable",
1053
+ PAYMENT_ROUTING_RETRY_EXCEEDED: "payment.routing.retry.exceeded",
1054
+ // General Payment Framework Errors
1055
+ PAYMENT_SYSTEM_NOT_INITIALIZED: "payment.system.not.initialized",
1056
+ PAYMENT_CONTEXT_OPERATION_FAILED: "payment.context.operation.failed",
1057
+ PAYMENT_INTERNAL_ERROR: "payment.internal.error",
1058
+ PAYMENT_UNKNOWN_ERROR: "payment.unknown.error",
1059
+ /**
1060
+ * Thrown when an event could not be emitted due to internal state or creation errors.
1061
+ * Typically non-retryable, indicates a logic or validation fault.
1062
+ */
1063
+ PAYMENT_EVENT_EMIT_FAILED: "PAYMENT_EVENT_EMIT_FAILED",
1064
+ PAYMENT_EVENT_INVALID_TYPE: "PAYMENT_EVENT_INVALID_TYPE",
1065
+ PAYMENT_EVENT_CREATION_FAILED: "PAYMENT_EVENT_CREATION_FAILED",
1066
+ PAYMENT_EVENT_HANDLER_TIMEOUT: "PAYMENT_EVENT_HANDLER_TIMEOUT",
1067
+ PAYMENT_EVENT_HANDLER_INVALID_RESULT: "PAYMENT_EVENT_HANDLER_INVALID_RESULT",
1068
+ PAYMENT_EVENT_LIFECYCLE_FAILURE: "PAYMENT_EVENT_LIFECYCLE_FAILURE"
1069
+ };
890
1070
  var ERROR_DEFINITIONS = {
891
1071
  // ===== API Package Error Definitions =====
892
1072
  // Authentication
@@ -2260,6 +2440,433 @@ var ERROR_DEFINITIONS = {
2260
2440
  category: ERROR_CATEGORY.Server,
2261
2441
  userMessage: "db.file.s3_upload_failed",
2262
2442
  severity: ERROR_SEVERITY.High,
2443
+ retryable: false
2444
+ },
2445
+ // ===== Payments Package Error Definitions =====
2446
+ // ===== Refund Errors =====
2447
+ [ERROR_CODES.PAYMENT_REFUND_FAILED]: {
2448
+ code: ERROR_CODES.PAYMENT_REFUND_FAILED,
2449
+ status: HTTP_STATUS.BAD_REQUEST,
2450
+ category: ERROR_CATEGORY.Refund,
2451
+ userMessage: "errors.payment.refund.failed",
2452
+ severity: ERROR_SEVERITY.High,
2453
+ retryable: false
2454
+ },
2455
+ [ERROR_CODES.PAYMENT_REFUND_NOT_FOUND]: {
2456
+ code: ERROR_CODES.PAYMENT_REFUND_NOT_FOUND,
2457
+ status: HTTP_STATUS.NOT_FOUND,
2458
+ category: ERROR_CATEGORY.Refund,
2459
+ userMessage: "errors.payment.refund.not_found",
2460
+ severity: ERROR_SEVERITY.Medium,
2461
+ retryable: false
2462
+ },
2463
+ [ERROR_CODES.PAYMENT_REFUND_ALREADY_PROCESSED]: {
2464
+ code: ERROR_CODES.PAYMENT_REFUND_ALREADY_PROCESSED,
2465
+ status: HTTP_STATUS.CONFLICT,
2466
+ category: ERROR_CATEGORY.Refund,
2467
+ userMessage: "errors.payment.refund.already_processed",
2468
+ severity: ERROR_SEVERITY.Low,
2469
+ retryable: false
2470
+ },
2471
+ [ERROR_CODES.PAYMENT_REFUND_AMOUNT_INVALID]: {
2472
+ code: ERROR_CODES.PAYMENT_REFUND_AMOUNT_INVALID,
2473
+ status: HTTP_STATUS.BAD_REQUEST,
2474
+ category: ERROR_CATEGORY.Validation,
2475
+ userMessage: "errors.payment.refund.amount_invalid",
2476
+ severity: ERROR_SEVERITY.Medium,
2477
+ retryable: false
2478
+ },
2479
+ [ERROR_CODES.PAYMENT_REFUND_VALIDATION_FAILED]: {
2480
+ code: ERROR_CODES.PAYMENT_REFUND_VALIDATION_FAILED,
2481
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
2482
+ category: ERROR_CATEGORY.Validation,
2483
+ userMessage: "errors.payment.refund.validation_failed",
2484
+ severity: ERROR_SEVERITY.Medium,
2485
+ retryable: false
2486
+ },
2487
+ [ERROR_CODES.PAYMENT_REFUND_TIMEOUT]: {
2488
+ code: ERROR_CODES.PAYMENT_REFUND_TIMEOUT,
2489
+ status: HTTP_STATUS.REQUEST_TIMEOUT,
2490
+ category: ERROR_CATEGORY.Timeout,
2491
+ userMessage: "errors.payment.refund.timeout",
2492
+ severity: ERROR_SEVERITY.High,
2493
+ retryable: true
2494
+ },
2495
+ // ===== Provider Errors =====
2496
+ [ERROR_CODES.PAYMENT_PROVIDER_ERROR]: {
2497
+ code: ERROR_CODES.PAYMENT_PROVIDER_ERROR,
2498
+ status: HTTP_STATUS.BAD_GATEWAY,
2499
+ category: ERROR_CATEGORY.Provider,
2500
+ userMessage: "errors.payment.provider.generic",
2501
+ severity: ERROR_SEVERITY.High,
2502
+ retryable: true
2503
+ },
2504
+ [ERROR_CODES.PAYMENT_PROVIDER_UNAVAILABLE]: {
2505
+ code: ERROR_CODES.PAYMENT_PROVIDER_UNAVAILABLE,
2506
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
2507
+ category: ERROR_CATEGORY.Provider,
2508
+ userMessage: "errors.payment.provider.unavailable",
2509
+ severity: ERROR_SEVERITY.Critical,
2510
+ retryable: true
2511
+ },
2512
+ [ERROR_CODES.PAYMENT_PROVIDER_CONFIGURATION_INVALID]: {
2513
+ code: ERROR_CODES.PAYMENT_PROVIDER_CONFIGURATION_INVALID,
2514
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2515
+ category: ERROR_CATEGORY.Configuration,
2516
+ userMessage: "errors.payment.provider.invalid_config",
2517
+ severity: ERROR_SEVERITY.Critical,
2518
+ retryable: false
2519
+ },
2520
+ [ERROR_CODES.PAYMENT_PROVIDER_RESPONSE_INVALID]: {
2521
+ code: ERROR_CODES.PAYMENT_PROVIDER_RESPONSE_INVALID,
2522
+ status: HTTP_STATUS.BAD_GATEWAY,
2523
+ category: ERROR_CATEGORY.Provider,
2524
+ userMessage: "errors.payment.provider.invalid_response",
2525
+ severity: ERROR_SEVERITY.High,
2526
+ retryable: false
2527
+ },
2528
+ [ERROR_CODES.PAYMENT_PROVIDER_TIMEOUT]: {
2529
+ code: ERROR_CODES.PAYMENT_PROVIDER_TIMEOUT,
2530
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
2531
+ category: ERROR_CATEGORY.Timeout,
2532
+ userMessage: "errors.payment.provider.timeout",
2533
+ severity: ERROR_SEVERITY.High,
2534
+ retryable: true
2535
+ },
2536
+ [ERROR_CODES.PAYMENT_PROVIDER_AUTH_FAILED]: {
2537
+ code: ERROR_CODES.PAYMENT_PROVIDER_AUTH_FAILED,
2538
+ status: HTTP_STATUS.UNAUTHORIZED,
2539
+ category: ERROR_CATEGORY.Authentication,
2540
+ userMessage: "errors.payment.provider.auth_failed",
2541
+ severity: ERROR_SEVERITY.Medium,
2542
+ retryable: false
2543
+ },
2544
+ // ===== Compliance Errors =====
2545
+ [ERROR_CODES.PAYMENT_COMPLIANCE_VIOLATION]: {
2546
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_VIOLATION,
2547
+ status: HTTP_STATUS.FORBIDDEN,
2548
+ category: ERROR_CATEGORY.Compliance,
2549
+ userMessage: "errors.payment.compliance.violation",
2550
+ severity: ERROR_SEVERITY.High,
2551
+ retryable: false
2552
+ },
2553
+ [ERROR_CODES.PAYMENT_COMPLIANCE_CHECK_FAILED]: {
2554
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_CHECK_FAILED,
2555
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
2556
+ category: ERROR_CATEGORY.Compliance,
2557
+ userMessage: "errors.payment.compliance.check_failed",
2558
+ severity: ERROR_SEVERITY.Medium,
2559
+ retryable: false
2560
+ },
2561
+ [ERROR_CODES.PAYMENT_COMPLIANCE_LIMIT_EXCEEDED]: {
2562
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_LIMIT_EXCEEDED,
2563
+ status: HTTP_STATUS.TOO_MANY_REQUESTS,
2564
+ category: ERROR_CATEGORY.Limits,
2565
+ userMessage: "errors.payment.compliance.limit_exceeded",
2566
+ severity: ERROR_SEVERITY.Medium,
2567
+ retryable: false
2568
+ },
2569
+ [ERROR_CODES.PAYMENT_COMPLIANCE_POLICY_MISSING]: {
2570
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_POLICY_MISSING,
2571
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2572
+ category: ERROR_CATEGORY.Configuration,
2573
+ userMessage: "errors.payment.compliance.policy_missing",
2574
+ severity: ERROR_SEVERITY.Critical,
2575
+ retryable: false
2576
+ },
2577
+ // ===== Processing Errors =====
2578
+ [ERROR_CODES.PAYMENT_PROCESSING_FAILED]: {
2579
+ code: ERROR_CODES.PAYMENT_PROCESSING_FAILED,
2580
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2581
+ category: ERROR_CATEGORY.Processing,
2582
+ userMessage: "errors.payment.processing.failed",
2583
+ severity: ERROR_SEVERITY.Critical,
2584
+ retryable: true
2585
+ },
2586
+ [ERROR_CODES.PAYMENT_PROCESSING_TIMEOUT]: {
2587
+ code: ERROR_CODES.PAYMENT_PROCESSING_TIMEOUT,
2588
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
2589
+ category: ERROR_CATEGORY.Timeout,
2590
+ userMessage: "errors.payment.processing.timeout",
2591
+ severity: ERROR_SEVERITY.High,
2592
+ retryable: true
2593
+ },
2594
+ [ERROR_CODES.PAYMENT_PROCESSING_GATEWAY_ERROR]: {
2595
+ code: ERROR_CODES.PAYMENT_PROCESSING_GATEWAY_ERROR,
2596
+ status: HTTP_STATUS.BAD_GATEWAY,
2597
+ category: ERROR_CATEGORY.Provider,
2598
+ userMessage: "errors.payment.processing.gateway_error",
2599
+ severity: ERROR_SEVERITY.High,
2600
+ retryable: true
2601
+ },
2602
+ [ERROR_CODES.PAYMENT_PROCESSING_DUPLICATE]: {
2603
+ code: ERROR_CODES.PAYMENT_PROCESSING_DUPLICATE,
2604
+ status: HTTP_STATUS.CONFLICT,
2605
+ category: ERROR_CATEGORY.Processing,
2606
+ userMessage: "errors.payment.processing.duplicate",
2607
+ severity: ERROR_SEVERITY.Low,
2608
+ retryable: false
2609
+ },
2610
+ [ERROR_CODES.PAYMENT_PROCESSING_UNEXPECTED_STATE]: {
2611
+ code: ERROR_CODES.PAYMENT_PROCESSING_UNEXPECTED_STATE,
2612
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2613
+ category: ERROR_CATEGORY.System,
2614
+ userMessage: "errors.payment.processing.unexpected_state",
2615
+ severity: ERROR_SEVERITY.Critical,
2616
+ retryable: false
2617
+ },
2618
+ // ===== Security Errors =====
2619
+ [ERROR_CODES.PAYMENT_SECURITY_VIOLATION]: {
2620
+ code: ERROR_CODES.PAYMENT_SECURITY_VIOLATION,
2621
+ status: HTTP_STATUS.FORBIDDEN,
2622
+ category: ERROR_CATEGORY.Security,
2623
+ userMessage: "errors.payment.security.violation",
2624
+ severity: ERROR_SEVERITY.Critical,
2625
+ retryable: false
2626
+ },
2627
+ [ERROR_CODES.PAYMENT_SECURITY_SIGNATURE_INVALID]: {
2628
+ code: ERROR_CODES.PAYMENT_SECURITY_SIGNATURE_INVALID,
2629
+ status: HTTP_STATUS.UNAUTHORIZED,
2630
+ category: ERROR_CATEGORY.Security,
2631
+ userMessage: "errors.payment.security.invalid_signature",
2632
+ severity: ERROR_SEVERITY.High,
2633
+ retryable: false
2634
+ },
2635
+ [ERROR_CODES.PAYMENT_SECURITY_ENCRYPTION_FAILED]: {
2636
+ code: ERROR_CODES.PAYMENT_SECURITY_ENCRYPTION_FAILED,
2637
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2638
+ category: ERROR_CATEGORY.Security,
2639
+ userMessage: "errors.payment.security.encryption_failed",
2640
+ severity: ERROR_SEVERITY.Critical,
2641
+ retryable: false
2642
+ },
2643
+ [ERROR_CODES.PAYMENT_SECURITY_FRAUD_DETECTED]: {
2644
+ code: ERROR_CODES.PAYMENT_SECURITY_FRAUD_DETECTED,
2645
+ status: HTTP_STATUS.FORBIDDEN,
2646
+ category: ERROR_CATEGORY.Fraud,
2647
+ userMessage: "errors.payment.security.fraud_detected",
2648
+ severity: ERROR_SEVERITY.Critical,
2649
+ retryable: false
2650
+ },
2651
+ [ERROR_CODES.PAYMENT_SECURITY_TOKEN_INVALID]: {
2652
+ code: ERROR_CODES.PAYMENT_SECURITY_TOKEN_INVALID,
2653
+ status: HTTP_STATUS.UNAUTHORIZED,
2654
+ category: ERROR_CATEGORY.Authentication,
2655
+ userMessage: "errors.payment.security.token_invalid",
2656
+ severity: ERROR_SEVERITY.Medium,
2657
+ retryable: false
2658
+ },
2659
+ // ===== Validation Errors =====
2660
+ [ERROR_CODES.PAYMENT_VALIDATION_FAILED]: {
2661
+ code: ERROR_CODES.PAYMENT_VALIDATION_FAILED,
2662
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
2663
+ category: ERROR_CATEGORY.Validation,
2664
+ userMessage: "errors.payment.validation.failed",
2665
+ severity: ERROR_SEVERITY.Medium,
2666
+ retryable: false
2667
+ },
2668
+ [ERROR_CODES.PAYMENT_VALIDATION_AMOUNT_INVALID]: {
2669
+ code: ERROR_CODES.PAYMENT_VALIDATION_AMOUNT_INVALID,
2670
+ status: HTTP_STATUS.BAD_REQUEST,
2671
+ category: ERROR_CATEGORY.Validation,
2672
+ userMessage: "errors.payment.validation.amount_invalid",
2673
+ severity: ERROR_SEVERITY.Medium,
2674
+ retryable: false
2675
+ },
2676
+ [ERROR_CODES.PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED]: {
2677
+ code: ERROR_CODES.PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED,
2678
+ status: HTTP_STATUS.BAD_REQUEST,
2679
+ category: ERROR_CATEGORY.Validation,
2680
+ userMessage: "errors.payment.validation.currency_unsupported",
2681
+ severity: ERROR_SEVERITY.Medium,
2682
+ retryable: false
2683
+ },
2684
+ [ERROR_CODES.PAYMENT_VALIDATION_METADATA_INVALID]: {
2685
+ code: ERROR_CODES.PAYMENT_VALIDATION_METADATA_INVALID,
2686
+ status: HTTP_STATUS.BAD_REQUEST,
2687
+ category: ERROR_CATEGORY.Validation,
2688
+ userMessage: "errors.payment.validation.metadata_invalid",
2689
+ severity: ERROR_SEVERITY.Low,
2690
+ retryable: false
2691
+ },
2692
+ [ERROR_CODES.PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD]: {
2693
+ code: ERROR_CODES.PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD,
2694
+ status: HTTP_STATUS.BAD_REQUEST,
2695
+ category: ERROR_CATEGORY.Validation,
2696
+ userMessage: "errors.payment.validation.required_field_missing",
2697
+ severity: ERROR_SEVERITY.Medium,
2698
+ retryable: false
2699
+ },
2700
+ // ===== Webhook Errors =====
2701
+ [ERROR_CODES.PAYMENT_WEBHOOK_SIGNATURE_INVALID]: {
2702
+ code: ERROR_CODES.PAYMENT_WEBHOOK_SIGNATURE_INVALID,
2703
+ status: HTTP_STATUS.UNAUTHORIZED,
2704
+ category: ERROR_CATEGORY.Webhook,
2705
+ userMessage: "errors.payment.webhook.signature_invalid",
2706
+ severity: ERROR_SEVERITY.High,
2707
+ retryable: false
2708
+ },
2709
+ [ERROR_CODES.PAYMENT_WEBHOOK_PROCESSING_FAILED]: {
2710
+ code: ERROR_CODES.PAYMENT_WEBHOOK_PROCESSING_FAILED,
2711
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2712
+ category: ERROR_CATEGORY.Webhook,
2713
+ userMessage: "errors.payment.webhook.processing_failed",
2714
+ severity: ERROR_SEVERITY.High,
2715
+ retryable: true
2716
+ },
2717
+ [ERROR_CODES.PAYMENT_WEBHOOK_VALIDATION_FAILED]: {
2718
+ code: ERROR_CODES.PAYMENT_WEBHOOK_VALIDATION_FAILED,
2719
+ status: HTTP_STATUS.BAD_REQUEST,
2720
+ category: ERROR_CATEGORY.Validation,
2721
+ userMessage: "errors.payment.webhook.validation_failed",
2722
+ severity: ERROR_SEVERITY.Medium,
2723
+ retryable: false
2724
+ },
2725
+ [ERROR_CODES.PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED]: {
2726
+ code: ERROR_CODES.PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED,
2727
+ status: HTTP_STATUS.BAD_REQUEST,
2728
+ category: ERROR_CATEGORY.Webhook,
2729
+ userMessage: "errors.payment.webhook.unsupported_event_type",
2730
+ severity: ERROR_SEVERITY.Medium,
2731
+ retryable: false
2732
+ },
2733
+ [ERROR_CODES.PAYMENT_WEBHOOK_HANDLER_NOT_FOUND]: {
2734
+ code: ERROR_CODES.PAYMENT_WEBHOOK_HANDLER_NOT_FOUND,
2735
+ status: HTTP_STATUS.NOT_FOUND,
2736
+ category: ERROR_CATEGORY.Webhook,
2737
+ userMessage: "errors.payment.webhook.handler_not_found",
2738
+ severity: ERROR_SEVERITY.Medium,
2739
+ retryable: false
2740
+ },
2741
+ // ===== Payment Adapter & Core Errors =====
2742
+ [ERROR_CODES.PAYMENT_ADAPTER_INIT_FAILED]: {
2743
+ code: ERROR_CODES.PAYMENT_ADAPTER_INIT_FAILED,
2744
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2745
+ category: ERROR_CATEGORY.Provider,
2746
+ userMessage: "errors.payment.adapter.init_failed",
2747
+ severity: ERROR_SEVERITY.High,
2748
+ retryable: false
2749
+ },
2750
+ [ERROR_CODES.PAYMENT_ADAPTER_SHUTDOWN_ERROR]: {
2751
+ code: ERROR_CODES.PAYMENT_ADAPTER_SHUTDOWN_ERROR,
2752
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2753
+ category: ERROR_CATEGORY.Provider,
2754
+ userMessage: "errors.payment.adapter.shutdown_error",
2755
+ severity: ERROR_SEVERITY.Medium,
2756
+ retryable: false
2757
+ },
2758
+ [ERROR_CODES.PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED]: {
2759
+ code: ERROR_CODES.PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED,
2760
+ status: HTTP_STATUS.BAD_REQUEST,
2761
+ category: ERROR_CATEGORY.Security,
2762
+ userMessage: "errors.payment.adapter.hmac_computation_failed",
2763
+ severity: ERROR_SEVERITY.High,
2764
+ retryable: false
2765
+ },
2766
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_PROVIDER]: {
2767
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_PROVIDER,
2768
+ status: HTTP_STATUS.BAD_REQUEST,
2769
+ category: ERROR_CATEGORY.Configuration,
2770
+ userMessage: "errors.payment.adapter.missing_provider",
2771
+ severity: ERROR_SEVERITY.Medium,
2772
+ retryable: false
2773
+ },
2774
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_ENVIRONMENT]: {
2775
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_ENVIRONMENT,
2776
+ status: HTTP_STATUS.BAD_REQUEST,
2777
+ category: ERROR_CATEGORY.Configuration,
2778
+ userMessage: "errors.payment.adapter.missing_environment",
2779
+ severity: ERROR_SEVERITY.Medium,
2780
+ retryable: false
2781
+ },
2782
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_CREDENTIALS]: {
2783
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_CREDENTIALS,
2784
+ status: HTTP_STATUS.UNAUTHORIZED,
2785
+ category: ERROR_CATEGORY.Authentication,
2786
+ userMessage: "errors.payment.adapter.missing_credentials",
2787
+ severity: ERROR_SEVERITY.Medium,
2788
+ retryable: false
2789
+ },
2790
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_WEBHOOK_URL]: {
2791
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_WEBHOOK_URL,
2792
+ status: HTTP_STATUS.BAD_REQUEST,
2793
+ category: ERROR_CATEGORY.Configuration,
2794
+ userMessage: "errors.payment.adapter.missing_webhook_url",
2795
+ severity: ERROR_SEVERITY.Medium,
2796
+ retryable: false
2797
+ },
2798
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT]: {
2799
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT,
2800
+ status: HTTP_STATUS.BAD_REQUEST,
2801
+ category: ERROR_CATEGORY.Configuration,
2802
+ userMessage: "errors.payment.adapter.missing_unregister_endpoint",
2803
+ severity: ERROR_SEVERITY.Medium,
2804
+ retryable: false
2805
+ },
2806
+ [ERROR_CODES.PAYMENT_ADAPTER_UNSUPPORTED_OPERATION]: {
2807
+ code: ERROR_CODES.PAYMENT_ADAPTER_UNSUPPORTED_OPERATION,
2808
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
2809
+ category: ERROR_CATEGORY.Provider,
2810
+ userMessage: "errors.payment.adapter.unsupported_operation",
2811
+ severity: ERROR_SEVERITY.Medium,
2812
+ retryable: false
2813
+ },
2814
+ [ERROR_CODES.PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED]: {
2815
+ code: ERROR_CODES.PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED,
2816
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2817
+ category: ERROR_CATEGORY.Provider,
2818
+ userMessage: "errors.payment.adapter.response_mapping_failed",
2819
+ severity: ERROR_SEVERITY.High,
2820
+ retryable: false
2821
+ },
2822
+ // ===== Idempotency & State Management =====
2823
+ [ERROR_CODES.PAYMENT_IDEMPOTENCY_VIOLATION]: {
2824
+ code: ERROR_CODES.PAYMENT_IDEMPOTENCY_VIOLATION,
2825
+ status: HTTP_STATUS.CONFLICT,
2826
+ category: ERROR_CATEGORY.Processing,
2827
+ userMessage: "errors.payment.idempotency.violation",
2828
+ severity: ERROR_SEVERITY.Medium,
2829
+ retryable: false
2830
+ },
2831
+ [ERROR_CODES.PAYMENT_IDEMPOTENCY_KEY_MISSING]: {
2832
+ code: ERROR_CODES.PAYMENT_IDEMPOTENCY_KEY_MISSING,
2833
+ status: HTTP_STATUS.BAD_REQUEST,
2834
+ category: ERROR_CATEGORY.Validation,
2835
+ userMessage: "errors.payment.idempotency.key_missing",
2836
+ severity: ERROR_SEVERITY.Low,
2837
+ retryable: false
2838
+ },
2839
+ [ERROR_CODES.PAYMENT_IDEMPOTENCY_STORE_ERROR]: {
2840
+ code: ERROR_CODES.PAYMENT_IDEMPOTENCY_STORE_ERROR,
2841
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2842
+ category: ERROR_CATEGORY.Cache,
2843
+ userMessage: "errors.payment.idempotency.store_error",
2844
+ severity: ERROR_SEVERITY.Medium,
2845
+ retryable: true
2846
+ },
2847
+ // ===== Routing & Strategy =====
2848
+ [ERROR_CODES.PAYMENT_ROUTING_FAILED]: {
2849
+ code: ERROR_CODES.PAYMENT_ROUTING_FAILED,
2850
+ status: HTTP_STATUS.BAD_REQUEST,
2851
+ category: ERROR_CATEGORY.Strategy,
2852
+ userMessage: "errors.payment.routing.failed",
2853
+ severity: ERROR_SEVERITY.High,
2854
+ retryable: false
2855
+ },
2856
+ [ERROR_CODES.PAYMENT_ROUTING_CONFIGURATION_INVALID]: {
2857
+ code: ERROR_CODES.PAYMENT_ROUTING_CONFIGURATION_INVALID,
2858
+ status: HTTP_STATUS.BAD_REQUEST,
2859
+ category: ERROR_CATEGORY.Configuration,
2860
+ userMessage: "errors.payment.routing.configuration_invalid",
2861
+ severity: ERROR_SEVERITY.Medium,
2862
+ retryable: false
2863
+ },
2864
+ [ERROR_CODES.PAYMENT_ROUTING_PROVIDER_UNAVAILABLE]: {
2865
+ code: ERROR_CODES.PAYMENT_ROUTING_PROVIDER_UNAVAILABLE,
2866
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
2867
+ category: ERROR_CATEGORY.Provider,
2868
+ userMessage: "errors.payment.routing.provider_unavailable",
2869
+ severity: ERROR_SEVERITY.High,
2263
2870
  retryable: true
2264
2871
  },
2265
2872
  // Misc
@@ -2310,6 +2917,96 @@ var ERROR_DEFINITIONS = {
2310
2917
  userMessage: "db.misc.invalid_count",
2311
2918
  severity: ERROR_SEVERITY.Medium,
2312
2919
  retryable: false
2920
+ },
2921
+ [ERROR_CODES.PAYMENT_ROUTING_RETRY_EXCEEDED]: {
2922
+ code: ERROR_CODES.PAYMENT_ROUTING_RETRY_EXCEEDED,
2923
+ status: HTTP_STATUS.TOO_MANY_REQUESTS,
2924
+ category: ERROR_CATEGORY.Retry,
2925
+ userMessage: "errors.payment.routing.retry_exceeded",
2926
+ severity: ERROR_SEVERITY.Medium,
2927
+ retryable: false
2928
+ },
2929
+ // ===== General Payment Framework Errors =====
2930
+ [ERROR_CODES.PAYMENT_SYSTEM_NOT_INITIALIZED]: {
2931
+ code: ERROR_CODES.PAYMENT_SYSTEM_NOT_INITIALIZED,
2932
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2933
+ category: ERROR_CATEGORY.System,
2934
+ userMessage: "errors.payment.system.not_initialized",
2935
+ severity: ERROR_SEVERITY.High,
2936
+ retryable: false
2937
+ },
2938
+ [ERROR_CODES.PAYMENT_CONTEXT_OPERATION_FAILED]: {
2939
+ code: ERROR_CODES.PAYMENT_CONTEXT_OPERATION_FAILED,
2940
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2941
+ category: ERROR_CATEGORY.System,
2942
+ userMessage: "errors.payment.context.operation_failed",
2943
+ severity: ERROR_SEVERITY.High,
2944
+ retryable: false
2945
+ },
2946
+ [ERROR_CODES.PAYMENT_INTERNAL_ERROR]: {
2947
+ code: ERROR_CODES.PAYMENT_INTERNAL_ERROR,
2948
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2949
+ category: ERROR_CATEGORY.System,
2950
+ userMessage: "errors.payment.internal_error",
2951
+ severity: ERROR_SEVERITY.Critical,
2952
+ retryable: false
2953
+ },
2954
+ [ERROR_CODES.PAYMENT_UNKNOWN_ERROR]: {
2955
+ code: ERROR_CODES.PAYMENT_UNKNOWN_ERROR,
2956
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2957
+ category: ERROR_CATEGORY.Unknown,
2958
+ userMessage: "errors.payment.unknown_error",
2959
+ severity: ERROR_SEVERITY.Critical,
2960
+ retryable: false
2961
+ },
2962
+ // ===== Event Lifecycle Errors =====
2963
+ [ERROR_CODES.PAYMENT_EVENT_EMIT_FAILED]: {
2964
+ code: ERROR_CODES.PAYMENT_EVENT_EMIT_FAILED,
2965
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2966
+ category: ERROR_CATEGORY.Processing,
2967
+ userMessage: "errors.payment.event.emit_failed",
2968
+ severity: ERROR_SEVERITY.Medium,
2969
+ retryable: false
2970
+ },
2971
+ [ERROR_CODES.PAYMENT_EVENT_INVALID_TYPE]: {
2972
+ code: ERROR_CODES.PAYMENT_EVENT_INVALID_TYPE,
2973
+ status: HTTP_STATUS.BAD_REQUEST,
2974
+ category: ERROR_CATEGORY.Validation,
2975
+ userMessage: "errors.payment.event.invalid_type",
2976
+ severity: ERROR_SEVERITY.Medium,
2977
+ retryable: false
2978
+ },
2979
+ [ERROR_CODES.PAYMENT_EVENT_CREATION_FAILED]: {
2980
+ code: ERROR_CODES.PAYMENT_EVENT_CREATION_FAILED,
2981
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2982
+ category: ERROR_CATEGORY.System,
2983
+ userMessage: "errors.payment.event.creation_failed",
2984
+ severity: ERROR_SEVERITY.High,
2985
+ retryable: false
2986
+ },
2987
+ [ERROR_CODES.PAYMENT_EVENT_HANDLER_TIMEOUT]: {
2988
+ code: ERROR_CODES.PAYMENT_EVENT_HANDLER_TIMEOUT,
2989
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
2990
+ category: ERROR_CATEGORY.Timeout,
2991
+ userMessage: "errors.payment.event.handler_timeout",
2992
+ severity: ERROR_SEVERITY.Medium,
2993
+ retryable: true
2994
+ },
2995
+ [ERROR_CODES.PAYMENT_EVENT_HANDLER_INVALID_RESULT]: {
2996
+ code: ERROR_CODES.PAYMENT_EVENT_HANDLER_INVALID_RESULT,
2997
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
2998
+ category: ERROR_CATEGORY.Processing,
2999
+ userMessage: "errors.payment.event.handler_invalid_result",
3000
+ severity: ERROR_SEVERITY.Medium,
3001
+ retryable: false
3002
+ },
3003
+ [ERROR_CODES.PAYMENT_EVENT_LIFECYCLE_FAILURE]: {
3004
+ code: ERROR_CODES.PAYMENT_EVENT_LIFECYCLE_FAILURE,
3005
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
3006
+ category: ERROR_CATEGORY.Processing,
3007
+ userMessage: "errors.payment.event.lifecycle_failure",
3008
+ severity: ERROR_SEVERITY.High,
3009
+ retryable: false
2313
3010
  }
2314
3011
  };
2315
3012
 
@@ -2930,24 +3627,6 @@ var WEBHOOK_VERIFICATION_REASON = /* @__PURE__ */ ((WEBHOOK_VERIFICATION_REASON2
2930
3627
  WEBHOOK_VERIFICATION_REASON2["UnknownEndpoint"] = "unknown_endpoint";
2931
3628
  return WEBHOOK_VERIFICATION_REASON2;
2932
3629
  })(WEBHOOK_VERIFICATION_REASON || {});
2933
- var PAYMENT_ERROR_CATEGORY = /* @__PURE__ */ ((PAYMENT_ERROR_CATEGORY2) => {
2934
- PAYMENT_ERROR_CATEGORY2["Validation"] = "validation";
2935
- PAYMENT_ERROR_CATEGORY2["Authentication"] = "authentication";
2936
- PAYMENT_ERROR_CATEGORY2["Authorization"] = "authorization";
2937
- PAYMENT_ERROR_CATEGORY2["Processing"] = "processing";
2938
- PAYMENT_ERROR_CATEGORY2["Provider"] = "provider";
2939
- PAYMENT_ERROR_CATEGORY2["Network"] = "network";
2940
- PAYMENT_ERROR_CATEGORY2["Fraud"] = "fraud";
2941
- PAYMENT_ERROR_CATEGORY2["Compliance"] = "compliance";
2942
- PAYMENT_ERROR_CATEGORY2["Limits"] = "limits";
2943
- PAYMENT_ERROR_CATEGORY2["Configuration"] = "configuration";
2944
- PAYMENT_ERROR_CATEGORY2["Timeout"] = "timeout";
2945
- PAYMENT_ERROR_CATEGORY2["System"] = "system";
2946
- PAYMENT_ERROR_CATEGORY2["Webhook"] = "webhook";
2947
- PAYMENT_ERROR_CATEGORY2["Refund"] = "refund";
2948
- PAYMENT_ERROR_CATEGORY2["Security"] = "security";
2949
- return PAYMENT_ERROR_CATEGORY2;
2950
- })(PAYMENT_ERROR_CATEGORY || {});
2951
3630
 
2952
3631
  // src/notifications/enums.ts
2953
3632
  var NOTIFICATION_PROVIDERS = {
@@ -3835,8 +4514,24 @@ var ADAPTER_TYPES = /* @__PURE__ */ ((ADAPTER_TYPES2) => {
3835
4514
  return ADAPTER_TYPES2;
3836
4515
  })(ADAPTER_TYPES || {});
3837
4516
 
4517
+ // src/db/dbConstant.ts
4518
+ var ENCRYPTION_DEFAULTS = {
4519
+ /** Default encryption algorithm - AES-256-GCM provides authenticated encryption */
4520
+ ALGORITHM: "aes-256-gcm",
4521
+ /** IV length for AES-256-GCM in bytes */
4522
+ IV_LENGTH: 16,
4523
+ /** Expected parts in encrypted text format (iv:authTag:encrypted) */
4524
+ ENCRYPTED_PARTS_COUNT: 3
4525
+ };
4526
+ var ALERT_RULE_ID = {
4527
+ POOL_EXHAUSTION: "pool-exhaustion",
4528
+ SLOW_QUERY: "slow-query",
4529
+ REPLICA_LAG: "replica-lag"
4530
+ };
4531
+
3838
4532
  exports.ADAPTERS = ADAPTERS;
3839
4533
  exports.ADAPTER_TYPES = ADAPTER_TYPES;
4534
+ exports.ALERT_RULE_ID = ALERT_RULE_ID;
3840
4535
  exports.ALERT_SEVERITIES = ALERT_SEVERITIES;
3841
4536
  exports.ALERT_SEVERITY = ALERT_SEVERITY;
3842
4537
  exports.ALERT_SOURCE = ALERT_SOURCE;
@@ -3870,6 +4565,7 @@ exports.DEBUGGER_CONFIG_SOURCES = DEBUGGER_CONFIG_SOURCES;
3870
4565
  exports.DEBUG_EVENTS = DEBUG_EVENTS;
3871
4566
  exports.DEFAULT_THRESHOLDS = DEFAULT_THRESHOLDS;
3872
4567
  exports.DeviceTokenSchema = DeviceTokenSchema;
4568
+ exports.ENCRYPTION_DEFAULTS = ENCRYPTION_DEFAULTS;
3873
4569
  exports.ERROR_CATEGORY = ERROR_CATEGORY;
3874
4570
  exports.ERROR_CATEGORY_TO_EMITTER_KEY = ERROR_CATEGORY_TO_EMITTER_KEY;
3875
4571
  exports.ERROR_CODES = ERROR_CODES;
@@ -3927,7 +4623,7 @@ exports.NetworkPresetNames = NetworkPresetNames;
3927
4623
  exports.NotificationCategorySchema = NotificationCategorySchema;
3928
4624
  exports.OPERATIONS = COMMON_OPERATIONS;
3929
4625
  exports.PACKAGE_STATUS_CODES = INTERNAL_STATUS_CODES;
3930
- exports.PAYMENT_ERROR_CATEGORY = PAYMENT_ERROR_CATEGORY;
4626
+ exports.PAYMENT_ERROR_CODES = PAYMENT_ERROR_CODES;
3931
4627
  exports.PAYMENT_EVENT_CATEGORY = PAYMENT_EVENT_CATEGORY;
3932
4628
  exports.PAYMENT_EVENT_ERROR_CATEGORY = PAYMENT_EVENT_ERROR_CATEGORY;
3933
4629
  exports.PAYMENT_EVENT_TYPE = PAYMENT_EVENT_TYPE;