Digər obyektlər¶
Callback¶
EPoint callback-lərinin açılması və doğrulanması.
pay() yalnız ödənişi başladır. Nəticə EPoint dashboard-ında qeyd etdiyiniz
URL-ə POST olunur, application/x-www-form-urlencoded body ilə:
data=eyJzdGF0dXMiOiAic3VjY2VzcyJ9&signature=EG7cnaJteYS6cVuR2aqDvpecQtk=
data base64-lənmiş JSON-dur, signature isə onun EPOINT_PRIVATE_KEY ilə
imzasıdır. Tipik istifadə (framework-dən asılı olmayaraq — xam body kifayətdir):
$callback = new Callback(EPointConfig::fromEnvironment());
try {
$data = $callback->decode($request->getContent());
} catch (SignatureMismatch) {
return response('', 403);
}
if ($data->isSuccessful()) {
$order = Order::find($data->orderId);
// ...
}
| Property | Məftildəki ad | Tip | Məcburi | Qaydalar | Təsvir |
|---|---|---|---|---|---|
config |
config |
EPointConfig |
✅ |
| Metod | Qaytarır | Nə edir |
|---|---|---|
decode() |
CallbackData |
Xam callback body-sini açır və imzasını yoxlayır. |
verify() |
bool |
Callback-in yalnız imzasını yoxlayır, datanı açmadan. |
BankCode¶
Bankın 3 simvollu cavab kodları və onların izahı.
Kodlar bankdan gəlir, EPoint-dən deyil, ona görə siyahı tam deyil — bank sabah
yeni kod qaytara bilər. describe() tanımadığı kod üçün null qaytarır; cavab
DTO-ları isə xam kodu saxlayır (PaymentResult::$code), izahı ayrıca verir.
Bu, Python kitabxanasından fərqlənən şüurlu seçimdir: orada validator code
field-inin özünü izah mətni ilə əvəz edir, yəni tanınan kodun orijinal dəyəri
itir və '000' ilə müqayisə etmək mümkün olmur. Burada ikisi də əlçatandır.
Mətnlər Python kitabxanasından eynilə götürülüb ki, iki SDK istifadəçiyə aynı
mesajı göstərsin. Bir qismində orfoqrafik problemlər var (vaasaittün,
dolsazlıqdan, oqurlarnı kard); onları burada düzəltmək iki kitabxananı
ayırardı, ona görə toxunulmayıb.
Field-i yoxdur.