mrssoft / rbs
Component for payment through the payment gateway Sberbank
Installs: 121
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 1
Open Issues: 0
Type:yii2-extension
pkg:composer/mrssoft/rbs
Requires
- php: >=8.0
- ext-curl: *
- yiisoft/yii2: >=2.0
README
Component for payment through the payment gateway bank "Sber"
Installation
The preferred way to install this extension is through composer. Either run
php composer.phar require --prefer-dist mrssoft/rbs "*"
or add
"mrssoft/rbs": "*"
to the require section of your composer.json file.
Usage
Register order
$rbs = new \mrssoft\rbs\Rbs(['userName' => '', 'password' => '']); $rbs->credit = true; //if credit $rbs->productType = \mrssoft\rbs\Rbs::TYPE_CREDIT_INSTALLMENT; $rbsOrder = new RbsOrder(); $rbsOrder->orderNumber = 'NM-12874'; $rbsOrder->email = 'test@mail.com'; $rbsOrder->description = 'Test'; $rbsOrder->returnUrl = 'https:/mysite.com/payment/success'; $rbsOrder->failUrl = 'https:/mysite.com/payment/fail'; $rbsOrder->credit = 1; //for credit payment $rbsOrder->addCartItem(123, 'Product name', 450.80, 2); $rbsOrder->addCartItem('a321', 'Product name II', 145, 2.5); ... $response = $rbs->register($rbsOrder); if ($response) { //$response['orderId'] - order number on the payment gateway //$response['formUrl'] - redirect url }
Get order status
$rbs = new \mrssoft\rbs\Rbs(['userName' => '', 'password' => '']); $response = $rbsOrder->getOrderStatus('00256ad8-xxxx-4302-xxxx-846d6c0fd6bd'); //$response['OrderStatus'] - order state code
Get order info
$rbs = new \mrssoft\rbs\Rbs(['userName' => '', 'password' => '']); $info = $rbsOrder->getOrderInfo('00256ad8-xxxx-4302-xxxx-846d6c0fd6bd');
Usage as Yii component
    
    // Application config
    ...
    'components' => [
        'rbs' = > [
            'class' => \mrssoft\rbs\Rbs::class,
            'auth' => [ // multiple accounts
                'first' => [
                    'server' => 'https://3dsec.sberbank.ru/sbercredit/',
                    'userName' => 'username1',
                    'password' => '*****',
                ],
                'second' => [
                    'userName' => 'username2',
                    'password' => '*****',
                ]
            ]
        ]
    ]
    ...
    // Selecting account "second"
    $response = Yii::$app->rbs->register($rbsOrder, 'second');