3namespace Bitrix\Seo\Checkout\Services;
6use Bitrix\Main\Localization\Loc;
7use Bitrix\Seo\Checkout\BaseApiObject;
8use Bitrix\Seo\Checkout\Response;
9use Bitrix\Seo\Checkout\Service;
11Loc::loadMessages(__FILE__);
23 private $callbackEventUrl =
null;
40 $this->callbackEventUrl = $callbackEventUrl;
47 private function getCallbackEventUrl()
49 if (!$this->callbackEventUrl)
54 $this->callbackEventUrl =
new Web\Uri(
$host.
'://'.
$request->getHttpHost().
'/bitrix/tools/sale_ps_result.php');
57 return $this->callbackEventUrl;
66 return (
$url->getScheme() ===
'https' ?
true :
false);
76 'methodName' =>
'profile.info',
102 static::getService()->getAuthAdapter(self::TYPE_CODE)->removeAuth();
111 $callbackUrl = $this->getCallbackEventUrl();
112 if (!$this->isHttps($callbackUrl))
115 $response->addError(
new \
Bitrix\
Main\
Error(Loc::getMessage(
'SEO_CHECKOUT_SERVICE_ACCOUNT_YANDEX_ERROR_SCHEME_CALLBACK_URL')));
120 'methodName' =>
'webhook.register',
122 'EVENT' =>
'payment.succeeded',
123 'URL' => $callbackUrl->getUri(),
136 $callbackUrl = $this->getCallbackEventUrl();
137 if (!$this->isHttps($callbackUrl))
140 $response->addError(
new \
Bitrix\
Main\
Error(Loc::getMessage(
'SEO_CHECKOUT_SERVICE_ACCOUNT_YANDEX_ERROR_SCHEME_CALLBACK_URL')));
145 'methodName' =>
'webhook.register',
147 'EVENT' =>
'payment.canceled',
148 'URL' => $callbackUrl->getUri(),
161 $callbackUrl = $this->getCallbackEventUrl();
162 if (!$this->isHttps($callbackUrl))
165 $response->addError(
new \
Bitrix\
Main\
Error(Loc::getMessage(
'SEO_CHECKOUT_SERVICE_ACCOUNT_YANDEX_ERROR_SCHEME_CALLBACK_URL')));
170 'methodName' =>
'webhook.register',
172 'EVENT' =>
'refund.succeeded',
173 'URL' => $callbackUrl->getUri(),
187 'methodName' =>
'webhook.remove',
203 'methodName' =>
'webhook.list',
217 'methodName' =>
'shop.info',
if(!Loader::includeModule('catalog')) if(!AccessController::getCurrent() ->check(ActionDictionary::ACTION_PRICE_EDIT)) if(!check_bitrix_sessid()) $request
registerPaymentCanceledWebhook()
registerPaymentSucceededWebhook()
registerRefundSucceededWebhook()
setCallbackEventUrl(Web\Uri $callbackEventUrl)