Skip to content

Paylov Payment Gateway Merchant API Integration Guide

Ushbu hujjat Paylov Payment System bilan integratsiya qilish bo‘yicha bosqichma-bosqich ko‘rsatmalarni taqdim etadi. Jumladan, payment link yaratish, redirect jarayonini boshqarish va server-to-server payment status notification’larni qayta ishlash tartibi keltirilgan.

STEP 1: Register Callback URL

Tranzaksiyalarni boshlashdan oldin, merchant Paylov tranzaksiya yangilanishlarini yuboradigan callback URL manzilini taqdim etishi kerak.

Required Details:

FieldDescription
Callback URLTo‘lov bildirishnomalarini qabul qiladigan server endpoint’ingiz
LoginMerchant’ning API login ma’lumoti
PasswordMerchant’ning API paroli

Paylov uses Basic Authentication when posting to your callback URL.

Callback URL namunasi:

plaintext
https://your-server-domain.com/payment/callback/

Merchantlar mijozlar ochib, Paylov’ning hosted payment interface’iga o‘tishi uchun encoded parameterlar bilan payment link yaratadi.

Endpoint:

plaintext
https://my.paylov.uz/checkout/create/{base64_encoded_params}

Example (base64-encoded):

plaintext
https://my.paylov.uz/checkout/create/bWVyY2hhbnRfaWQ9MmVmNGE4OTYtOGRhMi00OGE0LTlhZjMtMjYwN2U2OTIxMGVjJmFtb3VudD01MDAmY3VycmVuY3lfaWQ9ODYwJnJldHVybl91cmw9aHR0cHMlM0ElMkYlMkZnb29nbGUuY29tJmFtb3VudF9pbl90aXlpbj1UcnVlJmFjY291bnQub3JkZXJfaWQ9MTIzMw==

Parameters (Base64-encoded query):

ParameterDescription
merchant_idMerchant’ning noyob identifikatori (UUID)
amountTo‘lanadigan summa
currency_idValyuta kodi (860 = UZS, 840 = USD)
return_urlTo‘lov tugagandan keyin redirect qilinadigan URL
amount_in_tiyinAgar summa tiyin ko‘rinishida bo‘lsa True
account.order_idIxtiyoriy ichki buyurtma referensi

STEP 3: Transaction Flow

1. Customer Redirection

Payment link ochilgandan so‘ng, mijoz Paylov payment interface sahifasiga yo‘naltiriladi.

To‘lov muvaffaqiyatli yoki muvaffaqiyatsiz yakunlangandan keyin:

  • Mijoz return_url manziliga yo‘naltiriladi.
  • Sizning backend’ingiz tekshirish va qayta ishlash uchun callback notification qabul qiladi.

Server-to-Server Callbacks

Paylov tekshirish va tasdiqlash uchun callback URL’ingizga ikki xil request yuboradi:

transaction.check – Validate Transaction

Paylov ushbu metod orqali haqiqiy to‘lovni bajarishdan oldin tranzaksiya ma’lumotlarini tekshiradi.

Request Parameters

NameNameDescription
accountdictMerchant tomonidan berilgan field’lar (masalan, order_id)
amountintTo‘liq valyutadagi summa (masalan, 500 UZS)
amount_tiyinintTiyindagi summa (masalan, 50000)
currenyintValyuta kodi (860 = UZS, 840 = USD)

Example Request

json
{
  "jsonrpc": "2.0",
  "id": 1234567,
  "method": "transaction.check",
  "params": {
    "account": {
      "order_id": 12
    },
    "amount": 500,
    "amount_tiyin": 50000,
    "currency": 860
  }
}

Example Response

json
{
  "jsonrpc": "2.0",
  "id": 1234567,
  "result": {
    "status": "0",
    "statusText": "OK"
  }
}

Ko‘proq status code’lar uchun Status codes sahifasiga qarang.

transaction.perform – Finalize Transaction

Ushbu metod foydalanuvchi to‘lovni tasdiqlagandan keyin Paylov tomonidan chaqiriladi.

Request Parameters

NameNameDescription
transaction_idUUID4Tranzaksiyaning noyob identifikatori
accountdictMerchant tomonidan berilgan field’lar (masalan, order_id)
amountintTo‘lov summasi
amount_tiyinintTo‘lov summasi tiyin ko‘rinishida
currencyint860 yoki 840

Example Request

json
{
  "jsonrpc": "2.0",
  "id": 1234567,
  "method": "transaction.perform",
  "params": {
    "transaction_id": "9bd1a92b-5cce-47c8-a2df-99a20836ab9e",
    "account": {
      "order_id": 12
    },
    "amount": 500,
    "amount_tiyin": 50000,
    "currency": 860
  }
}

Example Response

json
{
  "jsonrpc": "2.0",
  "id": 1234567,
  "result": {
    "status": "0",
    "statusText": "OK"
  }
}

Ko‘proq status code’lar uchun Status codes sahifasiga qarang.

Summary of Integration Flow

StepActionDirection
1Merchant callback va auth ma’lumotlarini taqdim etadiMerchant → Paylov
2Merchant payment link yaratadiMerchant → Customer
3Customer linkni ochadi va to‘lov qiladiCustomer → Paylov
4Paylov tranzaksiyani tekshiradiPaylov → Merchant
5Paylov tranzaksiyani bajaradiPaylov → Merchant
6Customer return URL manziliga yo‘naltiriladiPaylov → Customer