Задача автоматически создавать внутренний счет пользователя после совершения заказа на сайте и регистрации.
в init.php был добавлен код
AddEventHandler("main", "OnAfterUserRegister", "OnAfterUserRegisterHandler");
function OnAfterUserRegisterHandler(&$arFields)
{
$newBudget = 100;
// если регистрация успешна то
if($arFields["USER_ID"]>0)
{
CModule::IncludeModule('sale');
$arBudget = Array(
"USER_ID" => $arFields['USER_ID'],
"CURRENCY" => "RUB",
"CURRENT_BUDGET" => $newBudget);
CSaleUserAccount::Add($arBudget);
}
return $arFields;
}
Если пользователь сам регистрируется на сайте, то счет создается и на него зачисляется 100 рублей.
Но если пользователь делает заказ и регистрируется автоматически в момент создания заказа, то внутренний счет не создается.
Как исправить ситуацию?