Skip to content

Instantly share code, notes, and snippets.

@nafilimonov
Last active February 11, 2024 02:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save nafilimonov/9c9190436fe3eee1b737f38ce6ebb663 to your computer and use it in GitHub Desktop.
Save nafilimonov/9c9190436fe3eee1b737f38ce6ebb663 to your computer and use it in GitHub Desktop.
Bitrix. Mail. Отправка счета или квитанции в письме
<?
// Отправка счета или квитанции в письме
AddEventHandler("sale", "OnOrderSave", "OnOrderAddHandlerPS");
function OnOrderAddHandlerPS ($ID, $arFields, $arOrder) {
if ( $arOrder["PAY_SYSTEM_ID"] == 12 ) {
//получаем данные заказа
$order = \Bitrix\Sale\Order::load($ID);
$paymentCollection = $order->getPaymentCollection();
foreach ($paymentCollection as $item)
{
if (!$item->isInner() && !$item->isPaid())
{
$paymentItem = $item;
break;
}
}
$service = \Bitrix\Sale\PaySystem\Manager::getObjectById($paymentItem->getPaymentSystemId());
if ($service)
{
$context = \Bitrix\Main\Application::getInstance()->getContext();
ob_start();
$service->initiatePay($paymentItem, $context->getRequest());
$PayText = ob_get_clean();
$arFieldsMail["EMAIL"] = $arOrder["USER_EMAIL"];
$arFieldsMail["TEXT"] = $PayText;
CEvent::SendImmediate ("ORDER_PAY_RECEIPT", SITE_ID, $arFieldsMail, N);
}
}
}
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment