Spaces:
Sleeping
Sleeping
Create app.py
Browse files
app.py
ADDED
@@ -0,0 +1,52 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from flask import Flask, jsonify, request
|
2 |
+
|
3 |
+
app = Flask(__name__)
|
4 |
+
|
5 |
+
# Эмуляция получения карты
|
6 |
+
@app.route('/api/get_card/client/<int:client_id>/amount/<float:amount>/currency/<string:currency>', methods=['GET'])
|
7 |
+
def get_card(client_id, amount, currency):
|
8 |
+
if client_id != 123456:
|
9 |
+
return jsonify({'result': 'error', 'message': 'wrong client number'})
|
10 |
+
if not isinstance(amount, (int, float)) or amount <= 0:
|
11 |
+
return jsonify({'result': 'error', 'message': 'amount must be number and bigger than zero'})
|
12 |
+
if currency not in ['UAH', 'RUB', 'KZT']:
|
13 |
+
return jsonify({'result': 'error', 'message': 'no such fiat currency'})
|
14 |
+
|
15 |
+
# Имитация успешного ответа
|
16 |
+
return jsonify({'result': 'success', 'trade': 415468, 'card_number': '4323 1234 1234 2854', 'amount': str(amount)})
|
17 |
+
|
18 |
+
# Эмуляция проверки платежа
|
19 |
+
@app.route('/api/check_trade/trade/<int:trade_id>', methods=['GET'])
|
20 |
+
def check_trade(trade_id):
|
21 |
+
if trade_id != 415468:
|
22 |
+
return jsonify({'result': 'error', 'message': 'no such trade'})
|
23 |
+
|
24 |
+
# Имитация успешного ответа
|
25 |
+
return jsonify({'result': 'success', 'message': 'fully paid'})
|
26 |
+
|
27 |
+
# Эмуляция проверки баланса актива
|
28 |
+
@app.route('/api/get_balance/asset/<string:asset>/token/<string:token>', methods=['GET'])
|
29 |
+
def get_balance(asset, token):
|
30 |
+
if asset != 'USDT':
|
31 |
+
return jsonify({'result': 'error', 'code': 'E02', 'message': 'no such asset'})
|
32 |
+
if token != 'A716B19913DF5903D23B9B545DBB3C7B5EDE66A591E6299B9407904262DF718C':
|
33 |
+
return jsonify({'result': 'error', 'code': 'E01', 'message': 'wrong authorization token'})
|
34 |
+
|
35 |
+
# Имитация успешного ответа
|
36 |
+
return jsonify({'result': 'success', 'balance': '100.30', 'asset': 'USDT'})
|
37 |
+
|
38 |
+
# Эмуляция вывода USDT
|
39 |
+
@app.route('/api/create_cashout/amount/<float:amount>/asset/<string:asset>/address/<string:address>/token/<string:token>', methods=['GET'])
|
40 |
+
def create_cashout(amount, asset, address, token):
|
41 |
+
if token != 'A716B19913DF5903D23B9B545DBB3C7B5EDE66A591E6299B9407904262DF718C':
|
42 |
+
return jsonify({'result': 'error', 'code': 'E01', 'message': 'wrong authorization token'})
|
43 |
+
if asset != 'USDT':
|
44 |
+
return jsonify({'result': 'error', 'code': 'E04', 'message': 'no such asset'})
|
45 |
+
if amount <= 0:
|
46 |
+
return jsonify({'result': 'error', 'code': 'E02', 'message': 'wrong amount'})
|
47 |
+
|
48 |
+
# Имитация успешного ответа
|
49 |
+
return jsonify({'result': 'success', 'message': 'cashout created', 'pending': 8099})
|
50 |
+
|
51 |
+
if __name__ == '__main__':
|
52 |
+
app.run(debug=True)
|