Skip to main content

TSPay uchun rasmiy Python klienti

Project description

from docutils.nodes import comment

TsPay Python Client

Python License PyPI Version

TsPayClient — TSPay.uz to‘lov gateway API bilan ishlash uchun rasmiy Python klienti.
U orqali foydalanuvchi tokenini olish, do‘konlarni olish, tranzaksiyalar yaratish va holatini tekshirish mumkin.


Table of Contents

  1. Installation
  2. Quick Start
  3. API Reference
  4. Error Handling
  5. Examples
  6. License

Installation

pip install tspay-client

Quick Start

from tspay import TsPayClient

# Klient yaratish
client = TsPayClient()

# Foydalanuvchi tokenini olish
token = client.get_access_token("your_email@example.com", "your_password")

# Do'konlarni olish
shops = client.get_user_shops(token)

# Tranzaksiya yaratish
transaction = client.create_transaction(
    amount=10000,  # UZS
    redirect_url="https://yourwebsite.com/payment/callback",
    comment="Order #12345",
    access_token=shops[0]['access_token']
)

# Tranzaksiya holatini tekshirish
status = client.check_transaction(token, transaction['cheque_id'])

print("Payment URL:", transaction['payment_url'])
print("Transaction status:", status['status'])

API Reference

TsPayClient(base_url=None)
• base_url (str, optional): API ning custom URL manzili, default: `https://api.tspay.uz`

Authentication Methods

get_access_token(email, password)

Foydalanuvchi tokenini olish. • Parameters: • email (str) — foydalanuvchi emaili • password (str) — foydalanuvchi paroli • Returns: Access token (str) • Raises: TsPayError agar autentifikatsiya xato bo‘lsa

Shop Methods

get_user_shops(user_access_token)

Foydalanuvchiga tegishli do‘konlar ro‘yxatini olish.

•	Parameters:
•	user_access_token (str) — foydalanuvchi access tokeni
•	Returns: List[dict] — do‘konlar ro‘yxati
•	Raises: TsPayError agar so‘rov xato bo‘lsa

Transaction Methods

create_transaction(amount, redirect_url="", description="", access_token=None)

Yangi tranzaksiya yaratish.

•	Parameters:
•	amount (float) — summa UZS
•	redirect_url (str) — callback URL
•	description (str, optional) — tranzaksiya tavsifi
•	access_token (str) — do‘kon access tokeni
•	Returns: dict — tranzaksiya ma’lumotlari
•	Raises: TsPayError agar yaratish xato bo‘lsa

check_transaction(user_access_token, transaction_id)

Tranzaksiya holatini tekshirish.

•	Parameters:
•	user_access_token (str) — foydalanuvchi tokeni
•	transaction_id (str) — tranzaksiya IDsi
•	Returns: dict — tranzaksiya holati
•	Raises: TsPayError agar xato bo‘lsa

Error Handling

class TsPayError(Exception):
    """TSPay API xatoliklari uchun asosiy istisno."""
    def __init__(self, message, status_code=None):
        super().__init__(message)
        self.status_code = status_code

Examples

Complete Payment Flow

from tspay import TsPayClient, TsPayError

def process_payment(amount, commment):
    try:
        client = TsPayClient()
        token = client.get_access_token("merchant@example.com", "securepassword")
        shops = client.get_user_shops(token)
        if not shops:
            raise Exception("No shops available")
        
        transaction = client.create_transaction(
            amount=amount,
            redirect_url="https://example.com/payment/callback",
            comment=comment,
            access_token=shops[0]['access_token']
        )
        
        return {
            'success': True,
            'payment_url': transaction['payment_url'],
            'transaction_id': transaction['cheque_id']
        }
    
    except TsPayError as e:
        return {'success': False, 'error': str(e)}

License

MIT License — LICENSE

Batafsil: https://tspay.uz

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

tspay_client-0.2.1.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tspay_client-0.2.1-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file tspay_client-0.2.1.tar.gz.

File metadata

  • Download URL: tspay_client-0.2.1.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for tspay_client-0.2.1.tar.gz
Algorithm Hash digest
SHA256 9aa510a9059b9ea41bcb9dada22a589cc933265010d3a4d4f3025cb9b3e9cd47
MD5 f008f60bc2af2ee6f3281601d9c68140
BLAKE2b-256 65a5bea7856f8ab17e5cb5b7c30aa046248a76563a7d5c62d977ab7f55d6ca4c

See more details on using hashes here.

File details

Details for the file tspay_client-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: tspay_client-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for tspay_client-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 00c8616e60b6ba6c656fc3af7e16e910a6e4c4b13d5b28760a70eec3286aea38
MD5 1a2d20febf1070756db4eec635fa03bb
BLAKE2b-256 6b29049e6150ab5315d8701ee8edb9228ccc8d048b39eb593c1a2d6a7755e38d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page