1+ from __future__ import annotations
12from datetime import datetime
23from enum import Enum
34from pydantic import BaseModel
@@ -33,6 +34,17 @@ class DCB_Provider(Enum):
3334
3435
3536class DCB_Service_Providers (BaseModel ):
37+ """DCB service available providers
38+
39+ :param tmobile: bool
40+ Provider t-mobile available status, origin key from api's it's 't-mobile'
41+ :param orange: bool
42+ Type of service
43+ :param play: bool
44+ Name of service
45+ :param plus: bool
46+ Prefix of SMS
47+ """
3648 tmobile : bool
3749 orange : bool
3850 play : bool
@@ -44,6 +56,17 @@ class Config:
4456
4557
4658class DCB_Service_MaxValues (BaseModel ):
59+ """DCB service max values per single transaction
60+
61+ :param tmobile: str
62+ Value for t-mobile provider, origin key from api's it's 't-mobile'
63+ :param orange: str
64+ Value for orange provider
65+ :param play: str
66+ Value for orange provider
67+ :param plus: str
68+ Value for orange provider
69+ """
4770 tmobile : str
4871 orange : str
4972 play : str
@@ -55,12 +78,32 @@ class Config:
5578
5679
5780class DCB_Service_Commission (BaseModel ):
81+ """DCB servicem stages of comission rates
82+
83+ :param commission_0: str
84+ Commision rate from 0,01 PLN to 9,99 PLN amount of transaction
85+ :param commission_9: str
86+ Commision rate from 9 PLN to 24,99 PLN amount of transaction
87+ :param commission_25: str
88+ Commision rate from 25 PLN to max amount of transaction
89+ """
5890 commission_0 : str
5991 commission_9 : str
6092 commission_25 : str
6193
6294
6395class DCB_Service_Commissions (BaseModel ):
96+ """DCB service comission rates
97+
98+ :param tmobile: DCB_Service_Commission
99+ Commision rate for t-mobile provider, origin key from api's it's 't-mobile'
100+ :param orange: DCB_Service_Commission
101+ Commision rate for orange provider
102+ :param play: DCB_Service_Commission
103+ Commision rate for play provider
104+ :param plus: DCB_Service_Commission
105+ Commision rate for plus provider
106+ """
64107 tmobile : DCB_Service_Commission
65108 orange : DCB_Service_Commission
66109 play : DCB_Service_Commission
@@ -72,12 +115,32 @@ class Config:
72115
73116
74117class DCB_Service_Values (BaseModel ):
118+ """DCB service and transaction values
119+
120+ :param net: float
121+ Amount net
122+ :param gross: float
123+ Amount gross
124+ :param partner: float | None
125+ Partner comission amount from transaction
126+ """
75127 net : float
76128 gross : float
77129 partner : float | None
78130
79131
80132class DCB_Service_CalculatedCommissions (BaseModel ):
133+ """DCB service calculated comissions
134+
135+ :param tmobile: DCB_Service_Values | None
136+ Values for t-mobile provider, origin key from api's it's 't-mobile'
137+ :param orange: DCB_Service_Values | None
138+ Values for orange provider
139+ :param play: DCB_Service_Values | None
140+ Values for play provider
141+ :param plus: DCB_Service_Values | None
142+ Values for plus provider
143+ """
81144 tmobile : DCB_Service_Values | None
82145 orange : DCB_Service_Values | None
83146 play : DCB_Service_Values | None
@@ -89,11 +152,39 @@ class Config:
89152
90153
91154class DCB_Service_API (BaseModel ):
155+ """DCB service redirection urls
156+
157+ :param complete: str
158+ Redirection url after complete transaction
159+ :param failure: str
160+ Redirection url after failure transaction
161+ """
92162 complete : str
93163 failure : str
94164
95165
96166class DCB_Service (BaseModel ):
167+ """DCB service
168+
169+ :param id: str
170+ ID of DirectBilling service
171+ :param name: str
172+ Name of DirectBilling service
173+ :param suffix: str
174+ Suffix
175+ :param status: DCB_Service_Status
176+ Status
177+ :param api: DCB_Service_API
178+ API endpoints
179+ :param providers: DCB_Service_Providers
180+ Available providers
181+ :param commissions: DCB_Service_Commissions
182+ Commisions
183+ :param maxValues: DCB_Service_MaxValues
184+ Max values per transaction
185+ :param created_at: datetime
186+ Creation time of service
187+ """
97188 id : str
98189 name : str
99190 suffix : str
@@ -106,21 +197,65 @@ class DCB_Service(BaseModel):
106197
107198
108199class DCB_Transaction_Notify (BaseModel ):
200+ """DCB transaction notification states
201+
202+ :param is_send: str
203+ Status whether notification has been sended
204+ :param last_send_at: str
205+ Date of last notification attempt
206+ :param count: str
207+ Count of notification attemps
208+ """
109209 is_send : bool
110210 last_send_at : datetime
111211 count : int
112212
113213
114214class DCB_Transaction_Returns (BaseModel ):
215+ """DCB transaction redirection urls
216+
217+ :param complete: str
218+ URL where customer will be redirected after successful transaction
219+ :param failure: str
220+ URL where customer will be redirected after failure transaction
221+ """
115222 complete : str
116223 failure : str
117224
118225
119226class DCB_Transaction (BaseModel ):
227+ """DCB transaction
228+
229+ :param id: str
230+ ID of DirectBilling of transaction
231+ :param status: DCB_Transaction_Status
232+ Status
233+ :param phoneNumber: str | None
234+ Phone number which transaction has been processed, original key from api it's number_from
235+ :param control: str | None
236+ Own custom property
237+ :param value: float | None
238+ Amount of transaction
239+ :param value_netto: float | None
240+ Amount of transaction (presented as netto value)
241+ :param operator: str | None
242+ Operator of transaction
243+ :param returns: DCB_Transaction_Returns | None
244+ Returns endpoints after successful or failure transaction
245+ :param notify: DCB_Transaction_Notify | None
246+ Nofication statuses
247+ :param provider: int | None
248+ ID of transaction provider
249+ :param signature: str | None
250+ Signature of transaction based on sha256
251+ :param created_at: datetime | None
252+ Creation date of transaction
253+ :param updated_at: datetime | None
254+ Update date of transaction
255+ """
120256 id : str
121257 status : DCB_Transaction_Status
122258 phoneNumber : str | None
123- control : str | None
124259 value : float | None
125260 value_netto : float | None
126261 values : DCB_Service_Values | None
@@ -139,5 +274,12 @@ class Config:
139274
140275
141276class DCB_GeneratedTransaction (BaseModel ):
277+ """DCB generating transaction callback
278+
279+ :param transactionId: str
280+ Transaction ID
281+ :param redirectUrl: str
282+ Redirection url for transaction
283+ """
142284 transactionId : str
143285 redirectUrl : str
0 commit comments