Skip to content

Latest commit

 

History

History
211 lines (163 loc) · 12.9 KB

File metadata and controls

211 lines (163 loc) · 12.9 KB

Integrify

Integrify

PyPI package Supported Python versions Downloads Coverage
License uv workspace Monorepo


Integrify API inteqrasiyalarını rahatlaşdıran Python kitabxanasıdır. Bu repository bütün Integrify paketlərini bir monorepo daxilində birləşdirir: shared core + ayrıca publish olunan integration paketləri.

English below: English section

Mündəricat / Table of Contents


Azərbaycanca

Dokumentasiya

Əsas özəlliklər

  • Hər integration ayrıca paketdir, yalnız lazım olanı yükləyib istifadə edirsiniz.
  • Shared integrify-core ilə kod təkrarının qarşısı alınır.
  • Paketlər birlikdə inkişaf etdirilir, amma ayrı-ayrı publish olunur.
  • uv workspace sayəsində bütün member-lər eyni mühitdə test/lint edilir.
  • 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
pip install integrify[epoint]
pip install integrify[epoint,lsim]
pip install integrify[all]

İstifadəsi

Sync nümunə

from integrify.epoint import EPointRequest

resp = EPointRequest.pay(
    amount=100,
    currency='AZN',
    order_id='12345678',
    description='Ödəniş',
)
print(resp.ok, resp.body)

Async nümunə

from integrify.epoint import EPointAsyncRequest

resp = await EPointAsyncRequest.pay(
    amount=100,
    currency='AZN',
    order_id='12345678',
    description='Ödəniş',
)
print(resp.ok, resp.body)

Sorğu cavabı

class ApiResponse:
    ok: bool
    status_code: int
    headers: dict
    body: object

Mövcud per-integration repository-lərin bu monorepo-ya köçürülməsi üçün MIGRATION.md faylına baxın.


English

Integrify is a Python toolkit for API integrations. This repository is the monorepo for the Integrify package family: shared core plus independently published integration packages.

Documentation

Key features

  • Each integration is installed independently, so users install only what they need.
  • Shared integrify-core avoids duplicated base logic.
  • Packages are developed together but released independently.
  • uv workspace keeps linting and tests unified across members.
  • Library supports both sync and async requests
  • Every class and type in the library is documented
  • Everything in library is type hinted
  • Explanation of most of the request flows are explained

Installation

pip install integrify
pip install integrify[epoint]
pip install integrify[epoint,lsim]
pip install integrify[all]

Usage

Sync example

from integrify.epoint import EPointRequest

resp = EPointRequest.pay(
    amount=100,
    currency='AZN',
    order_id='12345678',
    description='Payment',
)
print(resp.ok, resp.body)

Async example

from integrify.epoint import EPointAsyncRequest

resp = await EPointAsyncRequest.pay(
    amount=100,
    currency='AZN',
    order_id='12345678',
    description='Payment',
)
print(resp.ok, resp.body)

Response object shape

class ApiResponse:
    ok: bool
    status_code: int
    headers: dict
    body: object

For migration steps from older per-integration repositories, see MIGRATION.md.

Supported packages

Caution

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

Even though all requests are written according to official documentation, Integrify is unofficial library for these integrations

Service Core requests/ Əsas sorğular All requests/Bütün sorğular Documentation Tested in production/Real mühitdə test Lead developer/Əsas Developer
EPoint ✅ loading Full ✅ Miradil Zeynallı
KapitalBank ✅ ✅ Full ✅ Zaman Kazımov
LSIM ✅ ✅ Full ✅ Miradil Zeynallı
Posta Guvercini ✅ ✅ Full ✅ Zaman Kazımov
Azericard ✅ loading Full loading Miradil Zeynallı
Clopos ✅ ✅ Full loading Miradil Zeynallı
ECustoms (məxfi) ✅ ✅ Məxfi loading Miradil Zeynallı
Payriff loading loading loading loading Vahid Həsənzadə