Download the PHP package integrify/epoint without Composer

On this page you can find all versions of the php package integrify/epoint. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package epoint

Integrify EPoint (PHP)

EPoint ödəniş şlüzünün PHP inteqrasiyası — ödəniş, kart yaddaşı, payout, refund və bölünmüş ödənişlər.

Composer: integrify/epoint Kod: https://github.com/integrify-sdk/integrify-php/tree/main/packages/epoint Sənədlər: https://integrify.mmzeynalli.dev/integrations/epoint Python qarşılığı: integrify-epoint

[!IMPORTANT] EPoint uğursuz ödəniş üçün də HTTP 200 qaytarır. Yəni RequestFailed atılmaması ödənişin alındığı demək deyil — hər cavabda isSuccessful() var və ona baxmaq məcburidir. RequestFailed yalnız şəbəkə problemi üçün atılır.

Kitabxananın yüklənməsi

Paket PSR-18 klienti və PSR-17 factory-si tələb edir (integrify/core onları virtual paket kimi istəyir), ona görə tətbiqinizdə real implementasiya olmalıdır:

Konfiqurasiya

Dəyişən Məcburi Default Təsvir
EPOINT_PUBLIC_KEY ✅ — Hər payload-a düşən public key
EPOINT_PRIVATE_KEY ✅ — İmzalama açarı. Heç vaxt göndərilmir
EPOINT_INTERFACE_LANG ❌ az Ödəniş səhifəsinin dili (az, en, ru)
EPOINT_SUCCESS_REDIRECT_URL ❌ — Uğurlu ödənişdən sonra yönləndirmə
EPOINT_FAILED_REDIRECT_URL ❌ — Uğursuz ödənişdən sonra yönləndirmə

Diqqət: environment dəyişəni EPOINT_FAILED_REDIRECT_URL adlanır, API-də gedən field isə error_redirect_url. Adlar Python kitabxanası ilə eyni saxlanılıb ki, iki SDK bir .env faylını paylaşa bilsin.

Ödəniş axını

Ödəniş iki mərhələlidir: pay() yalnız onu başladır.

Nəticə callback URL-inizə POST olunur:

[!WARNING] Callback URL-i internetdən əlçatandır: ona istənilən kəs sorğu ata bilər. İmza yoxlaması "bu datanı həqiqətən EPoint göndərdi" sualının yeganə cavabıdır, ona görə uyğunsuzluq null deyil, SignatureMismatch ilə bildirilir — yoxlamağı unutmaq mümkün olmasın.

Sorğular

Metod Endpoint Cavab
pay() POST /api/1/request RedirectUrl
getTransactionStatus() POST /api/1/get-status TransactionStatusResult
saveCard() POST /api/1/card-registration RedirectUrlWithCardId
payWithSavedCard() POST /api/1/execute-pay PaymentResult
payAndSaveCard() POST /api/1/card-registration-with-pay RedirectUrlWithCardId
payout() POST /api/1/refund-request PaymentResult
refund() POST /api/1/reverse MinimalResult
splitPay() POST /api/1/split-request RedirectUrl
splitPayWithSavedCard() POST /api/1/split-execute-pay SplitPaymentResult
splitPayAndSaveCard() POST /api/1/split-card-registration-with-pay RedirectUrlWithCardId

[!CAUTION] EPoint iki endpoint-i əksinə adlandırıb: /api/1/refund-request payout-dur (pul sizdən müştəriyə), /api/1/reverse isə refund-dur (ödənişin geri qaytarılması). Metod adları niyyəti bildirir — payout() və refund().

Saxlanılmış kartla ödəniş

Bölünmüş ödəniş

Geri qaytarma

Status sorğusu iki ayrı sual verir

Status sorğusunda error normal cavabdır — "soruşduğun tranzaksiya uğursuz olub", yəni sorğunun özü uğurludur. İkisini bir-biri ilə dəyişmək uğursuz ödənişi uğurlu kimi oxumaq deməkdir. Digər bütün cavablarda isSuccessful() sadəcə status === 'success' yoxlayır.

Məbləğlər

Metodlar int|float|string qəbul edir, EPoint isə məbləği JSON sətri kimi gözləyir ("100", "10.50").

Pul üçün string və ya int tövsiyə olunur. float qəbul edilir, lakin:

Status və kodlar

Enum-lar DTO property tipi kimi istifadə olunmur: EPoint sabah yeni status əlavə etsə, validasiya sınmamalıdır. BankCode::all() 102 tanınan bank kodunu qaytarır.

Xətalar

Exception Nə vaxt
MissingConfiguration EPOINT_PUBLIC_KEY/EPOINT_PRIVATE_KEY yoxdur
InvalidRequest Məbləğ ədəd deyil, sonlu deyil, və ya eksponensial yazılışdadır
SignatureMismatch Callback-in imzası uyğun gəlmir, və ya body formatı yanlışdır
ValidationFailed Cavab (və ya callback datası) DTO-ya uyğun gəlmir
RequestFailed Şəbəkə xətası, və ya HTTP >= 400

Hamısı Integrify\Exception\IntegrifyException-i implement edir.

Testlər

Testlər RecordingTransport inject edir — HTTP klienti heç vaxt mock olunmur:

Məftildə yalnız zərf gedir — {data, signature} — yəni payload base64-lənmiş JSON-dur. Private key nə payload-da, nə header-də görünür.


All versions of epoint with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
ext-json Version *
integrify/core Version ^0.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package integrify/epoint contains the following files

Loading the files please wait ...