Skip to main content

Integrify Azericard

[!Caution] Bütün sorğular rəsmi dokumentasiyalara uyğun yazılsalar da, Integrify qeyri-rəsmi API klient-dir.

Integrify

Integrify API inteqrasiyalarını rahatlaşdıran sorğular kitabaxanasıdır. Bu kitabxana Azericard inteqrasiyası üçün nəzərdə tutulmuşdur.

Test Publish Package version Netlify Status

Downloads Supported Python versions Coverage


Dokumentasiya: https://integrify.mmzeynalli.dev/integrations/azericard/about/

Kod: https://github.com/Integrify-SDK/integrify-azericard-python


Rəsmi Dokumentasiya (v2024.11.6)

Azərbaycanca

İngliscə

Əsas özəlliklər

  • Kitabxana həm sync, həm də async sorğu dəyişimini dəstəkləyir.
  • Kitabaxanadakı bütün sinif və funksiyalar tamamilə dokumentləşdirilib.
  • Kitabaxanadakı bütün sinif və funksiyalar tipləndirildiyindən, "type hinting" aktivdir.
  • Sorğuların çoxunun məntiq axını (flowsu) izah edilib.

Kitabxananın yüklənməsi

pip install integrify-azericard

İstifadəsi

Bu sorğulardan istifadə etmək üçün, bu dəyərləri "environment variable"-larına əlavə etməlisiniz: AZERICARD_KEY_FILE_PATH.

Bu sorğulardan rahat istifadə etmək üçün, qeyd olunan dəyərləri "environment variable"-larına əlavə etməyiniz məsləhət görülür: AZERICARD_MERCHANT_ID (Terminal ID), AZERICARD_MERCHANT_NAME, AZERICARD_MERCHANT_URL, AZERICARD_CALLBACK_URL (backref). Əks halda bu dəyərləri funksiyaları istifadə edərkən parametr kimi göndərməlisiniz.

AzeriCardClientClass interfeysinin dilini dəyişmək istəyirsinizsə, AZERICARD_INTERFACE_LANG "environment variable"-na dəyər verin, və ya hər sorğuda dil parametrini göndərin. Default olaraq, Azərbaycan dili olacaq.

Sorğular listi

Sorğu metodu Məqsəd Azericard API
authorization Ödəniş/Bloklama https://mpi.3dsecure.az/cgi-bin/cgi_link (TRTYPE='1')
auth_and_save_card Ödəniş/Bloklama və kartı yadda saxlamaq https://mpi.3dsecure.az/cgi-bin/cgi_link (TRTYPE='1')
auth_with_saved_card Saxlanılan kartla ödəniş/bloklama https://mpi.3dsecure.az/cgi-bin/cgi_link (TRTYPE='1')
finalize Blok olunmuş məbləği qəbul ETMƏMƏK (offline) sorğusu https://mpi.3dsecure.az/cgi-bin/cgi_link (TRTYPE='24')
get_transaction_status Ödəniş statusunun yoxlanılması https://mpi.3dsecure.az/cgi-bin/cgi_link (TRTYPE='90')
transfer_start Müştəriyə pul köçürülmə prosesinin başladılması https://mt.azericard.com/payment/view
transfer_confirm Müştəriyə pul köçürülmə prosesini təsdiqləmə https://mt.azericard.com/api/confirm
transfer_decline Müştəriyə pul köçürülmə prosesini imtina etmə https://mt.azericard.com/api/decline

Sorğu göndərmək axını

Nəzərə alsaq ki, Azericard form submission qəbul edərək, sizə redirectsiz səhifəni açır, form-u backend-dən submit etmık mümkün deyil, məhz front tərəfdən olmalıdır. Ona görə, başqa inteqrasiyalardan fərqli olaraq, Azericard-da kitabxana sorğu atmır, form-da göndərilməli olan data-nı qaytarır. Format JSON olsa da, köməkçi funksiyadan istifadə edərək, HTML formu alın, front-a response kimi göndərə bilərsiniz:

from integrify.azericard.client import AzericardClient
from integrify.azericard.helpers import json_to_html_form

req = AzericardClient.pay(
    amount=1,
    currency='AZN',
    order='12345678',
    desc='test',
    country='AZ',
)

form = json_to_html_form(req)
print(form)  # <form action="https://testmpi.3dsecure.az/cgi-bin/cgi_link" method="POST">
             #   <input type="hidden" name="ORDER" value="12345678"> ...

Callback Sorğusu

Bəzi sorğular müştəri məlumat daxil etdikdən və arxa fonda bank işləmləri bitdikdən sonra, tranzaksiya haqqında məlumat sizin mühit dəyişənində (və ya sorğuda) qeyd etdiyiniz callback URL-ə POST sorğusu göndərilir. Hər datada PSIGN field-i vardır ki, sizin server tərəfindən scamming-in qarşısını almaq üçün düzgün olub-olmadığını yoxlamalısınız.

