Coverage for functions \ flipdare \ generated \ shared \ app_payment_error_code.py: 100%

0 statements  

« prev     ^ index     » next       coverage.py v7.13.0, created at 2026-05-08 12:22 +1000

1#!/usr/bin/env python 

2# 

3# Copyright (c) 2026 Flipdare Pty Ltd. All rights reserved. 

4# 

5# This file is part of Flipdare's proprietary software and contains 

6# confidential and copyrighted material. Unauthorised copying, 

7# modification, distribution, or use of this file is strictly 

8# prohibited without prior written permission from Flipdare Pty Ltd. 

9# 

10# This software includes third-party components licensed under MIT, 

11# BSD, and Apache 2.0 licences. See THIRD_PARTY_NOTICES for details. 

12# 

13# NOTE: THIS FILE IS AUTO GENERATED. DO NOT EDIT. 

14# 

15# Generated by codegen_models.py 

16# 

17# Modify 'codegen_models.py' 

18# and re-run the script above to update. 

19# 

20 

21# pragma: no cover 

22 

23from enum import StrEnum 

24from flipdare.generated.shared.app_log_category import AppLogCategory 

25 

26 

27class AppPaymentErrorCode(StrEnum): 

28 """Stripe error code enum carrying http_code, category and display display_title.""" 

29 

30 # Declared here so type-checkers know these attributes exist. 

31 # They are populated per-member inside __new__. 

32 _http_code: int 

33 _category: AppLogCategory 

34 _display_title: str 

35 

36 def __new__( 

37 cls, 

38 code: str, 

39 http_code: int | None = None, 

40 category: AppLogCategory | None = None, 

41 display_title: str | None = None, 

42 ) -> "AppPaymentErrorCode": 

43 obj = str.__new__(cls, code) 

44 obj._value_ = code 

45 # Only set attributes if they are provided (during member definition) 

46 if http_code is not None: 

47 obj._http_code = http_code 

48 if category is not None: 

49 obj._category = category 

50 if display_title is not None: 

51 obj._display_title = display_title 

52 return obj 

53 

54 # ---- Members -------------------------------------------------------- 

55 # fmt: off 

56 INVALID_API_RESPONSE = ("STR_INVALID_API_RESPONSE", 500, AppLogCategory.PAYMENT, "Stripe - Invalid API Response") 

57 CANCEL_INTENT_FAILED = ("STR_CANCEL_INTENT_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Cancelled Intent Failed") 

58 LOOSING_MONEY = ("STR_LOOSING_MONEY", 500, AppLogCategory.PAYMENT, "Stripe - Potential Loss of Funds") 

59 AMOUNT_TOO_SMALL = ("STR_AMOUNT_TOO_SMALL", 400, AppLogCategory.PAYMENT, "Stripe - Amount Too Small") 

60 FEE_REFUND_FAILED = ("STR_FEE_REFUND_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Fee Refund Failed") 

61 REFUND_FAILED = ("STR_REFUND_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Refund Issues") 

62 TRANSFER_FAILED = ("STR_TRANSFER_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Transfer Failed") 

63 FX_ACCOUNT_ESTIMATE_ERROR = ("STR_FX_ACCOUNT_ESTIMATE_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - FX Account Estimate Error") 

64 FX_ESTIMATE_ERROR = ("STR_FX_ESTIMATE_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - FX Conversion Error") 

65 DATABASE_ERROR = ("STR_DATABASE_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - Database Error") 

66 LINK_CREATE_FAILED = ("STR_LINK_CREATE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Link Creation Failed") 

67 ACCOUNT_CREATE_FAILED = ("STR_ACCOUNT_CREATE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Account Creation Failed") 

68 INVALID_USER = ("STR_INVALID_USER", 404, AppLogCategory.PAYMENT, "Stripe - Invalid User") 

69 ACCOUNT_NOT_FOUND = ("STR_ACCOUNT_NOT_FOUND", 404, AppLogCategory.PAYMENT, "Stripe - Account Not Found") 

70 ACCOUNT_SCHEDULE_UPDATE_FAILED = ("STR_ACCOUNT_SCHEDULE_UPDATE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Account Schedule Update Failed") 

