forked from PaystackOSS/paystack-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtransaction_.py
More file actions
292 lines (233 loc) · 9.85 KB
/
Copy pathtransaction_.py
File metadata and controls
292 lines (233 loc) · 9.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
# coding: utf-8
"""
Paystack
The OpenAPI specification of the Paystack API that merchants and developers can harness to build financial solutions in Africa. # noqa: E501
The version of the OpenAPI document: 1.0.0
Contact: techsupport@paystack.com
"""
from __future__ import absolute_import
import re # noqa: F401
import six
from paystack.api_client import ApiClient
from paystack.exceptions import ( # noqa: F401
ApiTypeError,
ApiValueError
)
class Transaction(object):
"""NOTE: This class is auto generated. Do not edit the class manually.
"""
def __init__(self, api_client=None):
if api_client is None:
api_client = ApiClient()
self.api_client = api_client
@classmethod
def charge_authorization(cls, email, amount, authorization_code, **kwargs): # noqa: E501
"""Charge Authorization # noqa: E501
:param email: Customer's email address (required)
:type email: str
:param amount: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR (required)
:type amount: int
:param authorization_code: Valid authorization code to charge (required)
:type authorization_code: str
:param reference: Unique transaction reference. Only -, ., = and alphanumeric characters allowed.
:type reference: str
:param currency: The transaction currency
:type currency: str
:param metadata: Stringified JSON object of custom data
:type metadata: str
:param split_code: The split code of the transaction split
:type split_code: str
:param subaccount: The code for the subaccount that owns the payment
:type subaccount: str
:param transaction_charge: A flat fee to charge the subaccount for a transaction. This overrides the split percentage set when the subaccount was created
:type transaction_charge: str
:param bearer: The beare of the transaction charge
:type bearer: str
:param queue: If you are making a scheduled charge call, it is a good idea to queue them so the processing system does not get overloaded causing transaction processing errors.
:type queue: bool
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def check_authorization(cls, email, amount, **kwargs): # noqa: E501
"""Check Authorization # noqa: E501
:param email: Customer's email address (required)
:type email: str
:param amount: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR (required)
:type amount: int
:param authorization_code: Valid authorization code to charge
:type authorization_code: str
:param currency: The transaction currency
:type currency: str
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def download(cls, **kwargs): # noqa: E501
"""Export Transactions # noqa: E501
:param per_page: Number of records to fetch per page
:type per_page: int
:param page: The section to retrieve
:type page: int
:param _from: The start date
:type _from: datetime
:param to: The end date
:type to: datetime
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def event(cls, id, **kwargs): # noqa: E501
"""Get Transaction Event # noqa: E501
:param id: (required)
:type id: str
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def fetch(cls, id, **kwargs): # noqa: E501
"""Fetch Transaction # noqa: E501
:param id: The ID of the transaction to fetch (required)
:type id: str
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def initialize(cls, email, amount, **kwargs): # noqa: E501
"""Initialize Transaction # noqa: E501
Create a new transaction # noqa: E501
:param email: Customer's email address (required)
:type email: str
:param amount: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR (required)
:type amount: int
:param currency: The transaction currency
:type currency: str
:param reference: Unique transaction reference. Only -, ., = and alphanumeric characters allowed.
:type reference: str
:param callback_url: Fully qualified url, e.g. https://example.com/ . Use this to override the callback url provided on the dashboard for this transaction
:type callback_url: str
:param plan: If transaction is to create a subscription to a predefined plan, provide plan code here. This would invalidate the value provided in amount
:type plan: str
:param invoice_limit: Number of times to charge customer during subscription to plan
:type invoice_limit: int
:param metadata: Stringified JSON object of custom data
:type metadata: str
:param channels: An array of payment channels to control what channels you want to make available to the user to make a payment with
:type channels: list[str]
:param split_code: The split code of the transaction split
:type split_code: str
:param subaccount: The code for the subaccount that owns the payment
:type subaccount: str
:param transaction_charge: A flat fee to charge the subaccount for a transaction. This overrides the split percentage set when the subaccount was created
:type transaction_charge: str
:param bearer: The beare of the transaction charge
:type bearer: str
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def list(cls, **kwargs): # noqa: E501
"""List Transactions # noqa: E501
:param per_page: Number of records to fetch per page
:type per_page: int
:param page: The section to retrieve
:type page: int
:param _from: The start date
:type _from: datetime
:param to: The end date
:type to: datetime
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def partial_debit(cls, email, amount, authorization_code, currency, **kwargs): # noqa: E501
"""Partial Debit # noqa: E501
:param email: Customer's email address (required)
:type email: str
:param amount: Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR (required)
:type amount: int
:param authorization_code: Valid authorization code to charge (required)
:type authorization_code: str
:param currency: The transaction currency (required)
:type currency: str
:param reference: Unique transaction reference. Only -, ., = and alphanumeric characters allowed.
:type reference: str
:param at_least: Minimum amount to charge
:type at_least: str
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def session(cls, id, **kwargs): # noqa: E501
"""Get Transaction Session # noqa: E501
:param id: (required)
:type id: str
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def timeline(cls, id_or_reference, **kwargs): # noqa: E501
"""Fetch Transaction Timeline # noqa: E501
:param id_or_reference: (required)
:type id_or_reference: str
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def totals(cls, **kwargs): # noqa: E501
"""Transaction Totals # noqa: E501
:param per_page: Number of records to fetch per page
:type per_page: int
:param page: The section to retrieve
:type page: int
:param _from: The start date
:type _from: datetime
:param to: The end date
:type to: datetime
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass
@classmethod
def verify(cls, reference, **kwargs): # noqa: E501
"""Verify Transaction # noqa: E501
:param reference: The transaction reference to verify (required)
:type reference: str
:return: Returns the result object.
If the method is called asynchronously,
returns the request thread.
:rtype: Response
"""
pass