Jump to content
pvmezencev

Обработка Callback уведомлений в модуле Payment method Sberbank Module

Recommended Posts

Добрый день!

Прошу помощи в реализации обработки уведомлений от Сбербанка со статусами операций по оплате.

Используется модуль Payment method Sberbank Module 1.1.3.

По документации из СБРФ нужно создать у себя на сайте маршрут, который будет принимать GET запрос от сервиса оплаты.

Предварительно зарегистрировав хук в функции установки модуля, маршрут задаю так 

    public function hookModuleRoutes()
    {
        return array(
            'module-'.$this->name.'-callback' => array(
                'controller' => 'callback',
                'rule' =>  'callback/{-:mdOrder}{-:orderNumber}{-:operation}{-:checksum}{-:status}',
                'keywords' => array(
                    'mdOrder' => array('regexp' => '[\w]+', 'param' => 'mdOrder'),
                    'orderNumber' => array('regexp' => '[\w]+', 'param' => 'orderNumber'),
                    'operation' => array('regexp' => '(approved|deposited|reversed|refunded|declinedByTimeout)+', 'param' => 'operation'),
                    'checksum' => array('regexp' => '[\w]+', 'param' => 'checksum'),
                    'status' => array('regexp' => '(0|1)+', 'param' => 'status')
                ),
                'params' => array(
                    'fc' => 'module',
                    'module' => $this->name,
                )
            )
        );
    }

создал контроллер callback в модуле, для проверки работы такой

class SberbankpaymentCallbackModuleFrontController extends ModuleFrontController
{
    public function init()
    {
      header('Content-Type: application/json');
      echo json_encode($_GET);
    }
}

 

в итоге по ссылке callback/?mdOrder=6bc93e62313ba3ede9cbcf24f6a6c691&orderNumber=6&operation=deposited&status=0

получаю ответ 

{
  "mdOrder": "6bc93e62313ba3ede9cbcf24f6a6c691",
  "orderNumber": "6",
  "operation": "deposited",
  "status": "0",
  "isolang": "ru",
  "id_lang": 2,
  "fc": "module",
  "module": "sberbankpayment",
  "controller": "callback"
}

как менять статус заказа дальше, не понимаю....

Благодарю заранее за подсказки.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More