Download the PHP package integrify/azericard without Composer

On this page you can find all versions of the php package integrify/azericard. 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 azericard

Integrify Azericard (PHP)

Azericard inteqrasiyası — kart ödənişləri (MPI, 3-D Secure) və pul köçürmələri (MT).

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

[!IMPORTANT] Bu API-nin əksəriyyəti server-server sorğu deyil. Səkkiz əməliyyatdan beşi heç bir HTTP sorğusu atmır: onlar müştərinin brauzerinin Azericard-a özünün göndərməli olduğu formanı qaytarır. Nəticə sonradan sizin callback URL-inizə gəlir.

Kitabxananın yüklənməsi

ext-openssl tələb olunur — MPI sorğuları RSA ilə imzalanır.

İki sistem, iki host, iki açar

Sistem Nə üçün Host (test / prod) İmza
MPI kart ödənişləri testmpi.3dsecure.az / mpi.3dsecure.az RSA SHA-256 (P_SIGN)
MT pul köçürmələri testmt.azericard.com / mt.azericard.com MD5 + paylaşılan açar

[!WARNING] İki açar var və onlar fərqlidir. MPI RSA private key (PEM) istəyir, MT isə adi sətir açarı. Python kitabxanası ikisini də eyni AZERICARD_KEY_FILE_PATH dəyişənindən oxuyur, halbuki bir fayl hər ikisi ola bilməz. Burada onlar ayrıdır və yalnız istifadə etdiyiniz sistem üçün açar vermək kifayətdir.

Konfiqurasiya

Dəyişən Məcburi Təsvir
AZERICARD_MERCHANT_ID Terminal IDsi
AZERICARD_KEY_FILE_PATH kart üçün RSA private key faylı (PKCS#1 və ya PKCS#8)
AZERICARD_TRANSFER_KEY köçürmə üçün MT-nin MD5 açarı
AZERICARD_MERCHANT_NAME kart üçün Satıcının adı, maksimum 50 simvol
AZERICARD_MERCHANT_URL kart üçün Satıcının saytı
AZERICARD_CALLBACK_URL kart üçün Nəticənin post olunduğu URL
AZERICARD_MERCHANT_EMAIL Satıcının email ünvanı
AZERICARD_ENV test və ya prod
AZERICARD_INTERFACE_LANG Dil (default az)

Ödəniş axını

Öz şablonunuzu qurmaq istəyirsinizsə:

Bloklama və tamamlama

authorize() default olaraq məbləği birbaşa silir. Bloklamaq üçün:

ResponseType Nə edir
AcceptPayment (21) bloklanmış məbləği silir
ReturnPayment (22) ödənişi geri qaytarır
CancelPayment (24) bloku azad edir

Kart yaddaşı

Callback-lər

[!CAUTION] Kart callback-inin imzası yoxlanıla bilmir. P_SIGN Azericard-ın öz açarı ilə imzalanıb; yoxlamaq üçün onların public açarı lazımdır, sizdə isə yalnız öz private açarınız var. Python kitabxanası da yoxlamır. Ona görə bu callback-i tək başına "ödəniş oldu" sübutu saymayın — getTransactionStatus() ilə təsdiqləyin.

Köçürmə callback-i isə yoxlanılır:

Pul köçürmələri (MT)

Status sorğusu

Bu endpoint cavabında boşluqlu, insan üçün yazılmış açarlar qaytarır ("Transaction Status message", "Banks approval code") — digər endpoint-lərdəki UPPER_SNAKE deyil. DTO adları olduğu kimi qəbul edir.

Vaxt damğası

Azericard TIMESTAMP field-ini GMT olaraq təyin edir, format YYYYMMDDHHMMSS. Bu paket həmişə UTC göndərir:

Python kitabxanası datetime.now() — yəni serverin yerli vaxtını — göndərir. Bakıda bu 4 saat fərq deməkdir və şlüz vaxt fərqinə görə sorğunu rədd edə bilər.

Xətalar

Exception Nə vaxt
MissingConfiguration Açar və ya merchant məlumatı yoxdur; AZERICARD_ENV tanınmır
InvalidRequest Məbləğ ədəd deyil; imzalama uğursuz; host tanınmır
SignatureMismatch Köçürmə callback-inin və ya cavabının imzası uyğun gəlmir
ValidationFailed Cavab 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

Forma qaytaran metodlar HTTP atmadığı üçün transport lazım deyil:

İmzanın nəyin üzərində hesablandığını yoxlamaq üçün Signature::macSource() açıqdır — belə ki, test açardan asılı olmadan düsturu yoxlaya bilir:


All versions of azericard with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
ext-json Version *
ext-openssl 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/azericard contains the following files

Loading the files please wait ...