EON MegaPOS
add to providers in app.php ..., (*1)
Datastat\MegaPOS\MegaPOSServiceProvider::class,
publish vendor ..., (*2)
php artisan vendor:publish
register events in EventServiceProvider.php ..., (*3)
'Datastat\MegaPOS\MegaPOSUpdateWasCalledEvent' => [
'App\Listeners\MegaPosUpdateWasCalledEventListener',
],
'Datastat\MegaPOS\MegaPOSStatusWasCalledEvent' => [
'App\Listeners\MegaPosStatusWasCalledEventListener',
],
'Datastat\MegaPOS\MegaPOSCancelTransactionWasCalledEvent' => [
'App\Listeners\MegaPOSCancelTransactionWasCalledEventCalledEventListener',
],
generate handlers ... [then delete the Events/Datastat folder, change namespace alias in handlers], (*4)
php artisan event:generate
routes visible for production, (*5)
| GET|HEAD | megapos/update | megapos.update | Closure
| GET|HEAD | megapos/status | megapos.status | Closure
routes visible for testing [enable_test_routes = true in megapos.php config], (*6)
| GET|HEAD | megapos/test | megapos.test | Closure
| POST | megapos/init | megapos.init | Closure
| POST | megapos/cancel | megapos.cancel | Closure
| POST | megapos/process | megapos.process | Closure
| GET|HEAD | megapos/list-gateways | megapos.list | Closure
from IOC..., (*7)
$megapos = App::make('megapos');
facade..., (*8)
\MegaPOS
and now, the api..., (*9)
$megapos->init($params);
$params rules:, (*10)
'name' => array( 'required', 'alpha_dash', 'max:200' ),
'surname' => array( 'required', 'alpha_dash', 'max:200' ),
'email' => array( 'required', 'email', 'min:6', 'max:200' ),
'language' => array( 'required', 'in:si,en'),
'gateway' => array( 'required', 'in:ACTIVA_PGW,BANKART_PGW,DINERS,EFUNDS,MONETA,KLIK,ABANET'),
'tx_type' => array( 'sometimes|required', 'in:PURCHASE,ORDER'),
'amount' => array( 'required', 'numeric'),
$megapos->cancel($txId);
$megapos->listGateways();
exceptions to catch, (*11)
Datastat\MegaPOS\MegaPOSException