Skip to main content

Avto to'lov

PayTechUZ SDK avto to'lovlarni (karta tokenizatsiyasi va takroriy to'lovlar) boshqarish uchun yagona Framework integratsiyasini taqdim etadi.

Payme

Kartalar

Siz saqlangan kartalarni PaymeGateway nusxasining cards xususiyati yordamida boshqarishingiz mumkin.

from paytechuz.gateways.payme import PaymeGateway


# Payme shlyuzini ishga tushirish
payme = PaymeGateway(
payme_id="your_payme_id",
payme_key="your_payme_key",
is_test_mode=True
)

# 1. Yangi karta yaratish
# Bu tasdiqlanishi kerak bo'lgan tokenni qaytaradi
create_response = payme.cards.create(
card_number="8600000000000000",
expire_date="12/25",
save=True # Kartani kelajakda foydalanish uchun saqlash uchun True ga o'rnating
)
print(create_response)

# 2. Tasdiqlash kodini olish (agar avtomatik qabul qilinmagan bo'lsa)
payme.cards.get_verify_code(token="card_token")

# 3. Kartani foydalanuvchiga SMS orqali yuborilgan kod bilan tasdiqlash
verify_response = payme.cards.verify(
token="card_token",
code="123456"
)
print(verify_response)

# 4. Karta holatini tekshirish
check_response = payme.cards.check(token="card_token")
print(check_response)

# 5. Saqlangan kartani o'chirish
payme.cards.remove(token="card_token")

Cheklar

Siz cheklarni PaymeGateway nusxasining receipts xususiyati yordamida boshqarishingiz mumkin.

from paytechuz.gateways.payme import PaymeGateway

# Payme shlyuzini ishga tushirish
payme = PaymeGateway(
payme_id="your_payme_id",
payme_key="your_payme_key",
is_test_mode=True
)

# 1. Chek yaratish
create_response = payme.receipts.create(
amount=100000, # 1000 so'm (tiyinda)
account={"order_id": "12345"},
description="Buyurtma uchun to'lov #12345"
)
print(create_response)

# 2. Saqlangan karta bilan chekni to'lash
pay_response = payme.receipts.pay(
receipt_id="receipt_id",
token="card_token_here"
)
print(pay_response)

# 3. Chek holatini tekshirish
check_response = payme.receipts.check(receipt_id="receipt_id")
print(check_response)

# 4. Chekni telefon raqamiga yuborish (SMS)
send_response = payme.receipts.send(
receipt_id="receipt_id",
phone="998901234567"
)
print(send_response)

# 5. Chekni bekor qilish
cancel_response = payme.receipts.cancel(
receipt_id="receipt_id",
reason="To'lov qaytarish so'raldi"
)
print(cancel_response)

Click

Kartalar

Click standartlashtirilgan cards xususiyati orqali karta tokenizatsiyasini qo'llab-quvvatlaydi.

from paytechuz.gateways.click import ClickGateway

# Click shlyuzini ishga tushirish
click = ClickGateway(
service_id="your_service_id",
merchant_id="your_merchant_id",
merchant_user_id="your_merchant_user_id",
secret_key="your_secret_key",
is_test_mode=True
)

# 1. Karta tokenini so'rash
# Bu vaqtinchalik tokenni qaytaradi va foydalanuvchiga SMS yuboradi
token_response = click.cards.create(
card_number="8600000000000000",
expire_date="0330", # OOYY formati
save=True # Payme bilan bir xil! (temporary=0 ga mos keladi)
)
print(token_response)

# 2. Karta tokenini tasdiqlash
verify_response = click.cards.verify(
card_token="card_token",
sms_code="12345"
)
print(verify_response)

# 3. Tasdiqlangan token bilan to'lovni amalga oshirish
payment_response = click.cards.pay(
card_token=card_token,
amount=50000,
transaction_parameter="order_123"
)
print(payment_response)

Invoyslar

Siz invoyslarni ClickGateway nusxasining invoices (yoki receipts taxallusi) xususiyati yordamida boshqarishingiz mumkin.

# 1. Invoys yaratish
invoice_response = click.invoices.create(
id="order_123",
amount=150000,
phone="998901234567",
description="Buyurtma uchun to'lov #123"
)
print(invoice_response)

# 2. Invoys holatini tekshirish
status_response = click.invoices.check(invoice_id="invoice_id")
print(status_response)

# 3. Invoysni bekor qilish
cancel_response = click.invoices.cancel(
invoice_id="invoice_id",
reason="Buyurtma bekor qilindi"
)
print(cancel_response)