Get Mystery Box with random crypto!

#php #yii2 #extension #payme Payme Business Merchant API bila | UzDevid | Uzbekistan Developer Ibragimov Diyorbek

#php #yii2 #extension #payme

Payme Business Merchant API bilan ishlash uchun kengaytma.

Hayrli kech!

Payme Business bilan integratsiya qilish uchun PHP Yii2 framework-i uchun kengaytma ishlab chiqdik.

Eslatma: Kengaytmani loyihaga o'rnatish uchun composer kerak bo'ladi, yoki, class fayllarni olib, o'z loyihangizga moslashtirishingiz mumkin.

Composer orqali o'rnatish usuli

composer require uzdevid/yii2-payme "dev-main"


Ushbu kengaytmada ikkita class mavjud, birinchisi Merchant classi Merchant API so'rovlarini qabul qilib, qayta ishlash va javob yuborish uchun mo'ljallangan. Ikkinchi class esa Payme, to'lov formasini url manzilini generatsiya qilish uchun mo'ljallangan.

Merchant classi bilan ishlash.

Birinchi navbatda yangi kontroller yaratish zarur, nomi misol uchun PaymeController. Bu Controller Merchant class-ini kengaytirishi zarur.

Info: Merchant class-i web/Controller-ni kengaytirgani uchun yangi yaratilgan PaymeController oddiy Controller-dan farq qilmaydi.

PaymeController-da birinchi bo'lib kengaytmani ishlashi uchun kerak bo'ladigan hususiyatlarni kiritish kerak.

• public $login — Payme Business logini. Doyim "Paycom" bo'ladi.

• public $key — Payme Business hodimi tomonidan ikkita kalit yani test key va key beriladi. To'lov tizimni integratsiya qilish jarayonida test key-dan foydalanishingiz, keyin esa key-dan foydalanishingiz kerak.

• public $userFind — Foydalanuvchilar ma'lumotlari joylashgan jadvalning modeli. Misol uchun: User::find() ga teng bo'lishi kerak.

• public $user_pk — Foydalanuvchilar jadvalining primary key-yi. Odatda id bo'ladi. To'lov formasini generatsiya qilishingizda ham huddi shu ma'lumot bilan yuborishingiz kerak. Yani account => user_id.

Payme Business-dan keladigan so'rovlarni qayta ishlash uchun PaymeController-ga bir nechta funksiyalar yozishingiz kerak.

Bular:
• checkPerformTransaction
• createTransaction
• performTransaction
• cancelTransaction
• checkTransaction
• getStatemeng

Yuqoridagi funksiyalarning hammasi $payload yani Payme Business-dan kelgan so'rovning tanasini (body) qabul qiladi.

Funksiya ichida so'rovni tekshirib, javobni tayyorlaganingizdan so'ng, javob massivini shu funksiya nomli Merchant class-i funksiyasiga yuborishingiz va kelgan javobni return qilishingiz kerak.

checkPerformTransaction funksiyasi uchun misol:

public function checkPerformTransaction($payload){
//kodingiz

$data = []
return parent::checkPerformTransaction($data);
}


Misolda keltirilgan barcha kodlarni, to'liqroq ma'lumotlarni hamda kengaytma class-larini kengaytmaning github sahifasidan olishingiz mumkin.

Tez orada Subscribe API uchun ham kengaytma tayyorlaymiz, va Sizlarga ulashamiz.