@plyaz/types 1.14.9 → 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.
@@ -72,6 +72,20 @@ var ERROR_CATEGORY = {
72
72
  Template: "template",
73
73
  /** Configuration-related error (e.g., invalid or missing configuration). */
74
74
  Configuration: "configuration",
75
+ /** Payment processing-related error (e.g., capture or settlement failure). */
76
+ Processing: "processing",
77
+ /** Fraud detection or prevention failure. */
78
+ Fraud: "fraud",
79
+ /** Compliance-related error (e.g., AML/KYC validation failure). */
80
+ Compliance: "compliance",
81
+ /** Limits or quota-related error (e.g., exceeded transaction limit). */
82
+ Limits: "limits",
83
+ /** System-level error (unexpected internal issue). */
84
+ System: "system",
85
+ /** Refund-related error (e.g., duplicate or failed refund). */
86
+ Refund: "refund",
87
+ /** Security-related error (e.g., encryption or signature failure). */
88
+ Security: "security",
75
89
  /** Unknown or unclassified error. */
76
90
  Unknown: "unknown"
77
91
  };
@@ -130,6 +144,13 @@ var ERROR_CATEGORY_TO_EMITTER_KEY = {
130
144
  [ERROR_CATEGORY.Webhook]: "webhook",
131
145
  [ERROR_CATEGORY.Template]: "template",
132
146
  [ERROR_CATEGORY.Configuration]: "configuration",
147
+ [ERROR_CATEGORY.Processing]: "processing",
148
+ [ERROR_CATEGORY.Fraud]: "fraud",
149
+ [ERROR_CATEGORY.Compliance]: "compliance",
150
+ [ERROR_CATEGORY.Limits]: "limits",
151
+ [ERROR_CATEGORY.System]: "system",
152
+ [ERROR_CATEGORY.Refund]: "refund",
153
+ [ERROR_CATEGORY.Security]: "security",
133
154
  [ERROR_CATEGORY.Unknown]: "unknown"
134
155
  };
