Skip to content

Кнопка оплаты Xazna

Чтобы перенаправить покупателя на платежную страницу XAZNA, создайте на своей стороне кнопку или ссылку следующего вида:

text
https://pay.xazna.uz/billing/universal?merchantId={{$merchantID}}&amount={{$amount}}&invoice={{$invoice}}&returnURL={{$returnURL}}

Параметры запроса

Название параметраВидЗначение
merchantIdUUIDУникальный идентификатор для интеграции. Выдается через XAZNA.
amountIntegerСумма платежа. Передается в сумах.
invoiceStringУникальный параметр для оплаты.
returnURLOptionalСсылка, на которую пользователь будет перенаправлен после оплаты.

Примеры

html
<a
  class="xazna-pay"
  href="https://pay.xazna.uz/billing/universal?merchantId=string&amount=125000&invoice=321657984213246&returnURL=https%3A%2F%2Fexample.uz%2Forders%2F123"
>
  Оплатить через Xazna
</a>
ts
type XaznaPaymentLink = {
  merchantId: string
  amount: number // в сумах
  invoice: string
  returnURL?: string
}

export function buildXaznaLink(params: XaznaPaymentLink): string {
  const url = new URL('https://pay.xazna.uz/billing/universal')

  url.searchParams.set('merchantId', params.merchantId)
  url.searchParams.set('amount', String(params.amount))
  url.searchParams.set('invoice', params.invoice)

  if (params.returnURL) {
    url.searchParams.set('returnURL', params.returnURL)
  }

  return url.toString()
}
php
<?php
$query = http_build_query([
    'merchantId' => $merchantId,
    'amount'     => $amount,   // в сумах
    'invoice'    => $invoice,
    'returnURL'  => $returnURL,
]);

$link = 'https://pay.xazna.uz/billing/universal?' . $query;

Кодирование returnURL

returnURL содержит символы : и /, поэтому его нужно передавать в URL-кодированном виде. Используйте encodeURIComponent в JavaScript или http_build_query в PHP — они делают это автоматически.

Что происходит дальше

После перехода по ссылке Xazna запрашивает у вашего биллинга данные инвойса методом info, показывает их пользователю, списывает средства и уведомляет вас методом pay. Статус транзакции в любой момент можно уточнить методом check.

АК «Халқ банки» — платежная система Xazna