A simple Python package to integrate bots or apps with payment gateways like ZarinPal.
Project description
Pardakht 🏦
Pardakht is a simple Python library to integrate bots or applications with payment gateways. Currently, it just supports ZarinPal.
Installation
pip install pardakht
Usage
1️⃣ Import and Initialize
from pardakht.dargah import ZarinPal
# Settings
MERCHANT_ID = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
CALLBACK_URL = "https://yourdomain.com/check-payment"
# Create an instance of ZarinPalBot
zarinpal = ZarinPalBot(merchant_id=MERCHANT_ID, callback_url=CALLBACK_URL, sandbox=True)
2️⃣ Create a Payment and Get the Payment Link
amount = 10000 # Amount in Tomans
uuid_code = "some-unique-id-1234" # You can use uuid.uuid4() for unique transactions
description = "Premium subscription purchase"
pay_url = zarinpal.make_payment(amount, uuid_code, description)
if pay_url.startswith("http"):
print("Payment link:", pay_url)
else:
print("Error:", pay_url)
⚡ If there is an issue connecting to the gateway, it will return:
"Failed to connect to the payment gateway."
3️⃣ Verify the Payment After User Returns from Gateway
authority = "A1B2C3D4E5" # Obtained from query params or gateway payload
result = zarinpal.verify_payment(authority, amount)
if result["success"]:
print("Payment successful ✅")
print("Tracking code:", result["ref_id"])
else:
print("Payment failed ❌")
print("Message:", result["message"])
4️⃣ Notes
- Always generate a unique ID (uuid) for each transaction to track it in your database.
- In Telegram bots, you can use
pay_urlas an inline button for users to click. - Use
sandbox=Trueduring testing to avoid real transactions.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pardakht-0.1.2.tar.gz.
File metadata
- Download URL: pardakht-0.1.2.tar.gz
- Upload date:
- Size: 2.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
609a2aaf65222b87b725c8bbfb2a708df79794de3f41828ee09c6bd7eb4509d0
|
|
| MD5 |
bd196daa24ac6ca69e1dc6b52da52f01
|
|
| BLAKE2b-256 |
3f33ef43bc04f7243ec22b7ba3ac7156ce20b7aa98acf66f8038c90e7cd7a2b9
|
File details
Details for the file pardakht-0.1.2-py3-none-any.whl.
File metadata
- Download URL: pardakht-0.1.2-py3-none-any.whl
- Upload date:
- Size: 3.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e70bb485e8d7128b85f0262be8d414bdd94254e116db7da1036ed9e85bcce58d
|
|
| MD5 |
5a8cbd83475e883c31c372fb72385473
|
|
| BLAKE2b-256 |
8987f9c5ad23559fce1591b6df1c4bca5a226644f3fb7167bb5b492e460a847d
|