} $option = array( 'merchant' => 'merchant', 'secretkey' => 'secret_key', 'debug' => 0, 'luUrl' => "https://secure.payu.ru/order/lu.php", 'button' => "" ); require 'PayU.php'; // PayU класс $payanswer = PayU::getInst()->setOptions( $option )->IPN(); if(isset($_POST['IPN_CC_TOKEN'])){ $res = createToken($_POST); } // реакция на статус IPN if ($_POST['ORDERSTATUS'] == "PAYMENT_AUTHORIZED") { // платеж по карте авторизирован (для оплаты не через Visa/MasterCard/Maestro такой статус означает списание денежных средств) } elseif ($_POST['ORDERSTATUS'] == "COMPLETE" ) { // заказ выполнен (авторизован/поставлен), деньги списаны со счёта клиента - отметить в базе данных }
$forSend = array ( 'ORDER_REF' => $orderID, # Uniqe order 'ORDER_DATE' => date("Y-m-d H:i:s"), # Date of paying ( Y-m-d H:i:s ) 'ORDER_SHIPPING' => $arOrder['PRICE_DELIVERY'], 'PRICES_CURRENCY' => CSalePaySystemAction::GetParamValue("PRICE_CURRENCY"), # Currency 'DISCOUNT' => $arOrder['DISCOUNT_VALUE'], 'LANGUAGE' => CSalePaySystemAction::GetParamValue("LANGUAGE"), ); if ($forSend['DISCOUNT'] == 0 ) unset( $forSend['DISCOUNT'] ); if ( $backref != "" ) $forSend['BACK_REF'] = $backref; foreach ( $arBasketItems as $val ) { $forSend['ORDER_PNAME'][] = $val['NAME']; $forSend['ORDER_PCODE'][] = $val['PRODUCT_ID']; $forSend['ORDER_PINFO'][] = ""; $forSend['ORDER_PRICE'][] = $val['PRICE']; $forSend['ORDER_QTY'][] = $val['QUANTITY']; $forSend['ORDER_VAT'][] = $val['VAT_RATE']; } $pay = PayU::getInst()->setOptions( $option )->setData( $forSend )->LU(); echo $pay;