0) { if ($cancel_amount > $order['od_receipt_price']) { alert('취소 금액은 결제 금액보다 클 수 없습니다.'); } $is_partial = true; $amount = $cancel_amount; } else { $amount = $order['od_receipt_price']; } // PG사별 취소 로직 분기 switch ($od_pg) { case 'kcp': $_POST['req_tx'] = 'mod'; $_POST['mod_type'] = $is_partial ? 'STPC' : 'STSC'; // 부분취소: STPC, 전체취소: STSC $_POST['mod_id'] = $od_id; $_POST['mod_mny'] = $amount; $_POST['rem_mny'] = $is_partial ? ($order['od_receipt_price'] - $amount) : 0; include_once(G5_SHOP_PATH.'/kcp/pp_ax_hub_cancel.php'); break; case 'lg': $_POST['LGD_TID'] = $tno; if ($is_partial) { $_POST['LGD_TXNAME'] = 'PartialCancel'; $_POST['LGD_CANCELAMOUNT'] = $amount; } else { $_POST['LGD_TXNAME'] = 'Cancel'; } include_once(G5_SHOP_PATH.'/lg/xpay_cancel.php'); break; case 'inicis': $_POST['type'] = 'cancel'; $_POST['mid'] = $default['de_inicis_mid']; $_POST['tid'] = $tno; $_POST['msg'] = $cancel_memo; if ($is_partial) { $_POST['price'] = $amount; // 부분취소 금액 $_POST['confirm_price'] = $order['od_receipt_price'] - $amount; // 남은 금액 $_POST['partial_cancel'] = '1'; } include_once(G5_SHOP_PATH.'/inicis/inipay_cancel.php'); break; case 'nicepay': $cancelAmt = $amount; $partialCancelCode = $is_partial ? '1' : '0'; // 부분취소: 1, 전체취소: 0 include_once(G5_SHOP_PATH.'/nicepay/cancel_process.php'); break; default: alert('지원하지 않는 PG사입니다.'); break; } alert('PG사에 취소 요청을 전송했습니다. 최종 결과는 PG사 관리자 페이지에서 확인해주세요.', './payment_list.php'); ?>