Withdraw
Описание и параметры
double CSaleUserAccount::Withdraw( int userID, double paySum, string payCurrency[, int orderID = 0] );
Метод снимает указанную сумму с внутреннего счета пользователя. Если на внутреннем счете не достаточно средств, то снимается максимально доступная сумма (т.е. все доступные средства). Нестатический метод.
Параметры вызова
Параметр | Описание |
---|---|
userID | Код пользователя. |
paySum | Снимаемая сумма. |
payCurrency | Валюта снимаемой суммы. |
orderID | Код заказа, если снятие денег относится к заказу. |
Возвращаемые значения
Метод возвращает реально снятую со счета сумму или false в случае ошибки.
Замечание: деньги снимаются только со счета той же валюты, которая передается параметром в метод. Счета пользователя в другой валюте не затрагиваются.
Пример использования
<? // Оплатим полностью или хотя бы частично заказ номер 21 со счета пользователя $arOrder = CSaleOrder::GetByID(21); $withdrawSum = CSaleUserAccount::Withdraw( $arOrder["USER_ID"], $arOrder["PRICE"], $arOrder["CURRENCY"], $arOrder["ID"] ); if ($withdrawSum > 0) { $arFields = array( "SUM_PAID" => $withdrawSum, "USER_ID" => $arOrder["USER_ID"] ); CSaleOrder::Update($arOrder["ID"], $arFields); if ($withdrawSum == $arOrder["PRICE"]) CSaleOrder::PayOrder($arOrder["ID"], "Y", False, False); } ?>
© «Битрикс», 2001-2024, «1С-Битрикс», 2024