71 INVALID_SETTINGS = ("STR_INVALID_SETTINGS", 400, AppLogCategory.PAYMENT, "Stripe - Invalid Settings") 

72 ACCOUNT_UPDATE_FAILED = ("STR_ACCOUNT_UPDATE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Account Update Failed") 

73 ACCOUNT_MIGRATION_ERROR = ("STR_ACCOUNT_MIGRATION_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - Account Migration Failed") 

74 ACCOUNT_UPGRADE_EXISTING = ("STR_ACCOUNT_UPGRADE_EXISTING", 400, AppLogCategory.PAYMENT, "Stripe - Account Upgrade Failed - Existing Account Detected") 

75 ACCOUNT_UPGRADE_FAILED = ("STR_ACCOUNT_UPGRADE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Account Upgrade Failed") 

76 PLEDGE_MISSING = ("STR_PLEDGE_MISSING", 404, AppLogCategory.PAYMENT, "Stripe - Pledge Not Found") 

77 PLEDGE_MISSING_PAYMENT = ("STR_PLEDGE_MISSING_PAYMENT", 404, AppLogCategory.PAYMENT, "Stripe - Pledge Missing Payment Information") 

78 SCHEDULE_ERROR = ("STR_SCHEDULE_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - Payment Schedule Error") 

79 PAYMENT_CREATE_FAILED = ("STR_PAYMENT_CREATE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Payment Creation Failed") 

80 PAYMENT_UPDATE_FAILED = ("STR_PAYMENT_UPDATE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Payment Update Failed") 

81 PAYMENT_MISSING = ("STR_PAYMENT_MISSING", 404, AppLogCategory.PAYMENT, "Stripe - Payment Not Found") 

82 PAYMENT_MISSING_CHARGE_ID = ("STR_PAYMENT_MISSING_CHARGE_ID", 500, AppLogCategory.PAYMENT, "Stripe - Payment Missing Charge ID") 

83 PAYMENT_CAPTURE_FAILED = ("STR_PAYMENT_CAPTURE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Payment Capture Failed") 

84 MALFORMED_INTENT = ("STR_MALFORMED_INTENT", 400, AppLogCategory.PAYMENT, "Stripe - Malformed Payment Details") 

85 RATE_LIMIT_ERROR = ("STR_RATE_LIMIT_ERROR", 429, AppLogCategory.PAYMENT, "Stripe - Rate Limit Error") 

86 INVALID_REQUEST = ("STR_INVALID_REQUEST", 400, AppLogCategory.PAYMENT, "Stripe - Invalid Request") 

87 CODE_PATH_ERROR = ("STR_CODE_PATH_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - Integration Error") 

88 AUTH_ERROR = ("STR_AUTH_ERROR", 401, AppLogCategory.PAYMENT, "Stripe - Authentication Error") 

89 API_ERROR = ("STR_API_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - API Error") 

90 API_CONNECTION_ERROR = ("STR_API_CONNECTION_ERROR", 503, AppLogCategory.PAYMENT, "Stripe - API Connection Error") 

91 FEE_CALC_ERROR = ("STR_FEE_CALC_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - Fee Calculation Error") 

92 INTENT_NOT_CONFIRMED = ("STR_INTENT_NOT_CONFIRMED", 400, AppLogCategory.PAYMENT, "Stripe - Intent Not Confirmed") 

93 INTENT_REAUTH_FAILED = ("STR_INTENT_REAUTH_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Failed to Reauthorize Payment Intent") 

94 INTENT_INVALID_DATA = ("STR_INTENT_INVALID_DATA", 400, AppLogCategory.PAYMENT, "Stripe - Invalid Payment Intent Data") 

95 INTENT_PENDING = ("STR_INTENT_PENDING", 200, AppLogCategory.PAYMENT, "Stripe - Processing Payment Intent, Please Wait") 

96 INTENT_TIMEOUT = ("STR_INTENT_TIMEOUT", 504, AppLogCategory.PAYMENT, "Stripe - Payment Intent Timeout") 

97 UNKNOWN_CHARGE_STATE = ("STR_UNKNOWN_CHARGE_STATE", 500, AppLogCategory.PAYMENT, "Stripe - Unknown Charge State") 