Qeyd

FastAPI istifadəçiləri kiçik "shortcut"-dan istifadə edə bilərlər:

from fastapi import Fastapi, APIRouter, Depends
from integrify.azericard.schemas.callback import AuthCallbackWithCardDataSchema

router = APIRouter()

@router.post('/azericard/callback')
async def azericard_callback(data: AuthCallbackWithCardDataSchema):
   ...

Callback Data formatı

Nə sorğu göndərməyinizdən asılı olaraq, callback-ə gələn data biraz fərqlənə bilər. [AuthCallbackWithCardDataSchema][integrify.azericard.schemas.callback.AuthCallbackWithCardDataSchema] bütün bu dataları özündə cəmləsə də, hansı fieldlərin gəlməyəcəyini (yəni, decode-dan sonra None olacağını) bilmək yaxşı olar. Ümumilikdə, mümkün olacaq datalar bunlardır:

Dəyişən adı İzahı
terminal Sorğudan əks etdirilməsi Terminal ID
trtype Sorğudan əks etdirilməsi Transaction Type
order Sorğudan əks etdirilməsi order id
amount İcazə verilən məbləğ. Adətən, orijinal məbləğə və alıcının haqqına bərabər olacaq.
currency Sorğudan əks etdirilməsi ödəniş məzənnəsi
action EGateway fəaliyyət kodu
rc Əməliyyat cavab kodu (ISO-8583 Sahə 39)
approval Müştəri bankının təsdiq kodu (ISO-8583 Sahə 38). Kart idarəetmə sistemi tərəfindən təmin edilmədikdə boş ola bilər.
rrn Müştəri bankının axtarış istinad nömrəsi (ISO-8583 Sahə 37)
int_ref Elektron ticarət şlüzünün daxili istinad nömrəsi
timestamp GMT-də e-ticarət şlüzünün vaxt damğası:: YYYYMMDDHHMMSS
nonce E-Commerce Gateway qeyri-dəyərlidir. Hexadecimal formatda 8-32 gözlənilməz təsadüfi baytla doldurulacaq. MAC istifadə edildikdə mövcud olacaq.
card 123456******1234 formatında əks edilən kart maskası
token Saxlanılacaq kartın TOKEN parametri
p_sign Onaltılıq formada E-Commerce Gateway MAC (Message Authentication Code). MAC istifadə edildikdə mövcud olacaq.

Sorğudan asılı olaraq, bu data-lar callback-də GƏLMİR (yəni, avtomatik None dəyəri alır):

Sorğu metodu None field-lər
authorization card, token
auth_and_save_card -
auth_with_saved_card -
finalize card, token

Dəstəklənən başqa API inteqrasiyaları

Servis Əsas sorğular Bütün sorğular Dokumentləşdirilmə Real mühitdə test Əsas developer
EPoint loading Tam Miradil Zeynallı
KapitalBank Tam Zaman Kazımov
LSIM Tam Miradil Zeynallı
Posta Guvercini Tam Zaman Kazımov
Azericard loading Tam loading Miradil Zeynallı
Payriff loading loading loading loading Vahid Həsənzadə

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

integrify_azericard-1.1.0.tar.gz (30.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

integrify_azericard-1.1.0-py3-none-any.whl (34.6 kB view details)

Uploaded Python 3

File details

Details for the file integrify_azericard-1.1.0.tar.gz.

File metadata

  • Download URL: integrify_azericard-1.1.0.tar.gz
  • Upload date:
  • Size: 30.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for integrify_azericard-1.1.0.tar.gz
Algorithm Hash digest
SHA256 71e19b3a90b0018d8cd7f249966243b7cbb774e0bd9d8829c7b1a32f15ad715f
MD5 d8a3afdd9c5d031a34a225b0bd9e8853
BLAKE2b-256 12628107ae260096c3b9ee38e93db7a3343245c5bad52e16da74979cb3e38d1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for integrify_azericard-1.1.0.tar.gz:

Publisher: publish.yml on Integrify-SDK/integrify-azericard-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file integrify_azericard-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for integrify_azericard-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fdfd0595fd8af48ff3c914009af7209f1d616e524283696dd1fd5bb8d603b73b
MD5 a4cf19b3d65edf5aa92f95b16ade1b1f
BLAKE2b-256 6650bd070afbcf7bd8ab159c0a108c573a9a46bf9e8b82574d85ac7b2cdcb7a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for integrify_azericard-1.1.0-py3-none-any.whl:

Publisher: publish.yml on Integrify-SDK/integrify-azericard-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page