0, 'od_cash_no' => '', 'od_cash_info' => '', ); if ($pp_settle_case == "계좌이체") { switch($default['de_pg_service']) { case 'lg': include G5_SHOP_PATH.'/lg/xpay_result.php'; break; case 'toss': include G5_SHOP_PATH.'/toss/toss_result.php'; break; case 'inicis': if (!empty($_POST['inicis_pro'])) include G5_SHOP_PATH.'/inicis/pro/pay_result.php'; else include G5_SHOP_PATH.'/inicis/inistdpay_result.php'; break; case 'nicepay': include G5_SHOP_PATH.'/nicepay/nicepay_result.php'; break; default: include G5_SHOP_PATH.'/kcp/pp_ax_hub.php'; $bank_name = iconv("cp949", "utf-8", $bank_name); break; } $pp_tno = $tno; $pp_receipt_price = $amount; $pp_receipt_time = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/", "\\1-\\2-\\3 \\4:\\5:\\6", $app_time); $pp_deposit_name = $pp_name; $pp_bank_account = $bank_name; $pg_price = $amount; } else if ($pp_settle_case == "가상계좌") { switch($default['de_pg_service']) { case 'lg': include G5_SHOP_PATH.'/lg/xpay_result.php'; break; case 'toss': include G5_SHOP_PATH.'/toss/toss_result.php'; break; case 'inicis': if (!empty($_POST['inicis_pro'])) include G5_SHOP_PATH.'/inicis/pro/pay_result.php'; else include G5_SHOP_PATH.'/inicis/inistdpay_result.php'; break; case 'nicepay': include G5_SHOP_PATH.'/nicepay/nicepay_result.php'; break; default: include G5_SHOP_PATH.'/kcp/pp_ax_hub.php'; $bankname = iconv("cp949", "utf-8", $bankname); $depositor = iconv("cp949", "utf-8", $depositor); break; } $pp_tno = $tno; $pp_receipt_price = 0; $pp_bank_account = $bankname.' '.$account; $pp_deposit_name = $depositor; $pg_price = $amount; } else if ($pp_settle_case == "휴대폰") { switch($default['de_pg_service']) { case 'lg': include G5_SHOP_PATH.'/lg/xpay_result.php'; break; case 'toss': include G5_SHOP_PATH.'/toss/toss_result.php'; break; case 'inicis': if (!empty($_POST['inicis_pro'])) include G5_SHOP_PATH.'/inicis/pro/pay_result.php'; else include G5_SHOP_PATH.'/inicis/inistdpay_result.php'; break; case 'nicepay': include G5_SHOP_PATH.'/nicepay/nicepay_result.php'; break; default: include G5_SHOP_PATH.'/kcp/pp_ax_hub.php'; break; } $pp_tno = $tno; $pp_receipt_price = $amount; $pp_receipt_time = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/", "\\1-\\2-\\3 \\4:\\5:\\6", $app_time); $pp_bank_account = $commid.' '.$mobile_no; $pg_price = $amount; } else if ($pp_settle_case == "신용카드") { switch($default['de_pg_service']) { case 'lg': include G5_SHOP_PATH.'/lg/xpay_result.php'; break; case 'toss': include G5_SHOP_PATH.'/toss/toss_result.php'; break; case 'inicis': if (!empty($_POST['inicis_pro'])) include G5_SHOP_PATH.'/inicis/pro/pay_result.php'; else include G5_SHOP_PATH.'/inicis/inistdpay_result.php'; break; case 'nicepay': include G5_SHOP_PATH.'/nicepay/nicepay_result.php'; break; default: include G5_SHOP_PATH.'/kcp/pp_ax_hub.php'; $card_name = iconv("cp949", "utf-8", $card_name); break; } $pp_tno = $tno; $pp_receipt_price = $amount; $pp_receipt_time = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})/", "\\1-\\2-\\3 \\4:\\5:\\6", $app_time); $pp_bank_account = $card_name; $pg_price = $amount; } else { die("od_settle_case Error!!!"); } // 주문금액과 결제금액이 일치하는지 체크 if((int)$pp['pp_price'] !== (int)$pg_price) { $cancel_msg = '결제금액 불일치'; switch($default['de_pg_service']) { case 'lg': include G5_SHOP_PATH.'/lg/xpay_cancel.php'; break; case 'toss': include G5_SHOP_PATH.'/toss/toss_cancel.php'; break; case 'inicis': include G5_SHOP_PATH.'/inicis/inipay_cancel.php'; break; case 'nicepay': $cancelAmt = (int)$pg_price; include G5_SHOP_PATH.'/nicepay/cancel_process.php'; break; default: include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; break; } die("Receipt Amount Error"); } $pp_pg = $default['de_pg_service']; // KCP 통보는 결제 당시 사용한 상점코드와 대조한다. $pp_kcp_site_cd = ($pp_pg === 'kcp' && isset($g_conf_site_cd)) ? sql_escape_string($g_conf_site_cd) : ''; $pp_email = get_email_address($pp_email); // 결제정보 입력 $sql = " update {$g5['g5_shop_personalpay_table']} set pp_email = '$pp_email', pp_hp = '$pp_hp', pp_pg = '$pp_pg', pp_kcp_site_cd = '$pp_kcp_site_cd', pp_tno = '$pp_tno', pp_app_no = '$app_no', pp_receipt_price = '$pp_receipt_price', pp_settle_case = '$pp_settle_case', pp_bank_account = '$pp_bank_account', pp_deposit_name = '$pp_deposit_name', pp_receipt_time = '$pp_receipt_time', pp_receipt_ip = '{$_SERVER['REMOTE_ADDR']}', pp_cash = '{$pg_receipt_infos['od_cash']}', pp_cash_no = '{$pg_receipt_infos['od_cash_no']}', pp_cash_info = '{$pg_receipt_infos['od_cash_info']}' where pp_id = '{$pp['pp_id']}' "; shop_order_state_finalizing(); $result = sql_query($sql, false); // 결제정보 입력 오류시 결제 취소 if(!$result) { $cancel_msg = '결제정보 입력 오류'; switch($default['de_pg_service']) { case 'lg': include G5_SHOP_PATH.'/lg/xpay_cancel.php'; break; case 'inicis': include G5_SHOP_PATH.'/inicis/inipay_cancel.php'; break; case 'nicepay': $od_id = $pp['pp_id']; $tno = $pp_tno; $cancelAmt = (int)$pg_price; $partialCancelCode = 0; include G5_SHOP_PATH.'/nicepay/cancel_process.php'; break; default: include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; break; } if(function_exists('add_order_post_log')) add_order_post_log($cancel_msg); die('개인결제 정보를 처리하는 중 오류가 발생했습니다. 결제 취소 여부를 관리자에게 문의해 주십시오.'); } // 주문번호가 있으면 결제정보 반영 if($pp_receipt_price > 0 && $pp['pp_id'] && $pp['od_id']) { $od_escrow = 0; if($escw_yn == 'Y') $od_escrow = 1; $sql = " update {$g5['g5_shop_order_table']} set od_receipt_price = od_receipt_price + '$pp_receipt_price', od_receipt_time = '$pp_receipt_time', od_pg = '$pp_pg', od_tno = '$pp_tno', od_app_no = '$app_no', od_escrow = '$od_escrow', od_settle_case = '$pp_settle_case', od_deposit_name = '$pp_deposit_name', od_bank_account = '$pp_bank_account', od_cash = '{$pg_receipt_infos['od_cash']}', od_cash_no = '{$pg_receipt_infos['od_cash_no']}', od_cash_info = '{$pg_receipt_infos['od_cash_info']}', od_shop_memo = concat(od_shop_memo, \"\\n개인결제 ".$pp['pp_id']." 로 결제완료 - ".$pp_receipt_time."\") where od_id = '{$pp['od_id']}' "; $result = sql_query($sql, false); // 결제정보 입력 오류시 결제 취소 if(!$result) { $cancel_msg = '결제정보 입력 오류'; switch($default['de_pg_service']) { case 'lg': include G5_SHOP_PATH.'/lg/xpay_cancel.php'; break; case 'toss': include G5_SHOP_PATH.'/toss/toss_cancel.php'; break; case 'inicis': include G5_SHOP_PATH.'/inicis/inipay_cancel.php'; break; case 'nicepay': $od_id = $pp['pp_id']; $tno = $pp_tno; $cancelAmt = (int)$pg_price; $partialCancelCode = 0; include G5_SHOP_PATH.'/nicepay/cancel_process.php'; break; default: include G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php'; break; } if(function_exists('add_order_post_log')) add_order_post_log($cancel_msg); die('주문 결제정보를 처리하는 중 오류가 발생했습니다. 결제 취소 여부를 관리자에게 문의해 주십시오.'); } // 미수금 정보 업데이트 $info = get_order_info($pp['od_id']); $sql = " update {$g5['g5_shop_order_table']} set od_misu = '{$info['od_misu']}' "; if($info['od_misu'] == 0) $sql .= " , od_status = '입금' "; $sql .= " where od_id = '{$pp['od_id']}' "; sql_query($sql, FALSE); // 장바구니 상태변경 if($info['od_misu'] == 0) { $sql = " update {$g5['g5_shop_cart_table']} set ct_status = '입금' where od_id = '{$pp['od_id']}' "; sql_query($sql, FALSE); } } // 완료한 개인결제의 임시 데이터 삭제 $sql = " delete from {$g5['g5_shop_order_data_table']} where od_id = '{$pp['pp_id']}' and dt_pg = '$pp_pg' "; sql_query($sql); // 개인결제번호제거 if (!empty($_POST['inicis_pro']) && function_exists('inicis_pro_audit_order_saved')) inicis_pro_audit_order_saved($pp['pp_id'], $pp_tno, 'personal', 'web'); include_once(G5_LIB_PATH.'/shop_order_access.lib.php'); shop_order_access_forget((string)$pp['pp_id']); set_session('ss_personalpay_id', ''); set_session('ss_personalpay_hash', ''); $uid = function_exists('get_shop_uid') ? get_shop_uid('personalpay', $pp['pp_id'], $pp['pp_time'], $_SERVER['REMOTE_ADDR']) : md5($pp['pp_id'].$pp['pp_time'].$_SERVER['REMOTE_ADDR']); set_session('ss_personalpay_uid', $uid); goto_url(G5_SHOP_URL.'/personalpayresult.php?pp_id='.$pp['pp_id'].'&uid='.$uid); ?> 개인결제정보 기록