98 ALREADY_CAPTURED = ("STR_ALREADY_CAPTURED", 400, AppLogCategory.PAYMENT, "Stripe - Already Captured") 

99 DUPLICATE = ("STR_DUPLICATE", 400, AppLogCategory.PAYMENT, "Stripe - Duplicate Charge") 

100 FRAUDULENT = ("STR_FRAUDULENT", 402, AppLogCategory.PAYMENT, "Stripe - Fraudulent Charge Detected") 

101 CHARGE_NOT_FOUND = ("STR_CHARGE_NOT_FOUND", 404, AppLogCategory.PAYMENT, "Stripe - Charge Not Found") 

102 CHARGE_CANCELED = ("STR_CHARGE_CANCELED", 400, AppLogCategory.PAYMENT, "Stripe - Charge Canceled") 

103 CHARGE_DISPUTED = ("STR_CHARGE_DISPUTED", 400, AppLogCategory.PAYMENT, "Stripe - Charge Disputed by Cardholder") 

104 CHARGE_FAILED = ("STR_CHARGE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Charge Failed") 

105 CHARGE_REQUIRES_CAPTURE = ("STR_CHARGE_REQUIRES_CAPTURE", 200, AppLogCategory.PAYMENT, "Stripe - Charge Requires Capture") 

106 INSUFFICIENT_FUNDS = ("STR_INSUFFICIENT_FUNDS", 402, AppLogCategory.PAYMENT, "Stripe - Insufficient Funds") 

107 PAYMENT_MAX_RETRIES_EXCEEDED = ("STR_PAYMENT_MAX_RETRIES_EXCEEDED", 500, AppLogCategory.PAYMENT, "Stripe - Maximum Payment Retries Exceeded") 

108 PAYMENT_MAX_INFO_RETRIES_EXCEEDED = ("STR_PAYMENT_MAX_INFO_RETRIES_EXCEEDED", 500, AppLogCategory.PAYMENT, "Stripe - Maximum Additional Info Retries Exceeded") 

109 PAYMENT_WEBHOOK_ERROR = ("STR_PAYMENT_WEBHOOK_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - Payment Webhook Processing Error") 

110 PAYMENT_WEBHOOK_MISSING_METHOD = ("STR_PAYMENT_WEBHOOK_MISSING_METHOD", 500, AppLogCategory.PAYMENT, "Stripe - Payment Webhook Missing Method Information") 

111 PAYMENT_WEBHOOK_UPDATE_FAILED = ("STR_PAYMENT_WEBHOOK_UPDATE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Payment Webhook Update Failed") 

112 CHARGE_AUTHORIZE_FAILED = ("STR_CHARGE_AUTHORIZE_FAILED", 500, AppLogCategory.PAYMENT, "Stripe - Charge Authorization Failed") 

113 CHARGE_REQUIRES_REAUTH = ("STR_CHARGE_REQUIRES_REAUTH", 400, AppLogCategory.PAYMENT, "Stripe - Charge Requires Reauthentication") 

114 CHARGE_REQUIRES_3D_SECURE = ("STR_CHARGE_REQUIRES_3D_SECURE", 400, AppLogCategory.PAYMENT, "Stripe - Charge Requires 3D Secure Authentication") 

115 CHARGE_REQUIRES_NEW_PAYMENT_METHOD = ("STR_CHARGE_REQUIRES_NEW_PAYMENT_METHOD", 400, AppLogCategory.PAYMENT, "Stripe - Charge Requires New Payment Method") 

116 CARD_ERROR = ("STR_CARD_ERROR", 400, AppLogCategory.PAYMENT, "Stripe - Card Error") 

117 UNKNOWN_ERROR = ("STR_UNKNOWN_ERROR", 500, AppLogCategory.PAYMENT, "Stripe - Unknown Error") 

118 # fmt: on 

119 # ---- Properties ----------------------------------------------------- 

120 @property 

121 def http_code(self) -> int: 

122 return self._http_code 

123 

124 @property 

125 def category(self) -> AppLogCategory: 

126 return self._category 

127 

128 @property 

129 def display_title(self) -> str: 

130 return self._display_title