API Client¶
Note
İstifadəsi göstərilən bütün sorğular sinxrondur. Asinxron versiyasaları istifadə etmək üçün
bu importu edin və eyni-adlı funksiyaları await ilə çağırın:
from integrify.azericard import AzeriCardAsyncClient
integrify.azericard.client.AzeriCardClient
module-attribute
¶
AzeriCardClient = AzeriCardClientClass(sync=True)
integrify.azericard.client.AzeriCardAsyncClient
module-attribute
¶
AzeriCardAsyncClient = AzeriCardClientClass(sync=False)
Note
Bunlar artıq hazır yaradılmış klass obyektləridir, birbaşa istifadə üçün nəzərdə tutulub. Əks halda
bütün sorğuları AzeriCardClientClass().save_card() kimi istifadə etməlisiniz.
integrify.azericard.client.AzeriCardClientClass
¶
AzeriCardClientClass(name='AzeriCard', base_url=None, default_handler=None, sync=True, dry=False)
Bases: APIClient
AzeriCard sorğular üçün baza class
authorization
¶
authorization(amount, currency, order, desc, trtype, merch_name=AZERICARD_MERCHANT_NAME, merch_url=AZERICARD_MERCHANT_EMAIL, terminal=AZERICARD_MERCHANT_ID, email=AZERICARD_MERCHANT_EMAIL, country=_UNSET, merch_gmt=_UNSET, backref=AZERICARD_CALLBACK_URL, timestamp=now(), lang=AZERICARD_INTERFACE_LANG, name=_UNSET, m_info=_UNSET)
Ümumi Ödəniş/Pul Dondurma/Dondurulmanı sorğusu
Endpoint: https://{test}mpi.3dsecure.az/cgi-bin/cgi_link
Example
from integrify.azericard import AzeriCardClient
from integrify.azericard.schemas.enums import AuthorizationType
AzeriCardClient.authorization(amount=100, currency='AZN', order='12345678', desc='Ödəniş', trype=AuthorizationType.FREEZE, name='Filankes')
Cavab formatı: Yoxdur. Redirect baş verir, nəticə callback sorğusunda qayıdır.
| PARAMETER | DESCRIPTION |
|---|---|
amount
|
Ödəniş miqdarı. Numerik dəyər.
TYPE:
|
currency
|
Sifariş valyutası: 3 simvollu valyuta: (AZN)
TYPE:
|
order
|
Satıcı sifariş ID-si, rəqəmsal. Son 6 rəqəm sistem izi audit nömrəsi kimi istifadə olunur, terminal id üçün bir gün ərzində unikal olmalıdır
TYPE:
|
desc
|
Ödənişin təsviri/açıqlaması
TYPE:
|
merch_name
|
Satıcının (merchant) adı (kart istifadəçisinin anladığı formada olmalıdır)
TYPE:
|
merch_url
|
Satıcının web site URL-i
TYPE:
|
terminal
|
Bank tərəfindən təyin edilmiş Merchant Terminal ID. Mühit dəyişəni kimi təyin olunmayıbsa, burada parametr kimi ötürülməlidir.
TYPE:
|
trtype
|
Tranzaksiya növü: 0 (Pre-Avtorizasiya əməliyyatı, pulu bloklamaq/dondurmaq) və ya 1 (Avtorizasiya əməliyyatı, birbaşa ödəniş)
TYPE:
|
email
|
Bildirişlər üçün Email ünvan. Qeyd olunmuş sahə doldurulduğu halda Gateway email ünvanı müəyyən etmək üçün əməliyyat nəticəsi haqqında bildiriş göndərə bilər
TYPE:
|
country
|
Merchant shop 2 simvollu ölkə kodu. Merchant sistemi Gateway serverin yerləşdiyi ölkədən fərqli ölkədə yerləşirsə qeyd olunmalıdır
TYPE:
|
merch_gmt
|
Merchant-ın UTC/GMT vaxt zonası. Merchant sistemi Gateway serverin yerləşdiyi vaxt zonasından fərqli vaxt zonasında yerləşirsə qeyd olunmalıdır
TYPE:
|
backref
|
Avtorizasiya nəticəsinin yerləşdirilməsində(post) istifadə olunan Merchant URL
TYPE:
|
timestamp
|
Merchant server-lə e-Gateway server arasında zaman fərqi 1 saatı aşmamalıdır, əks halda Gateway tranzaksiyaya imtina verəcək. Dəyər verilmədikdə,
TYPE:
|
lang
|
Dil seçimi
TYPE:
|
name
|
Müştərinin adı (kartda göstərildiyi kimi)
TYPE:
|
m_info
|
Əlavə məlumatlar. Məs: {"browserScreenHeight":"1920","browserScreenWidth":"1080","browserTZ":"0","mobilePhone":{"cc":"994","subscriber":"5077777777"}}
TYPE:
|
auth_and_save_card
¶
auth_and_save_card(amount, currency, order, desc, trtype, merch_name=AZERICARD_MERCHANT_NAME, merch_url=AZERICARD_MERCHANT_EMAIL, terminal=AZERICARD_MERCHANT_ID, email=AZERICARD_MERCHANT_EMAIL, country=_UNSET, merch_gmt=_UNSET, backref=AZERICARD_CALLBACK_URL, timestamp=now(), lang=AZERICARD_INTERFACE_LANG, name=_UNSET, m_info=_UNSET)
Ümumi kartı saxlayaraq ödəniş sorğusu
Endpoint: https://{test}mpi.3dsecure.az/token/cgi_link
Example
from integrify.azericard import AzeriCardClient
from integrify.azericard.schemas.enums import AuthorizationType
AzeriCardClient.auth_and_save_card(amount=100, currency='AZN', order='12345678', desc='Ödəniş', trype=AuthorizationType.DIRECT, name='Filankes')
Cavab formatı: Callback sorğu baş verir
| PARAMETER | DESCRIPTION |
|---|---|
amount
|
Ödəniş miqdarı. Numerik dəyər.
TYPE:
|
currency
|
Sifariş valyutası: 3 simvollu valyuta: (AZN)
TYPE:
|
order
|
Satıcı sifariş ID-si, rəqəmsal. Son 6 rəqəm sistem izi audit nömrəsi kimi istifadə olunur, terminal id üçün bir gün ərzində unikal olmalıdır
TYPE:
|
desc
|
Ödənişin təsviri/açıqlaması
TYPE:
|
merch_name
|
Satıcının (merchant) adı (kart istifadəçisinin anladığı formada olmalıdır)
TYPE:
|
merch_url
|
Satıcının web site URL-i
TYPE:
|
trtype
|
Tranzaksiya növü = 0 (Pre-Avtorizasiya əməliyyatı, pulu bloklamaq/dondurmaq),Tranzaksiya növü = 1 (Avtorizasiya əməliyyatı)
TYPE:
|
backref
|
Avtorizasiya nəticəsinin yerləşdirilməsində(post) istifadə olunan Merchant URL
TYPE:
|
email
|
Bildirişlər üçün Email ünvan. Qeyd olunmuş sahə doldurulduğu halda Gateway email ünvanı müəyyən etmək üçün əməliyyat nəticəsi haqqında bildiriş göndərə bilər
TYPE:
|
country
|
Merchant shop 2 simvollu ölkə kodu. Merchant sistemi Gateway serverin yerləşdiyi ölkədən fərqli ölkədə yerləşirsə qeyd olunmalıdır
TYPE:
|
merch_gmt
|
Merchant-ın UTC/GMT vaxt zonası. Merchant sistemi Gateway serverin yerləşdiyi vaxt zonasından fərqli vaxt zonasında yerləşirsə qeyd olunmalıdır
TYPE:
|
timestamp
|
Merchant server-lə e-Gateway server arasında zaman fərqi 1 saatı aşmamalıdır, əks halda Gateway tranzaksiyaya imtina verəcək. Dəyər verilmədikdə,
TYPE:
|
lang
|
Dil seçimi
TYPE:
|
name
|
Müştərinin adı (kartda göstərildiyi kimi)
TYPE:
|
m_info
|
Əlavə məlumatlar. Məs: {"browserScreenHeight":"1920","browserScreenWidth":"1080","browserTZ":"0","mobilePhone":{"cc":"994","subscriber":"5077777777"}}
TYPE:
|
auth_with_saved_card
¶
auth_with_saved_card(amount, currency, order, desc, trtype, token, merch_name=AZERICARD_MERCHANT_NAME, merch_url=AZERICARD_MERCHANT_EMAIL, terminal=AZERICARD_MERCHANT_ID, email=AZERICARD_MERCHANT_EMAIL, country=_UNSET, merch_gmt=_UNSET, backref=AZERICARD_CALLBACK_URL, timestamp=now(), lang=AZERICARD_INTERFACE_LANG, name=_UNSET, m_info=_UNSET)
Ümumi saxlanmış kart ilə Authurization sorğusu
Endpoint: https://{test}mpi.3dsecure.az/token/cgi_link
Example
from integrify.azericard import AzeriCardClient
from integrify.azericard.schemas.enums import AuthorizationType
AzeriCardClient.auth_with_saved_card(amount=100, currency='AZN', order='12345678', desc='Ödəniş', trype=AuthorizationType.DIRECT, name='Filankes', token='card-token')
Cavab formatı: Callback sorğu baş verir
| PARAMETER | DESCRIPTION |
|---|---|
amount
|
Ödəniş miqdarı. Numerik dəyər.
TYPE:
|
currency
|
Sifariş valyutası: 3 simvollu valyuta: (AZN)
TYPE:
|
order
|
Satıcı sifariş ID-si, rəqəmsal. Son 6 rəqəm sistem izi audit nömrəsi kimi istifadə olunur, terminal id üçün bir gün ərzində unikal olmalıdır
TYPE:
|
desc
|
Ödənişin təsviri/açıqlaması
TYPE:
|
merch_name
|
Satıcının (merchant) adı (kart istifadəçisinin anladığı formada olmalıdır)
TYPE:
|
merch_url
|
Satıcının web site URL-i
TYPE:
|
trtype
|
Tranzaksiya növü = 0 (Pre-Avtorizasiya əməliyyatı, pulu bloklamaq/dondurmaq),Tranzaksiya növü = 1 (Avtorizasiya əməliyyatı)
TYPE:
|
backref
|
Avtorizasiya nəticəsinin yerləşdirilməsində(post) istifadə olunan Merchant URL
TYPE:
|
token
|
Yadda saxlanılmış kartın ID-si
TYPE:
|
email
|
Bildirişlər üçün Email ünvan. Qeyd olunmuş sahə doldurulduğu halda Gateway email ünvanı müəyyən etmək üçün əməliyyat nəticəsi haqqında bildiriş göndərə bilər
TYPE:
|
country
|
Merchant shop 2 simvollu ölkə kodu. Merchant sistemi Gateway serverin yerləşdiyi ölkədən fərqli ölkədə yerləşirsə qeyd olunmalıdır
TYPE:
|
merch_gmt
|
Merchant-ın UTC/GMT vaxt zonası. Merchant sistemi Gateway serverin yerləşdiyi vaxt zonasından fərqli vaxt zonasında yerləşirsə qeyd olunmalıdır
TYPE:
|
timestamp
|
Merchant server-lə e-Gateway server arasında zaman fərqi 1 saatı aşmamalıdır, əks halda Gateway tranzaksiyaya imtina verəcək. Dəyər verilmədikdə,
TYPE:
|
lang
|
Dil seçimi
TYPE:
|
name
|
Müştərinin adı (kartda göstərildiyi kimi)
TYPE:
|
m_info
|
Əlavə məlumatlar. Məs: {"browserScreenHeight":"1920","browserScreenWidth":"1080","browserTZ":"0","mobilePhone":{"cc":"994","subscriber":"5077777777"}}
TYPE:
|
finalize
¶
finalize(amount, currency, order, rrn, int_ref, trtype, terminal=AZERICARD_MERCHANT_ID, timestamp=now())
PreAuthorization (pulu bloklama) sorğusuna cavab və ya direkt ödənişi refund sorğusu
Endpoint: https://{test}mpi.3dsecure.az/cgi-bin/cgi_link
Example
from integrify.azericard import AzeriCardClient
from integrify.azericard.schemas.enums import AuthorizationResponseType
AzeriCardClient.finalize(amount=100, currency='AZN', order='12345678', rrn='payment_rrn', int_ref='int_ref', trtype=AuthorizationResponseType.ACCEPT_PAYMENT)
Cavab formatı:
| PARAMETER | DESCRIPTION |
|---|---|
amount
|
Ödəniş miqdarı. Numerik dəyər.
TYPE:
|
currency
|
Sifariş valyutası: 3 simvollu valyuta: (AZN)
TYPE:
|
order
|
Satıcı sifariş ID-si, rəqəmsal. Son 6 rəqəm sistem izi audit nömrəsi kimi istifadə olunur, terminal id üçün bir gün ərzində unikal olmalıdır
TYPE:
|
rrn
|
Ödənişin RRN-i, Authorization sorğusuna response-da gəlir
TYPE:
|
int_ref
|
Ödənişin referansı, Authorization sorğusuna response-da gəlir
TYPE:
|
trtype
|
Tranzaksiya növü: 21 (Təsdiq), 22 (Geri qaytarma), 24 (Ləğv etmə, spesifik banklar üçün istifadə olunur) |
timestamp
|
Merchant server-lə e-Gateway server arasında zaman fərqi 1 saatı aşmamalıdır, əks halda Gateway tranzaksiyaya imtina verəcək. Dəyər verilmədikdə,
TYPE:
|
get_transaction_status
¶
get_transaction_status(tran_trtype, order, terminal=AZERICARD_MERCHANT_ID, timestamp=now())
Bitmiş tranzaksiyanın statusunu alma sorğusu
Endpoint: https://{test}mpi.3dsecure.az/cgi-bin/cgi_link
Example
from integrify.azericard import AzeriCardClient
from integrify.azericard.schemas.enums import AuthorizationType
AzeriCardClient.get_transaction_status(tran_trtype=AuthorizationType.DIRECT, order='12345678')
Cavab formatı: GetTransactionStatusResponseSchema
| PARAMETER | DESCRIPTION |
|---|---|
tran_trtype
|
Sorğu üçün orijinal əməliyyat növü, TRTYPE (Məsələn: 0, 1, 22, 24 və s.)
TYPE:
|
order
|
Satıcı sifariş ID-si, rəqəmsal. Son 6 rəqəm sistem izi audit nömrəsi kimi istifadə olunur, terminal id üçün bir gün ərzində unikal olmalıdır
TYPE:
|
terminal
|
Bank tərəfindən təyin edilmiş Merchant Terminal ID. Mühit dəyişəni kimi təyin olunmayıbsa, burada parametr kimi ötürülməlidir.
TYPE:
|
timestamp
|
Merchant server-lə e-Gateway server arasında zaman fərqi 1 saatı aşmamalıdır, əks halda Gateway tranzaksiyaya imtina verəcək. Dəyər verilmədikdə,
TYPE:
|
transfer_start
¶
transfer_start(merchant, srn, amount, cur, receiver_credentials, redirect_link)
User-ə ödəniş etmək sorğusu
Endpoint: https://{test}mt.3dsecure.az/payment/view
Example
from integrify.azericard import AzeriCardClient
AzeriCardClient.transfer_start(merchant='MyMerchant', srn='12345678', amount=100, cur='944', receiver_credentials='Filankəsov Filankəs', redirect_link='my-redirect-api-for-user')
Cavab formatı: Callback sorğu baş verir
| PARAMETER | DESCRIPTION |
|---|---|
merchant
|
Şirkət adı
TYPE:
|
srn
|
Unikal əməliyyat nömrəsi
TYPE:
|
amount
|
Ödəniş məbləği
TYPE:
|
cur
|
Ödəniş valyutasının 3 rəqəmli kodu (944 - AZN)
TYPE:
|
receiver_credentials
|
İstifadəçinin tam adı
TYPE:
|
redirect_link
|
Əməliyyatın sonunda müştərini yönləndirmək istədiyiniz keçid linki
TYPE:
|
transfer_confirm
¶
transfer_confirm(merchant, srn, amount, cur, timestamp=now())
User-ə ödənişi təsdiqləmək sorğusu
Endpoint: https://{test}mt.3dsecure.az/api/confirm
Example
from integrify.azericard import AzeriCardClient
AzeriCardClient.transfer_confirm(merchant='MyMerchant', srn='12345678', amount=100, cur='944')
Cavab formatı: TransferConfirmResponseSchema
| PARAMETER | DESCRIPTION |
|---|---|
merchant
|
Şirkət adı
TYPE:
|
srn
|
Unikal əməliyyat nömrəsi
TYPE:
|
amount
|
Ödəniş məbləği
TYPE:
|
cur
|
Ödəniş valyutasının 3 rəqəmli kodu (944 - AZN)
TYPE:
|
timestamp
|
Dəyər verilmədikdə,
TYPE:
|
transfer_decline
¶
transfer_decline(merchant, srn, amount, cur, timestamp=now())
User-ə ödənişi imtina etmək sorğusu
Endpoint: https://{test}mt.3dsecure.az/api/decline
Example
from integrify.azericard import AzeriCardClient
AzeriCardClient.transfer_decline(merchant='MyMerchant', srn='12345678', amount=100, cur='944')
Cavab formatı: TransferDeclineResponseSchema
| PARAMETER | DESCRIPTION |
|---|---|
merchant
|
Şirkət adı
TYPE:
|
srn
|
Unikal əməliyyat nömrəsi
TYPE:
|
amount
|
Ödəniş məbləği
TYPE:
|
cur
|
Ödəniş valyutasının 3 rəqəmli kodu (944 - AZN)
TYPE:
|
timestamp
|
Dəyər verilmədikdə,
TYPE:
|