135
156
  var COMMON_OPERATIONS = {
@@ -278,6 +299,10 @@ var HTTP_STATUS = {
278
299
  * 409 Conflict - The request conflicts with the current state of the server
279
300
  */
280
301
  CONFLICT: 409,
302
+ /**
303
+ * 422 Unprocessable Entity - The request was well-formed but was unable to be followed due to semantic errors
304
+ */
305
+ UNPROCESSABLE_ENTITY: 422,
281
306
  /**
282
307
  * 429 Too Many Requests - The user has sent too many requests in a given amount of time
283
308
  */
@@ -524,7 +549,86 @@ var ERROR_CODES = {
524
549
  DB_INVALID_SHELL_ARG: "DB_INVALID_SHELL_ARG",
525
550
  DB_INVALID_BETWEEN_OPERATOR: "DB_INVALID_BETWEEN_OPERATOR",
526
551
  DB_INVALID_IN_OPERATOR: "DB_INVALID_IN_OPERATOR",
527
- DB_INVALID_COUNT: "DB_INVALID_COUNT"
552
+ DB_INVALID_COUNT: "DB_INVALID_COUNT",
553
+ // ===== Payments Package Errors =====
554
+ // Refund
555
+ PAYMENT_REFUND_FAILED: "payment.refund.failed",
556
+ PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found",
557
+ PAYMENT_REFUND_ALREADY_PROCESSED: "payment.refund.already.processed",
558
+ PAYMENT_REFUND_AMOUNT_INVALID: "payment.refund.amount.invalid",
559
+ PAYMENT_REFUND_VALIDATION_FAILED: "payment.refund.validation.failed",
560
+ PAYMENT_REFUND_TIMEOUT: "payment.refund.timeout",
561
+ // Provider
562
+ PAYMENT_PROVIDER_ERROR: "payment.provider.error",
563
+ PAYMENT_PROVIDER_UNAVAILABLE: "payment.provider.unavailable",
564
+ PAYMENT_PROVIDER_CONFIGURATION_INVALID: "payment.provider.configuration.invalid",
565
+ PAYMENT_PROVIDER_RESPONSE_INVALID: "payment.provider.response.invalid",
566
+ PAYMENT_PROVIDER_TIMEOUT: "payment.provider.timeout",
567
+ PAYMENT_PROVIDER_AUTH_FAILED: "payment.provider.auth.failed",
568
+ // Compliance
569
+ PAYMENT_COMPLIANCE_VIOLATION: "payment.compliance.violation",
570
+ PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed",
571
+ PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded",
572
+ PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing",
573
+ // Processing
574
+ PAYMENT_PROCESSING_FAILED: "payment.processing.failed",
575
+ PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout",
576
+ PAYMENT_PROCESSING_GATEWAY_ERROR: "payment.processing.gateway.error",
577
+ PAYMENT_PROCESSING_DUPLICATE: "payment.processing.duplicate",
578
+ PAYMENT_PROCESSING_UNEXPECTED_STATE: "payment.processing.unexpected.state",
579
+ // Security
580
+ PAYMENT_SECURITY_VIOLATION: "payment.security.violation",
581
+ PAYMENT_SECURITY_SIGNATURE_INVALID: "payment.security.signature.invalid",
582
+ PAYMENT_SECURITY_ENCRYPTION_FAILED: "payment.security.encryption.failed",
583
+ PAYMENT_SECURITY_FRAUD_DETECTED: "payment.security.fraud.detected",
584
+ PAYMENT_SECURITY_TOKEN_INVALID: "payment.security.token.invalid",
585
+ // Validation
586
+ PAYMENT_VALIDATION_FAILED: "payment.validation.failed",
587
+ PAYMENT_VALIDATION_AMOUNT_INVALID: "payment.validation.amount.invalid",
588
+ PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED: "payment.validation.currency.unsupported",
589
+ PAYMENT_VALIDATION_METADATA_INVALID: "payment.validation.metadata.invalid",
590
+ PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD: "payment.validation.field.required",
591
+ // Webhook
592
+ PAYMENT_WEBHOOK_SIGNATURE_INVALID: "payment.webhook.signature.invalid",
593
+ PAYMENT_WEBHOOK_PROCESSING_FAILED: "payment.webhook.processing.failed",
594
+ PAYMENT_WEBHOOK_VALIDATION_FAILED: "payment.webhook.validation.failed",
595
+ PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED: "payment.webhook.event.type.unsupported",
596
+ PAYMENT_WEBHOOK_HANDLER_NOT_FOUND: "payment.webhook.handler.not.found",
597
+ // ===== Payment Adapter & Core Errors =====
598
+ PAYMENT_ADAPTER_INIT_FAILED: "payment.adapter.init.failed",
599
+ PAYMENT_ADAPTER_SHUTDOWN_ERROR: "payment.adapter.shutdown.error",
600
+ PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED: "payment.adapter.hmac.computation.failed",
601
+ PAYMENT_ADAPTER_MISSING_PROVIDER: "payment.adapter.missing.provider",
602
+ PAYMENT_ADAPTER_MISSING_ENVIRONMENT: "payment.adapter.missing.environment",
603
+ PAYMENT_ADAPTER_MISSING_CREDENTIALS: "payment.adapter.missing.credentials",
604
+ PAYMENT_ADAPTER_MISSING_WEBHOOK_URL: "payment.adapter.missing.webhook.url",
605
+ PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT: "payment.adapter.missing.unregister.endpoint",
606
+ PAYMENT_ADAPTER_UNSUPPORTED_OPERATION: "payment.adapter.unsupported.operation",
607
+ PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED: "payment.adapter.response.mapping.failed",
608
+ // Idempotency & State Management
609
+ PAYMENT_IDEMPOTENCY_VIOLATION: "payment.idempotency.violation",
610
+ PAYMENT_IDEMPOTENCY_KEY_MISSING: "payment.idempotency.key.missing",
611
+ PAYMENT_IDEMPOTENCY_STORE_ERROR: "payment.idempotency.store.error",
612
+ // Routing & Strategy
613
+ PAYMENT_ROUTING_FAILED: "payment.routing.failed",
614
+ PAYMENT_ROUTING_CONFIGURATION_INVALID: "payment.routing.configuration.invalid",
615
+ PAYMENT_ROUTING_PROVIDER_UNAVAILABLE: "payment.routing.provider.unavailable",
616
+ PAYMENT_ROUTING_RETRY_EXCEEDED: "payment.routing.retry.exceeded",
617
+ // General Payment Framework Errors
618
+ PAYMENT_SYSTEM_NOT_INITIALIZED: "payment.system.not.initialized",
619
+ PAYMENT_CONTEXT_OPERATION_FAILED: "payment.context.operation.failed",
620
+ PAYMENT_INTERNAL_ERROR: "payment.internal.error",
621
+ PAYMENT_UNKNOWN_ERROR: "payment.unknown.error",
622
+ /**
623
+ * Thrown when an event could not be emitted due to internal state or creation errors.
624
+ * Typically non-retryable, indicates a logic or validation fault.
625
+ */
626
+ PAYMENT_EVENT_EMIT_FAILED: "PAYMENT_EVENT_EMIT_FAILED",
627
+ PAYMENT_EVENT_INVALID_TYPE: "PAYMENT_EVENT_INVALID_TYPE",
628
+ PAYMENT_EVENT_CREATION_FAILED: "PAYMENT_EVENT_CREATION_FAILED",
629
+ PAYMENT_EVENT_HANDLER_TIMEOUT: "PAYMENT_EVENT_HANDLER_TIMEOUT",
630
+ PAYMENT_EVENT_HANDLER_INVALID_RESULT: "PAYMENT_EVENT_HANDLER_INVALID_RESULT",
631
+ PAYMENT_EVENT_LIFECYCLE_FAILURE: "PAYMENT_EVENT_LIFECYCLE_FAILURE"
528
632
  };
529
633
  var API_ERROR_CODES = {
530
634
  CLIENT_INITIALIZATION_FAILED: ERROR_CODES.CLIENT_INITIALIZATION_FAILED,
@@ -633,6 +737,86 @@ var NOTIFICATION_ERROR_CODES = {
633
737
  UNKNOWN_ERROR: ERROR_CODES.NOTIFICATION_UNKNOWN_ERROR,
634
738
  INITIALIZATION_FAILED: ERROR_CODES.NOTIFICATION_INITIALIZATION_FAILED
635
739
  };
740
+ var PAYMENT_ERROR_CODES = {
741
+ // Refund
742
+ PAYMENT_REFUND_FAILED: "payment.refund.failed",
743
+ PAYMENT_REFUND_NOT_FOUND: "payment.refund.not.found",
744
+ PAYMENT_REFUND_ALREADY_PROCESSED: "payment.refund.already.processed",
745
+ PAYMENT_REFUND_AMOUNT_INVALID: "payment.refund.amount.invalid",
746
+ PAYMENT_REFUND_VALIDATION_FAILED: "payment.refund.validation.failed",
747
+ PAYMENT_REFUND_TIMEOUT: "payment.refund.timeout",
748
+ // Provider
749
+ PAYMENT_PROVIDER_ERROR: "payment.provider.error",
750
+ PAYMENT_PROVIDER_UNAVAILABLE: "payment.provider.unavailable",
751
+ PAYMENT_PROVIDER_CONFIGURATION_INVALID: "payment.provider.configuration.invalid",
752
+ PAYMENT_PROVIDER_RESPONSE_INVALID: "payment.provider.response.invalid",
753
+ PAYMENT_PROVIDER_TIMEOUT: "payment.provider.timeout",
754
+ PAYMENT_PROVIDER_AUTH_FAILED: "payment.provider.auth.failed",
755
+ // Compliance
756
+ PAYMENT_COMPLIANCE_VIOLATION: "payment.compliance.violation",
757
+ PAYMENT_COMPLIANCE_CHECK_FAILED: "payment.compliance.check.failed",
758
+ PAYMENT_COMPLIANCE_LIMIT_EXCEEDED: "payment.compliance.limit.exceeded",
759
+ PAYMENT_COMPLIANCE_POLICY_MISSING: "payment.compliance.policy.missing",
760
+ // Processing
761
+ PAYMENT_PROCESSING_FAILED: "payment.processing.failed",
762
+ PAYMENT_PROCESSING_TIMEOUT: "payment.processing.timeout",
763
+ PAYMENT_PROCESSING_GATEWAY_ERROR: "payment.processing.gateway.error",
764
+ PAYMENT_PROCESSING_DUPLICATE: "payment.processing.duplicate",
765
+ PAYMENT_PROCESSING_UNEXPECTED_STATE: "payment.processing.unexpected.state",
766
+ // Security
767
+ PAYMENT_SECURITY_VIOLATION: "payment.security.violation",
768
+ PAYMENT_SECURITY_SIGNATURE_INVALID: "payment.security.signature.invalid",
769
+ PAYMENT_SECURITY_ENCRYPTION_FAILED: "payment.security.encryption.failed",
770
+ PAYMENT_SECURITY_FRAUD_DETECTED: "payment.security.fraud.detected",
771
+ PAYMENT_SECURITY_TOKEN_INVALID: "payment.security.token.invalid",
772
+ // Validation
773
+ PAYMENT_VALIDATION_FAILED: "payment.validation.failed",
774
+ PAYMENT_VALIDATION_AMOUNT_INVALID: "payment.validation.amount.invalid",
775
+ PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED: "payment.validation.currency.unsupported",
776
+ PAYMENT_VALIDATION_METADATA_INVALID: "payment.validation.metadata.invalid",
777
+ PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD: "payment.validation.field.required",
778
+ // Webhook
779
+ PAYMENT_WEBHOOK_SIGNATURE_INVALID: "payment.webhook.signature.invalid",
780
+ PAYMENT_WEBHOOK_PROCESSING_FAILED: "payment.webhook.processing.failed",
781
+ PAYMENT_WEBHOOK_VALIDATION_FAILED: "payment.webhook.validation.failed",
782
+ PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED: "payment.webhook.event.type.unsupported",
783
+ PAYMENT_WEBHOOK_HANDLER_NOT_FOUND: "payment.webhook.handler.not.found",
784
+ // ===== Payment Adapter & Core Errors =====
785
+ PAYMENT_ADAPTER_INIT_FAILED: "payment.adapter.init.failed",
786
+ PAYMENT_ADAPTER_SHUTDOWN_ERROR: "payment.adapter.shutdown.error",
787
+ PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED: "payment.adapter.hmac.computation.failed",
788
+ PAYMENT_ADAPTER_MISSING_PROVIDER: "payment.adapter.missing.provider",
789
+ PAYMENT_ADAPTER_MISSING_ENVIRONMENT: "payment.adapter.missing.environment",
790
+ PAYMENT_ADAPTER_MISSING_CREDENTIALS: "payment.adapter.missing.credentials",
791
+ PAYMENT_ADAPTER_MISSING_WEBHOOK_URL: "payment.adapter.missing.webhook.url",
792
+ PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT: "payment.adapter.missing.unregister.endpoint",
793
+ PAYMENT_ADAPTER_UNSUPPORTED_OPERATION: "payment.adapter.unsupported.operation",
794
+ PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED: "payment.adapter.response.mapping.failed",
795
+ // Idempotency & State Management
796
+ PAYMENT_IDEMPOTENCY_VIOLATION: "payment.idempotency.violation",
797
+ PAYMENT_IDEMPOTENCY_KEY_MISSING: "payment.idempotency.key.missing",
798
+ PAYMENT_IDEMPOTENCY_STORE_ERROR: "payment.idempotency.store.error",
799
+ // Routing & Strategy
800
+ PAYMENT_ROUTING_FAILED: "payment.routing.failed",
801
+ PAYMENT_ROUTING_CONFIGURATION_INVALID: "payment.routing.configuration.invalid",
802
+ PAYMENT_ROUTING_PROVIDER_UNAVAILABLE: "payment.routing.provider.unavailable",
803
+ PAYMENT_ROUTING_RETRY_EXCEEDED: "payment.routing.retry.exceeded",
804
+ // General Payment Framework Errors
805
+ PAYMENT_SYSTEM_NOT_INITIALIZED: "payment.system.not.initialized",
806
+ PAYMENT_CONTEXT_OPERATION_FAILED: "payment.context.operation.failed",
807
+ PAYMENT_INTERNAL_ERROR: "payment.internal.error",
808
+ PAYMENT_UNKNOWN_ERROR: "payment.unknown.error",
809
+ /**
810
+ * Thrown when an event could not be emitted due to internal state or creation errors.
811
+ * Typically non-retryable, indicates a logic or validation fault.
812
+ */
813
+ PAYMENT_EVENT_EMIT_FAILED: "PAYMENT_EVENT_EMIT_FAILED",
814
+ PAYMENT_EVENT_INVALID_TYPE: "PAYMENT_EVENT_INVALID_TYPE",
815
+ PAYMENT_EVENT_CREATION_FAILED: "PAYMENT_EVENT_CREATION_FAILED",
816
+ PAYMENT_EVENT_HANDLER_TIMEOUT: "PAYMENT_EVENT_HANDLER_TIMEOUT",
817
+ PAYMENT_EVENT_HANDLER_INVALID_RESULT: "PAYMENT_EVENT_HANDLER_INVALID_RESULT",
818
+ PAYMENT_EVENT_LIFECYCLE_FAILURE: "PAYMENT_EVENT_LIFECYCLE_FAILURE"
819
+ };
636
820
  var ERROR_DEFINITIONS = {
637
821
  // ===== API Package Error Definitions =====
638
822
  // Authentication
@@ -2006,6 +2190,433 @@ var ERROR_DEFINITIONS = {
2006
2190
  category: ERROR_CATEGORY.Server,
2007
2191
  userMessage: "db.file.s3_upload_failed",
2008
2192
  severity: ERROR_SEVERITY.High,
2193
+ retryable: false
2194
+ },
2195
+ // ===== Payments Package Error Definitions =====
2196
+ // ===== Refund Errors =====
2197
+ [ERROR_CODES.PAYMENT_REFUND_FAILED]: {
2198
+ code: ERROR_CODES.PAYMENT_REFUND_FAILED,
2199
+ status: HTTP_STATUS.BAD_REQUEST,
2200
+ category: ERROR_CATEGORY.Refund,
2201
+ userMessage: "errors.payment.refund.failed",
2202
+ severity: ERROR_SEVERITY.High,
2203
+ retryable: false
2204
+ },
2205
+ [ERROR_CODES.PAYMENT_REFUND_NOT_FOUND]: {
2206
+ code: ERROR_CODES.PAYMENT_REFUND_NOT_FOUND,
2207
+ status: HTTP_STATUS.NOT_FOUND,
2208
+ category: ERROR_CATEGORY.Refund,
2209
+ userMessage: "errors.payment.refund.not_found",
2210
+ severity: ERROR_SEVERITY.Medium,
2211
+ retryable: false
2212
+ },
2213
+ [ERROR_CODES.PAYMENT_REFUND_ALREADY_PROCESSED]: {
2214
+ code: ERROR_CODES.PAYMENT_REFUND_ALREADY_PROCESSED,
2215
+ status: HTTP_STATUS.CONFLICT,
2216
+ category: ERROR_CATEGORY.Refund,
2217
+ userMessage: "errors.payment.refund.already_processed",
2218
+ severity: ERROR_SEVERITY.Low,
2219
+ retryable: false
2220
+ },
2221
+ [ERROR_CODES.PAYMENT_REFUND_AMOUNT_INVALID]: {
2222
+ code: ERROR_CODES.PAYMENT_REFUND_AMOUNT_INVALID,
2223
+ status: HTTP_STATUS.BAD_REQUEST,
2224
+ category: ERROR_CATEGORY.Validation,
2225
+ userMessage: "errors.payment.refund.amount_invalid",
2226
+ severity: ERROR_SEVERITY.Medium,
2227
+ retryable: false
2228
+ },
2229
+ [ERROR_CODES.PAYMENT_REFUND_VALIDATION_FAILED]: {
2230
+ code: ERROR_CODES.PAYMENT_REFUND_VALIDATION_FAILED,
2231
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
2232
+ category: ERROR_CATEGORY.Validation,
2233
+ userMessage: "errors.payment.refund.validation_failed",
2234
+ severity: ERROR_SEVERITY.Medium,
2235
+ retryable: false
2236
+ },
2237
+ [ERROR_CODES.PAYMENT_REFUND_TIMEOUT]: {
2238
+ code: ERROR_CODES.PAYMENT_REFUND_TIMEOUT,
2239
+ status: HTTP_STATUS.REQUEST_TIMEOUT,
2240
+ category: ERROR_CATEGORY.Timeout,
2241
+ userMessage: "errors.payment.refund.timeout",
2242
+ severity: ERROR_SEVERITY.High,
2243
+ retryable: true
2244
+ },
2245
+ // ===== Provider Errors =====
2246
+ [ERROR_CODES.PAYMENT_PROVIDER_ERROR]: {
2247
+ code: ERROR_CODES.PAYMENT_PROVIDER_ERROR,
2248
+ status: HTTP_STATUS.BAD_GATEWAY,
2249
+ category: ERROR_CATEGORY.Provider,
2250
+ userMessage: "errors.payment.provider.generic",
2251
+ severity: ERROR_SEVERITY.High,
2252
+ retryable: true
2253
+ },
2254
+ [ERROR_CODES.PAYMENT_PROVIDER_UNAVAILABLE]: {
2255
+ code: ERROR_CODES.PAYMENT_PROVIDER_UNAVAILABLE,
2256
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
2257
+ category: ERROR_CATEGORY.Provider,
2258
+ userMessage: "errors.payment.provider.unavailable",
2259
+ severity: ERROR_SEVERITY.Critical,
2260
+ retryable: true
2261
+ },
2262
+ [ERROR_CODES.PAYMENT_PROVIDER_CONFIGURATION_INVALID]: {
2263
+ code: ERROR_CODES.PAYMENT_PROVIDER_CONFIGURATION_INVALID,
2264
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2265
+ category: ERROR_CATEGORY.Configuration,
2266
+ userMessage: "errors.payment.provider.invalid_config",
2267
+ severity: ERROR_SEVERITY.Critical,
2268
+ retryable: false
2269
+ },
2270
+ [ERROR_CODES.PAYMENT_PROVIDER_RESPONSE_INVALID]: {
2271
+ code: ERROR_CODES.PAYMENT_PROVIDER_RESPONSE_INVALID,
2272
+ status: HTTP_STATUS.BAD_GATEWAY,
2273
+ category: ERROR_CATEGORY.Provider,
2274
+ userMessage: "errors.payment.provider.invalid_response",
2275
+ severity: ERROR_SEVERITY.High,
2276
+ retryable: false
2277
+ },
2278
+ [ERROR_CODES.PAYMENT_PROVIDER_TIMEOUT]: {
2279
+ code: ERROR_CODES.PAYMENT_PROVIDER_TIMEOUT,
2280
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
2281
+ category: ERROR_CATEGORY.Timeout,
2282
+ userMessage: "errors.payment.provider.timeout",
2283
+ severity: ERROR_SEVERITY.High,
2284
+ retryable: true
2285
+ },
2286
+ [ERROR_CODES.PAYMENT_PROVIDER_AUTH_FAILED]: {
2287
+ code: ERROR_CODES.PAYMENT_PROVIDER_AUTH_FAILED,
2288
+ status: HTTP_STATUS.UNAUTHORIZED,
2289
+ category: ERROR_CATEGORY.Authentication,
2290
+ userMessage: "errors.payment.provider.auth_failed",
2291
+ severity: ERROR_SEVERITY.Medium,
2292
+ retryable: false
2293
+ },
2294
+ // ===== Compliance Errors =====
2295
+ [ERROR_CODES.PAYMENT_COMPLIANCE_VIOLATION]: {
2296
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_VIOLATION,
2297
+ status: HTTP_STATUS.FORBIDDEN,
2298
+ category: ERROR_CATEGORY.Compliance,
2299
+ userMessage: "errors.payment.compliance.violation",
2300
+ severity: ERROR_SEVERITY.High,
2301
+ retryable: false
2302
+ },
2303
+ [ERROR_CODES.PAYMENT_COMPLIANCE_CHECK_FAILED]: {
2304
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_CHECK_FAILED,
2305
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
2306
+ category: ERROR_CATEGORY.Compliance,
2307
+ userMessage: "errors.payment.compliance.check_failed",
2308
+ severity: ERROR_SEVERITY.Medium,
2309
+ retryable: false
2310
+ },
2311
+ [ERROR_CODES.PAYMENT_COMPLIANCE_LIMIT_EXCEEDED]: {
2312
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_LIMIT_EXCEEDED,
2313
+ status: HTTP_STATUS.TOO_MANY_REQUESTS,
2314
+ category: ERROR_CATEGORY.Limits,
2315
+ userMessage: "errors.payment.compliance.limit_exceeded",
2316
+ severity: ERROR_SEVERITY.Medium,
2317
+ retryable: false
2318
+ },
2319
+ [ERROR_CODES.PAYMENT_COMPLIANCE_POLICY_MISSING]: {
2320
+ code: ERROR_CODES.PAYMENT_COMPLIANCE_POLICY_MISSING,
2321
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2322
+ category: ERROR_CATEGORY.Configuration,
2323
+ userMessage: "errors.payment.compliance.policy_missing",
2324
+ severity: ERROR_SEVERITY.Critical,
2325
+ retryable: false
2326
+ },
2327
+ // ===== Processing Errors =====
2328
+ [ERROR_CODES.PAYMENT_PROCESSING_FAILED]: {
2329
+ code: ERROR_CODES.PAYMENT_PROCESSING_FAILED,
2330
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2331
+ category: ERROR_CATEGORY.Processing,
2332
+ userMessage: "errors.payment.processing.failed",
2333
+ severity: ERROR_SEVERITY.Critical,
2334
+ retryable: true
2335
+ },
2336
+ [ERROR_CODES.PAYMENT_PROCESSING_TIMEOUT]: {
2337
+ code: ERROR_CODES.PAYMENT_PROCESSING_TIMEOUT,
2338
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
2339
+ category: ERROR_CATEGORY.Timeout,
2340
+ userMessage: "errors.payment.processing.timeout",
2341
+ severity: ERROR_SEVERITY.High,
2342
+ retryable: true
2343
+ },
2344
+ [ERROR_CODES.PAYMENT_PROCESSING_GATEWAY_ERROR]: {
2345
+ code: ERROR_CODES.PAYMENT_PROCESSING_GATEWAY_ERROR,
2346
+ status: HTTP_STATUS.BAD_GATEWAY,
2347
+ category: ERROR_CATEGORY.Provider,
2348
+ userMessage: "errors.payment.processing.gateway_error",
2349
+ severity: ERROR_SEVERITY.High,
2350
+ retryable: true
2351
+ },
2352
+ [ERROR_CODES.PAYMENT_PROCESSING_DUPLICATE]: {
2353
+ code: ERROR_CODES.PAYMENT_PROCESSING_DUPLICATE,
2354
+ status: HTTP_STATUS.CONFLICT,
2355
+ category: ERROR_CATEGORY.Processing,
2356
+ userMessage: "errors.payment.processing.duplicate",
2357
+ severity: ERROR_SEVERITY.Low,
2358
+ retryable: false
2359
+ },
2360
+ [ERROR_CODES.PAYMENT_PROCESSING_UNEXPECTED_STATE]: {
2361
+ code: ERROR_CODES.PAYMENT_PROCESSING_UNEXPECTED_STATE,
2362
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2363
+ category: ERROR_CATEGORY.System,
2364
+ userMessage: "errors.payment.processing.unexpected_state",
2365
+ severity: ERROR_SEVERITY.Critical,
2366
+ retryable: false
2367
+ },
2368
+ // ===== Security Errors =====
2369
+ [ERROR_CODES.PAYMENT_SECURITY_VIOLATION]: {
2370
+ code: ERROR_CODES.PAYMENT_SECURITY_VIOLATION,
2371
+ status: HTTP_STATUS.FORBIDDEN,
2372
+ category: ERROR_CATEGORY.Security,
2373
+ userMessage: "errors.payment.security.violation",
2374
+ severity: ERROR_SEVERITY.Critical,
2375
+ retryable: false
2376
+ },
2377
+ [ERROR_CODES.PAYMENT_SECURITY_SIGNATURE_INVALID]: {
2378
+ code: ERROR_CODES.PAYMENT_SECURITY_SIGNATURE_INVALID,
2379
+ status: HTTP_STATUS.UNAUTHORIZED,
2380
+ category: ERROR_CATEGORY.Security,
2381
+ userMessage: "errors.payment.security.invalid_signature",
2382
+ severity: ERROR_SEVERITY.High,
2383
+ retryable: false
2384
+ },
2385
+ [ERROR_CODES.PAYMENT_SECURITY_ENCRYPTION_FAILED]: {
2386
+ code: ERROR_CODES.PAYMENT_SECURITY_ENCRYPTION_FAILED,
2387
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2388
+ category: ERROR_CATEGORY.Security,
2389
+ userMessage: "errors.payment.security.encryption_failed",
2390
+ severity: ERROR_SEVERITY.Critical,
2391
+ retryable: false
2392
+ },
2393
+ [ERROR_CODES.PAYMENT_SECURITY_FRAUD_DETECTED]: {
2394
+ code: ERROR_CODES.PAYMENT_SECURITY_FRAUD_DETECTED,
2395
+ status: HTTP_STATUS.FORBIDDEN,
2396
+ category: ERROR_CATEGORY.Fraud,
2397
+ userMessage: "errors.payment.security.fraud_detected",
2398
+ severity: ERROR_SEVERITY.Critical,
2399
+ retryable: false
2400
+ },
2401
+ [ERROR_CODES.PAYMENT_SECURITY_TOKEN_INVALID]: {
2402
+ code: ERROR_CODES.PAYMENT_SECURITY_TOKEN_INVALID,
2403
+ status: HTTP_STATUS.UNAUTHORIZED,
2404
+ category: ERROR_CATEGORY.Authentication,
2405
+ userMessage: "errors.payment.security.token_invalid",
2406
+ severity: ERROR_SEVERITY.Medium,
2407
+ retryable: false
2408
+ },
2409
+ // ===== Validation Errors =====
2410
+ [ERROR_CODES.PAYMENT_VALIDATION_FAILED]: {
2411
+ code: ERROR_CODES.PAYMENT_VALIDATION_FAILED,
2412
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
2413
+ category: ERROR_CATEGORY.Validation,
2414
+ userMessage: "errors.payment.validation.failed",
2415
+ severity: ERROR_SEVERITY.Medium,
2416
+ retryable: false
2417
+ },
2418
+ [ERROR_CODES.PAYMENT_VALIDATION_AMOUNT_INVALID]: {
2419
+ code: ERROR_CODES.PAYMENT_VALIDATION_AMOUNT_INVALID,
2420
+ status: HTTP_STATUS.BAD_REQUEST,
2421
+ category: ERROR_CATEGORY.Validation,
2422
+ userMessage: "errors.payment.validation.amount_invalid",
2423
+ severity: ERROR_SEVERITY.Medium,
2424
+ retryable: false
2425
+ },
2426
+ [ERROR_CODES.PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED]: {
2427
+ code: ERROR_CODES.PAYMENT_VALIDATION_CURRENCY_UNSUPPORTED,
2428
+ status: HTTP_STATUS.BAD_REQUEST,
2429
+ category: ERROR_CATEGORY.Validation,
2430
+ userMessage: "errors.payment.validation.currency_unsupported",
2431
+ severity: ERROR_SEVERITY.Medium,
2432
+ retryable: false
2433
+ },
2434
+ [ERROR_CODES.PAYMENT_VALIDATION_METADATA_INVALID]: {
2435
+ code: ERROR_CODES.PAYMENT_VALIDATION_METADATA_INVALID,
2436
+ status: HTTP_STATUS.BAD_REQUEST,
2437
+ category: ERROR_CATEGORY.Validation,
2438
+ userMessage: "errors.payment.validation.metadata_invalid",
2439
+ severity: ERROR_SEVERITY.Low,
2440
+ retryable: false
2441
+ },
2442
+ [ERROR_CODES.PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD]: {
2443
+ code: ERROR_CODES.PAYMENT_VALIDATION_MISSING_REQUIRED_FIELD,
2444
+ status: HTTP_STATUS.BAD_REQUEST,
2445
+ category: ERROR_CATEGORY.Validation,
2446
+ userMessage: "errors.payment.validation.required_field_missing",
2447
+ severity: ERROR_SEVERITY.Medium,
2448
+ retryable: false
2449
+ },
2450
+ // ===== Webhook Errors =====
2451
+ [ERROR_CODES.PAYMENT_WEBHOOK_SIGNATURE_INVALID]: {
2452
+ code: ERROR_CODES.PAYMENT_WEBHOOK_SIGNATURE_INVALID,
2453
+ status: HTTP_STATUS.UNAUTHORIZED,
2454
+ category: ERROR_CATEGORY.Webhook,
2455
+ userMessage: "errors.payment.webhook.signature_invalid",
2456
+ severity: ERROR_SEVERITY.High,
2457
+ retryable: false
2458
+ },
2459
+ [ERROR_CODES.PAYMENT_WEBHOOK_PROCESSING_FAILED]: {
2460
+ code: ERROR_CODES.PAYMENT_WEBHOOK_PROCESSING_FAILED,
2461
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2462
+ category: ERROR_CATEGORY.Webhook,
2463
+ userMessage: "errors.payment.webhook.processing_failed",
2464
+ severity: ERROR_SEVERITY.High,
2465
+ retryable: true
2466
+ },
2467
+ [ERROR_CODES.PAYMENT_WEBHOOK_VALIDATION_FAILED]: {
2468
+ code: ERROR_CODES.PAYMENT_WEBHOOK_VALIDATION_FAILED,
2469
+ status: HTTP_STATUS.BAD_REQUEST,
2470
+ category: ERROR_CATEGORY.Validation,
2471
+ userMessage: "errors.payment.webhook.validation_failed",
2472
+ severity: ERROR_SEVERITY.Medium,
2473
+ retryable: false
2474
+ },
2475
+ [ERROR_CODES.PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED]: {
2476
+ code: ERROR_CODES.PAYMENT_WEBHOOK_EVENT_TYPE_UNSUPPORTED,
2477
+ status: HTTP_STATUS.BAD_REQUEST,
2478
+ category: ERROR_CATEGORY.Webhook,
2479
+ userMessage: "errors.payment.webhook.unsupported_event_type",
2480
+ severity: ERROR_SEVERITY.Medium,
2481
+ retryable: false
2482
+ },
2483
+ [ERROR_CODES.PAYMENT_WEBHOOK_HANDLER_NOT_FOUND]: {
2484
+ code: ERROR_CODES.PAYMENT_WEBHOOK_HANDLER_NOT_FOUND,
2485
+ status: HTTP_STATUS.NOT_FOUND,
2486
+ category: ERROR_CATEGORY.Webhook,
2487
+ userMessage: "errors.payment.webhook.handler_not_found",
2488
+ severity: ERROR_SEVERITY.Medium,
2489
+ retryable: false
2490
+ },
2491
+ // ===== Payment Adapter & Core Errors =====
2492
+ [ERROR_CODES.PAYMENT_ADAPTER_INIT_FAILED]: {
2493
+ code: ERROR_CODES.PAYMENT_ADAPTER_INIT_FAILED,
2494
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2495
+ category: ERROR_CATEGORY.Provider,
2496
+ userMessage: "errors.payment.adapter.init_failed",
2497
+ severity: ERROR_SEVERITY.High,
2498
+ retryable: false
2499
+ },
2500
+ [ERROR_CODES.PAYMENT_ADAPTER_SHUTDOWN_ERROR]: {
2501
+ code: ERROR_CODES.PAYMENT_ADAPTER_SHUTDOWN_ERROR,
2502
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2503
+ category: ERROR_CATEGORY.Provider,
2504
+ userMessage: "errors.payment.adapter.shutdown_error",
2505
+ severity: ERROR_SEVERITY.Medium,
2506
+ retryable: false
2507
+ },
2508
+ [ERROR_CODES.PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED]: {
2509
+ code: ERROR_CODES.PAYMENT_ADAPTER_HMAC_COMPUTATION_FAILED,
2510
+ status: HTTP_STATUS.BAD_REQUEST,
2511
+ category: ERROR_CATEGORY.Security,
2512
+ userMessage: "errors.payment.adapter.hmac_computation_failed",
2513
+ severity: ERROR_SEVERITY.High,
2514
+ retryable: false
2515
+ },
2516
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_PROVIDER]: {
2517
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_PROVIDER,
2518
+ status: HTTP_STATUS.BAD_REQUEST,
2519
+ category: ERROR_CATEGORY.Configuration,
2520
+ userMessage: "errors.payment.adapter.missing_provider",
2521
+ severity: ERROR_SEVERITY.Medium,
2522
+ retryable: false
2523
+ },
2524
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_ENVIRONMENT]: {
2525
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_ENVIRONMENT,
2526
+ status: HTTP_STATUS.BAD_REQUEST,
2527
+ category: ERROR_CATEGORY.Configuration,
2528
+ userMessage: "errors.payment.adapter.missing_environment",
2529
+ severity: ERROR_SEVERITY.Medium,
2530
+ retryable: false
2531
+ },
2532
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_CREDENTIALS]: {
2533
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_CREDENTIALS,
2534
+ status: HTTP_STATUS.UNAUTHORIZED,
2535
+ category: ERROR_CATEGORY.Authentication,
2536
+ userMessage: "errors.payment.adapter.missing_credentials",
2537
+ severity: ERROR_SEVERITY.Medium,
2538
+ retryable: false
2539
+ },
2540
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_WEBHOOK_URL]: {
2541
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_WEBHOOK_URL,
2542
+ status: HTTP_STATUS.BAD_REQUEST,
2543
+ category: ERROR_CATEGORY.Configuration,
2544
+ userMessage: "errors.payment.adapter.missing_webhook_url",
2545
+ severity: ERROR_SEVERITY.Medium,
2546
+ retryable: false
2547
+ },
2548
+ [ERROR_CODES.PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT]: {
2549
+ code: ERROR_CODES.PAYMENT_ADAPTER_MISSING_UNREGISTER_ENDPOINT,
2550
+ status: HTTP_STATUS.BAD_REQUEST,
2551
+ category: ERROR_CATEGORY.Configuration,
2552
+ userMessage: "errors.payment.adapter.missing_unregister_endpoint",
2553
+ severity: ERROR_SEVERITY.Medium,
2554
+ retryable: false
2555
+ },
2556
+ [ERROR_CODES.PAYMENT_ADAPTER_UNSUPPORTED_OPERATION]: {
2557
+ code: ERROR_CODES.PAYMENT_ADAPTER_UNSUPPORTED_OPERATION,
2558
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
2559
+ category: ERROR_CATEGORY.Provider,
2560
+ userMessage: "errors.payment.adapter.unsupported_operation",
2561
+ severity: ERROR_SEVERITY.Medium,
2562
+ retryable: false
2563
+ },
2564
+ [ERROR_CODES.PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED]: {
2565
+ code: ERROR_CODES.PAYMENT_ADAPTER_RESPONSE_MAPPING_FAILED,
2566
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2567
+ category: ERROR_CATEGORY.Provider,
2568
+ userMessage: "errors.payment.adapter.response_mapping_failed",
2569
+ severity: ERROR_SEVERITY.High,
2570
+ retryable: false
2571
+ },
2572
+ // ===== Idempotency & State Management =====
2573
+ [ERROR_CODES.PAYMENT_IDEMPOTENCY_VIOLATION]: {
2574
+ code: ERROR_CODES.PAYMENT_IDEMPOTENCY_VIOLATION,
2575
+ status: HTTP_STATUS.CONFLICT,
2576
+ category: ERROR_CATEGORY.Processing,
2577
+ userMessage: "errors.payment.idempotency.violation",
2578
+ severity: ERROR_SEVERITY.Medium,
2579
+ retryable: false
2580
+ },
2581
+ [ERROR_CODES.PAYMENT_IDEMPOTENCY_KEY_MISSING]: {
2582
+ code: ERROR_CODES.PAYMENT_IDEMPOTENCY_KEY_MISSING,
2583
+ status: HTTP_STATUS.BAD_REQUEST,
2584
+ category: ERROR_CATEGORY.Validation,
2585
+ userMessage: "errors.payment.idempotency.key_missing",
2586
+ severity: ERROR_SEVERITY.Low,
2587
+ retryable: false
2588
+ },
2589
+ [ERROR_CODES.PAYMENT_IDEMPOTENCY_STORE_ERROR]: {
2590
+ code: ERROR_CODES.PAYMENT_IDEMPOTENCY_STORE_ERROR,
2591
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2592
+ category: ERROR_CATEGORY.Cache,
2593
+ userMessage: "errors.payment.idempotency.store_error",
2594
+ severity: ERROR_SEVERITY.Medium,
2595
+ retryable: true
2596
+ },
2597
+ // ===== Routing & Strategy =====
2598
+ [ERROR_CODES.PAYMENT_ROUTING_FAILED]: {
2599
+ code: ERROR_CODES.PAYMENT_ROUTING_FAILED,
2600
+ status: HTTP_STATUS.BAD_REQUEST,
2601
+ category: ERROR_CATEGORY.Strategy,
2602
+ userMessage: "errors.payment.routing.failed",
2603
+ severity: ERROR_SEVERITY.High,
2604
+ retryable: false
2605
+ },
2606
+ [ERROR_CODES.PAYMENT_ROUTING_CONFIGURATION_INVALID]: {
2607
+ code: ERROR_CODES.PAYMENT_ROUTING_CONFIGURATION_INVALID,
2608
+ status: HTTP_STATUS.BAD_REQUEST,
2609
+ category: ERROR_CATEGORY.Configuration,
2610
+ userMessage: "errors.payment.routing.configuration_invalid",
2611
+ severity: ERROR_SEVERITY.Medium,
2612
+ retryable: false
2613
+ },
2614
+ [ERROR_CODES.PAYMENT_ROUTING_PROVIDER_UNAVAILABLE]: {
2615
+ code: ERROR_CODES.PAYMENT_ROUTING_PROVIDER_UNAVAILABLE,
2616
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
2617
+ category: ERROR_CATEGORY.Provider,
2618
+ userMessage: "errors.payment.routing.provider_unavailable",
2619
+ severity: ERROR_SEVERITY.High,
2009
2620
  retryable: true
2010
2621
  },
