Skip to main content

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

Project description

Integrify EPoint

[!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 EPoint inteqrasiyası üçün nəzərdə tutulmuşdur.

Test Publish Package version Netlify Status

Downloads Supported Python versions Coverage


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

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


Rəsmi Dokumentasiya (v1.0.3)

Azərbaycanca

İngliscə

Rusca

Ə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-epoint

İstifadəsi

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

EPoint interfeysinin dilini dəyişmək istəyirsinizsə, EPOINT_INTERFACE_LANG "environment variable"-na dəyər verin. Default olaraq, Azərbaycan dili olacaq.

Sorğular uğurlu və ya uğursuz olduqda, spesifik URL-ə yönləndirmək istəyirsinizsə, bu dəyişənlərə də mühit levelində dəyər verin: EPOINT_SUCCESS_REDIRECT_URL, EPOINT_FAILED_REDIRECT_URL

Sorğular listi

Sorğu funksiyası Məqsəd EPoint API Callback-ə sorğu atılır
pay Ödəniş /api/1/request
get_transaction_status Ödəniş statusunun yoxlanılması /api/1/get-status
save_card Ödəniş olmadan kartı yadda saxlamaq /api/1/card-registration
pay_with_saved_card Saxlanılan kartla ödəniş /api/1/execute-pay
pay_and_save_card Ödəniş etmə və kartı yadda saxlamaq /api/1/card-registration-with-pay
payout Vəsaitlərin köçürülməsi /api/1/refund-request
refund Ödənişi tam və ya yarımçıq geri qaytarma /api/1/reverse
split_pay Ödənişi başqa EPoint istifadəçisi ilə bölüb ödəmə /api/1/split-request
split_pay_with_saved_card Saxlanılmış kartla ödənişi başqa EPoint istifadəçisi ilə bölüb ödəmə /api/1/split-execute-pay
split_pay_and_save_card Ödənişi başqa EPoint istifadəçisi ilə bölüb ödəmə və kartı saxlamaq /api/1/split-card-registration-with-pay

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 EPoint dashboard-da qeyd etdiyiniz callback URL-ə POST sorğusu göndərilir. Data siz adətən sorğu göndərdiyiniz formatda gəlir:

{
    'data': 'base64data'
    'signature': 'sha1signature'
}

Bu data-nı signature-ni yoxladıqdan sonra, decode etmək lazımdır. Callback üçün API yazdıqda, datanı alıb, helpers.py-dakı decode_callback_data funksiyası ilə həm signature yoxlanması həm də datanın decode-unu edə bilərsiniz. Bu funksiya sizə DecodedCallbackDataSchema formatında decode olunmuş datanı qaytarır.

Qeyd

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

@router.post('/epoint/callback')
async def epoint_callback(data: DecodedCallbackDataSchema = Depends(decode_callback_data)):
  ...

Funksiyanı belə yazdıqda, data avtomatik signature-i yoxlanaraq decode edilir.

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. DecodedCallbackDataSchema 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ı
status Success və ya failed əməliyyatının nəticəsi
message Ödənişin icra statusu haqqında mesaj
code Bankın cavab kodu. 3 rəqəmli koddan, xəta/uğur mesajına çevrilir.
transaction Epoint xidmətinin əməliyyat IDsi
bank_transaction Bank ödəniş əməliyyatı IDsi
bank_response Ödəniş icrasının nəticəsi ilə bankın cavabı
operation_code 001-kart qeydiyyatı\n100- istifadəçi ödənişi
rrn Retrieval Reference Number - unikal əməliyyat identifikator. Yalnız uğurlu bir əməliyyat üçün mövcuddur
card_mask Ödəniş səhifəsində göstərilən istifadəçi adı
card_name 123456******1234 formatında əks edilən kart maskası
amount Ödəniş məbləği
order_id Tətbiqinizdə unikal əməliyyat ID
card_id Ödənişləri yerinə yetirmək üçün istifadə edilm lazım olan unikal kart identifikatoru
split_amount İkinci istifadəçi üçün ödəniş məbləği
other_attr Əlavə göndərdiyiniz seçimlər

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 Callback-də gəlməyəcək datalar
pay card_id, split_amount
save_card order_id, transaction, amount, other_attr
pay_and_save_card message
split_pay -
split_pay_and_save_card message

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

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ı
Clopos Full 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_epoint-1.1.0.tar.gz (27.0 kB view details)

Uploaded Source

Built Distribution

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

integrify_epoint-1.1.0-py3-none-any.whl (28.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for integrify_epoint-1.1.0.tar.gz
Algorithm Hash digest
SHA256 47e717c905230ad30e11470329d665c852022f3bc5d35ec42e7e64da7808bd2e
MD5 9a44a79b7704f8cc19c6b8b23acd97cf
BLAKE2b-256 6b86ab8df99920e9277e6e90a4585cb66b64a5bc779cec7279e1f6c6496a9d20

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on Integrify-SDK/integrify-epoint-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_epoint-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for integrify_epoint-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a6980a8b6eca534f0726517f87c707fcec9848c260dde5a058c4898d1c24a312
MD5 67c77dec2d37625542b7379001408c5a
BLAKE2b-256 c9faed8834dba0dc37ac0addf2a4468d4e9c98c7641831fda23ee7a4d7f2f698

See more details on using hashes here.

Provenance

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

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

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page