Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,11 +48,10 @@ docs/az/docs/integrations/<name>/
└── api-reference/ # mkdocstrings stubs: client.md, request.md, response.md, enums.md
```

Then wire it up in three places:
Then wire it up in two places:

1. `pyproject.toml` — `[project.optional-dependencies]` extra, the `all` list, and `[tool.uv.sources]`.
2. `docs/az/mkdocs.yml` — the mkdocstrings `paths` list **and** the `nav` tree.
3. `docs/az/partial.yml` — the matching nav fragment.

(English pages, where they exist, mirror this under `docs/en/`.)

Expand Down
46 changes: 30 additions & 16 deletions docs/az/docs/integrations/azericard/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,35 @@

[İngliscə](https://developer.azericard.com/en)

Markdown versiyası (bu saytda): [Azericard E-Commerce API](./official/api.md)

## Sürətli başlanğıc { #quickstart }

Azericard-da sorğunu brauzer göndərir: kitabxana form datasını hazırlayır, siz isə HTML formu front-a qaytarırsınız:

```python
from integrify.azericard import AzeriCardClient
from integrify.azericard.helpers import json_to_html_form
from integrify.azericard.schemas.enums import AuthorizationType

# 1. Form datasını hazırlayın (Azericard-a sorğunu brauzer göndərir)
req = AzeriCardClient.authorization(
amount=10,
currency='AZN',
order='12345678',
desc='Sifariş #1',
trtype=AuthorizationType.DIRECT,
)

# 2. HTML formu front-a qaytarın: submit olunduqda müştəri ödəniş səhifəsinə keçir
html_form = json_to_html_form(req, with_submit=True)
print(html_form)

# 3. Nəticə AZERICARD_CALLBACK_URL-ə POST sorğusu kimi gəlir (bax: "Callback Sorğusu")
```

Asinxron istifadə üçün `AzeriCardAsyncClient` import edib, eyni metodları `await` ilə çağırın.

## Sorğular listi { #list-of-requests }

| Sorğu metodu | Məqsəd | Azericard API |
Expand All @@ -29,22 +58,7 @@

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:

```python
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"> ...
```
Nümunə üçün yuxarıdakı [Sürətli başlanğıc](#quickstart) bölməsinə baxın.

## Callback Sorğusu { #callback-request }

Expand Down
2,077 changes: 2,077 additions & 0 deletions docs/az/docs/integrations/azericard/official/api.md

Large diffs are not rendered by default.

28 changes: 28 additions & 0 deletions docs/az/docs/integrations/epoint/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,34 @@

[Rusca](https://epointbucket.s3.eu-central-1.amazonaws.com/files/instructions/API%20Epoint%20ru.pdf)

## Sürətli başlanğıc { #quickstart }

Ödəniş yaratmaq, müştərini ödəniş səhifəsinə yönləndirmək və statusu yoxlamaq:

```python
from integrify.epoint import EPointRequest

# 1. Ödəniş yaradın
resp = EPointRequest.pay(
amount=10,
currency='AZN',
order_id='order-1',
description='Sifariş #1',
)

if resp.ok:
# 2. Müştərini EPoint ödəniş səhifəsinə yönləndirin
print(resp.body.redirect_url)

# 3. Nəticə callback-ə gəlir; istənilən vaxt statusu özünüz də yoxlaya bilərsiniz
status = EPointRequest.get_transaction_status(transaction_id=resp.body.transaction)
print(status.body.status) # new, success, returned, error, server_error
else:
print(resp.body.message)
```

Asinxron istifadə üçün `EPointAsyncRequest` import edib, eyni metodları `await` ilə çağırın.

## Sorğular listi { #list-of-requests }

| Sorğu metodu | Məqsəd | EPoint API | Callback-ə sorğu atılır |
Expand Down
27 changes: 27 additions & 0 deletions docs/az/docs/integrations/kapitalbank/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,33 @@

[AZ, EN, RU](https://pg.kapitalbank.az/docs)

Markdown versiyası (bu saytda): [Kapital Bank E-commerce API](./official/api.md)

## Sürətli başlanğıc { #quickstart }

Sifariş yaratmaq, müştərini bankın ödəniş səhifəsinə yönləndirmək və statusu yoxlamaq:

```python
from integrify.kapitalbank import KapitalRequest

# 1. Sifariş yaradın
resp = KapitalRequest.create_order(amount=10, currency='AZN', description='Sifariş #1')

if resp.ok:
order = resp.body.data

# 2. Müştərini bankın ödəniş səhifəsinə yönləndirin
print(order.redirect_url)

# 3. Müştəri KAPITAL_REDIRECT_URL-ə qayıtdıqdan sonra statusu yoxlayın
info = KapitalRequest.get_order_information(order_id=order.id)
print(info.body.data.status) # FullyPaid, Declined, Cancelled, ...
else:
print(resp.body.error)
```

Asinxron istifadə üçün `KapitalAsyncRequest` import edib, eyni metodları `await` ilə çağırın.

## Sorğular listi { #list-of-requests }

| Sorğu metodu | Məqsəd | Kapital API | Callback-ə sorğu atılır |
Expand Down
Loading
Loading