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)