2011
2622
  // Misc
@@ -2056,6 +2667,96 @@ var ERROR_DEFINITIONS = {
2056
2667
  userMessage: "db.misc.invalid_count",
2057
2668
  severity: ERROR_SEVERITY.Medium,
2058
2669
  retryable: false
2670
+ },
2671
+ [ERROR_CODES.PAYMENT_ROUTING_RETRY_EXCEEDED]: {
2672
+ code: ERROR_CODES.PAYMENT_ROUTING_RETRY_EXCEEDED,
2673
+ status: HTTP_STATUS.TOO_MANY_REQUESTS,
2674
+ category: ERROR_CATEGORY.Retry,
2675
+ userMessage: "errors.payment.routing.retry_exceeded",
2676
+ severity: ERROR_SEVERITY.Medium,
2677
+ retryable: false
2678
+ },
2679
+ // ===== General Payment Framework Errors =====
2680
+ [ERROR_CODES.PAYMENT_SYSTEM_NOT_INITIALIZED]: {
2681
+ code: ERROR_CODES.PAYMENT_SYSTEM_NOT_INITIALIZED,
2682
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2683
+ category: ERROR_CATEGORY.System,
2684
+ userMessage: "errors.payment.system.not_initialized",
2685
+ severity: ERROR_SEVERITY.High,
2686
+ retryable: false
2687
+ },
2688
+ [ERROR_CODES.PAYMENT_CONTEXT_OPERATION_FAILED]: {
2689
+ code: ERROR_CODES.PAYMENT_CONTEXT_OPERATION_FAILED,
2690
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2691
+ category: ERROR_CATEGORY.System,
2692
+ userMessage: "errors.payment.context.operation_failed",
2693
+ severity: ERROR_SEVERITY.High,
2694
+ retryable: false
2695
+ },
2696
+ [ERROR_CODES.PAYMENT_INTERNAL_ERROR]: {
2697
+ code: ERROR_CODES.PAYMENT_INTERNAL_ERROR,
2698
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2699
+ category: ERROR_CATEGORY.System,
2700
+ userMessage: "errors.payment.internal_error",
2701
+ severity: ERROR_SEVERITY.Critical,
2702
+ retryable: false
2703
+ },
2704
+ [ERROR_CODES.PAYMENT_UNKNOWN_ERROR]: {
2705
+ code: ERROR_CODES.PAYMENT_UNKNOWN_ERROR,
2706
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2707
+ category: ERROR_CATEGORY.Unknown,
2708
+ userMessage: "errors.payment.unknown_error",
2709
+ severity: ERROR_SEVERITY.Critical,
2710
+ retryable: false
2711
+ },
2712
+ // ===== Event Lifecycle Errors =====
2713
+ [ERROR_CODES.PAYMENT_EVENT_EMIT_FAILED]: {
2714
+ code: ERROR_CODES.PAYMENT_EVENT_EMIT_FAILED,
2715
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2716
+ category: ERROR_CATEGORY.Processing,
2717
+ userMessage: "errors.payment.event.emit_failed",
2718
+ severity: ERROR_SEVERITY.Medium,
2719
+ retryable: false
2720
+ },
2721
+ [ERROR_CODES.PAYMENT_EVENT_INVALID_TYPE]: {
2722
+ code: ERROR_CODES.PAYMENT_EVENT_INVALID_TYPE,
2723
+ status: HTTP_STATUS.BAD_REQUEST,
2724
+ category: ERROR_CATEGORY.Validation,
2725
+ userMessage: "errors.payment.event.invalid_type",
2726
+ severity: ERROR_SEVERITY.Medium,
2727
+ retryable: false
2728
+ },
2729
+ [ERROR_CODES.PAYMENT_EVENT_CREATION_FAILED]: {
2730
+ code: ERROR_CODES.PAYMENT_EVENT_CREATION_FAILED,
2731
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2732
+ category: ERROR_CATEGORY.System,
2733
+ userMessage: "errors.payment.event.creation_failed",
2734
+ severity: ERROR_SEVERITY.High,
2735
+ retryable: false
2736
+ },
2737
+ [ERROR_CODES.PAYMENT_EVENT_HANDLER_TIMEOUT]: {
2738
+ code: ERROR_CODES.PAYMENT_EVENT_HANDLER_TIMEOUT,
2739
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
2740
+ category: ERROR_CATEGORY.Timeout,
2741
+ userMessage: "errors.payment.event.handler_timeout",
2742
+ severity: ERROR_SEVERITY.Medium,
2743
+ retryable: true
2744
+ },
2745
+ [ERROR_CODES.PAYMENT_EVENT_HANDLER_INVALID_RESULT]: {
2746
+ code: ERROR_CODES.PAYMENT_EVENT_HANDLER_INVALID_RESULT,
2747
+ status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
2748
+ category: ERROR_CATEGORY.Processing,
2749
+ userMessage: "errors.payment.event.handler_invalid_result",
2750
+ severity: ERROR_SEVERITY.Medium,
2751
+ retryable: false
2752
+ },
2753
+ [ERROR_CODES.PAYMENT_EVENT_LIFECYCLE_FAILURE]: {
2754
+ code: ERROR_CODES.PAYMENT_EVENT_LIFECYCLE_FAILURE,
2755
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
2756
+ category: ERROR_CATEGORY.Processing,
2757
+ userMessage: "errors.payment.event.lifecycle_failure",
2758
+ severity: ERROR_SEVERITY.High,
2759
+ retryable: false
2059
2760
  }
2060
2761
  };
2061
2762
 
@@ -2072,5 +2773,6 @@ exports.ERROR_SEVERITY = ERROR_SEVERITY;
2072
2773
  exports.ERROR_TYPE = ERROR_TYPE;
2073
2774
  exports.INTERNAL_STATUS_CODES = INTERNAL_STATUS_CODES;
2074
2775
  exports.NOTIFICATION_ERROR_CODES = NOTIFICATION_ERROR_CODES;
2776
+ exports.PAYMENT_ERROR_CODES = PAYMENT_ERROR_CODES;
2075
2777
  //# sourceMappingURL=index.cjs.map
2076
2778
  //# sourceMappingURL=index.cjs.map