Flask-ClickUz
Only for Uzbekistan
Click.uz integration for Flask
Links
How it Works
Install
pip install Flask-ClickUz
Add your credentials from ClickUz to config file
CLICK_SECRET = 'Your secret key'
CLICK_SERVICE_ID = 'Your service ID'
CLICK_MERCHANT_ID = "Your merchant ID"
Create Flask App With Flask-ClickUz
from flask import Flask
from flask_clickuz import Click
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
click = Click(db)
orders = [525]
def Check_Allowment(data):
merchant_trans_id = data.get('merchant_trans_id')
if int(merchant_trans_id) in orders:
return True
return False
def Click_Callback(transaction):
action = transaction.action # 0 - cancaled, 1 - paid
pass
def create_app():
app = Flask(__name__)
app.config.from_pyfile('config.py')
db.init_app(app)
click.Register_Callback(Click_Callback) # Register callback
click.Register_Validator(Check_Allowment) # Register validator
click.init_app(app)
# Generate url for new orders
url = click.Generate_Transaction(order_id=123, amount=50000, return_url = '/return_url')
return app
Flask-ClickUz models schema
# Flask-ClickUz uses Flask-SQLAlchemy models to save data in database, it prefers to use Postgresql
class Click_Transaction(db.Model):
__tablename__ = 'click_transaction'
id = db.Column(db.Integer, primary_key=True)
click_trans_id = db.Column(db.Integer, unique=True)
service_id = db.Column(db.Integer)
click_paydoc_id = db.Column(db.Integer)
merchant_trans_id = db.Column(db.String(255))
amount = db.Column(db.Float)
action = db.Column(db.Integer)
error = db.Column(db.Integer)
error_note = db.Column(db.String(255))
sign_time = db.Column(db.DateTime)
sign_string = db.Column(db.String(255))
Accessing Models
Select data from models
click.model # Click_Transaction
Click_Transaction = click.model
transaction = Click_Transaction.query.all() # You can select or filter data
Add model view to Flask-Admin
from flask_admin.contrib.sqla import ModelView
admin.add_view(ModelView(click.model, db.session))
Task List
SHOP-API methods
- Prepare
- Complete
Merchant API methods
- create_invoice
- check_invoice
- create_card_token
- verify_card_token
- payment_with_card_token
- delete_card_token
- check_payment
- merchant_trans_id
- cancel
Licence
This project is licensed under the MIT License (see the LICENSE file for details).
Metadata
Release files for Flask-ClickUz 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| Flask-ClickUz-1.0.1.tar.gz | 5.5 kB | Without provenance | Details for Flask-ClickUz-1.0.1.tar.gz |
Release files / Flask-ClickUz-1.0.1.tar.gz
| Download URL | Flask-ClickUz-1.0.1.tar.gz |
|---|---|
| Size | 5.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d9fa43406249c91767d0b2a54e9a1dea2b4ce0ee7db1d22453d5fc0b0617bc19
|
|
BLAKE2b-256 checksum How to use checksums |
2f30dffd1a895f49a9561c2ccfc5c3bf3d792707bbc481bc86394627a58199c6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.10
|
Security for Flask-ClickUz 1.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.