NEXPAY

카드 비인증결제(Non-UI)

카드 비인증결제는 URL 과 TOKEN을 발급 받은 후 결제요청을 하시면 됩니다.

2. 카드 비인증결제 과정

1. 발급받은 키와 코드를 사용해 헤더와 데이터를 채워 넥스페이로 전송한다.
2. 전송받은 값을 검증 후 , URL와 토큰을 리턴해준다.
    전송값에 오류가 있을경우 오류코드와 메시지만 전송됩니다.
3. 전달받은 URL에 매뉴얼을 참고하여 파라미터 항목을 JSON방식으로 전송한다.
    전송값에 오류가 있을경우 오류코드와 메시지만 전송됩니다.
4. PG사로 결제요청 데이터 전송
5. 결제결과값 리턴
    성공한 경우 매뉴얼에 정의된 항목이 전송됩니다.
    실패한 경우 오류코드와 메시지만 전송됩니다.

API 연동 과정

결제연동 URL

개발서버 : http://develop.nex.magnexpay.com/nexpay/Api    [POST]
운영서버 : https://nex-pay.co.kr/nexpay/Api    [POST]

2.1 결제연동 URL 요청 전문

구분 항목명 길이 내용 비고
필수
(헤더)
Authorization 상점 고유 결제 연동 키 넥스페이 발급 Key 값
필수
(Json)
USERID 10 가맹점ID 넥스페이 발급 아이디
필수
(Json)
Type 10 결제구분 CARD = 카드결제
CASH = 현금영수증발행
결제연동 URL 요청 예제 (PHP) [코드열기/접기]


	$key		= ""; //넥스페이에 발급 문의바랍니다. 
	$USERID		= ""; //셀러코드 넥스페이에 문의바랍니다.
	$url = "http://develop.nex.magnexpay.com/nexpay/Api";  //개발서버  
	
	//결제URL 요청항목
	$ready_array = array ( 
		'USERID' => $USERID 
		,'Type' => "CARD"  
		, 'CANCELREQ' => "" // 취소 = Y , 승인 = "" 
	);  

	$ready_data			= json_encode($ready_array); 
	$header_data = array( 
		'Content-Type: application/json; charset=utf-8', 
		"Authorization: " . $key  
	); 

	$urlResponse	=	APICurlFnc($url, $header_data, $ready_data ); 
	
	echo print_r($urlResponse['response']); 
	echo $urlResponse["response"][0]["code"]; 
	echo $urlResponse["response"][0]["msg"];
	echo $urlResponse["response"][0]["ReturnURL"];
	echo $urlResponse["response"][0]["TOKEN"];
	

	function APICurlFnc($url, $header_data, $data ){
		$ch = curl_init($url);
		curl_setopt_array($ch, array(
			CURLOPT_POST => TRUE,
			CURLOPT_RETURNTRANSFER => TRUE,
			CURLOPT_HTTPHEADER => $header_data,
			CURLOPT_POSTFIELDS => $data,
			CURLOPT_SSL_VERIFYHOST => '0',
			CURLOPT_SSL_VERIFYPEER => '0'
		));

		$response = curl_exec($ch);
		//ECHO $response;
		
		$sResponse = json_decode($response , true);	 
		$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
		//echo $status_code;exit;
		$error = curl_error($ch);	
		curl_close ($ch);
		//print_r($sResponse);	
		
		//코드값 리턴 
		$sResponse["response"][0]["status_code"] = $status_code; 
		//print_r($sResponse);	
		
		//echo $status_code;exit;
		return $sResponse;
	}

	
결제연동 URL 요청 예제 (CURL) [코드열기/접기]
Terminal Commend

		curl -i 
		-X POST 
		-H "Content-Type: application/json" 
		-H "Authorization: 상점 결제연동 키"
		-d "{  \"USERID\": \"가맹점ID\",  \"Type\": \"CARD\"}" 
		http://develop.nex.magnexpay.com/nexpay/Api
	

Postman.exe

2.2 결제연동 URL 응답 전문

구분 항목명 길이 내용 비고
필수 code 4 응답코드 넥스페이 또는 PG사 오류코드
0000 = 정상 , 그외 msg 참조
필수 msg 100 응답메시지 넥스페이 또는 PG사 오류메시지
선택
성공시
ReturnURL 리턴URL 결제요청 URL
선택
성공시
TOKEN 토큰 결제요청 토큰

2.3 결제연동 요청 전문

결제연동 요청 URL

결제연동 URL 응답 전문 ReturnURL    [POST]
구분 항목명 길이 내용 비고
필수
(헤더)
Authorization 상점 고유 결제 연동 키 넥스페이 발급 Key 값
필수
(헤더)
TOKEN 요청에 대한 유효한 키 결제연동 URL응답 전문 리턴 값
필수
(Json)
USERID 10 가맹점ID 넥스페이 발급 아이디
필수
(Json)
PAYMETHOD 10 결제수단 CARD-SUGI = 카드 비인증결제
필수
(Json)
p_price 10 결제금액
필수
(Json)
card_num 16 카드번호
필수
(Json)
card_useable 16 카드유효기간 년월(YYMM)
필수
(Json)
installment 2 할부개월 일시불 = 00
2개월 = 02 (00~12)
선택
(Json)
CARD_AUTH 10 카드명의자 주민/사업자번호 *카유비생결제 선택사항
주민번호 = YYMMDD 형식
사업자번호 = 10자리
선택
(Json)
PASSWD 2 카드 비밀번호 *카유비생결제 선택사항
앞 2자리
선택
(Json)
p_product_name 30 상품명
결제연동 요청 예제 (PHP) [코드열기/접기]


	$key		= ""; //넥스페이에 발급 문의바랍니다. 
	$USERID		= ""; //셀러코드 넥스페이에 문의바랍니다.
	
	//결제요청항목 
	$request_array = array (
		'USERID' => $USERID,
		'PAYMETHOD' => strval($PAYMETHOD),
		'p_price' => strval($p_price),
		'card_num' => strval($card_num),
		'card_useable' => strval($card_useable),
		'installment' => strval($installment),


		'CARD_AUTH' => strval($CARD_AUTH),
		'PASSWD' => strval($PASSWD),
		'p_product_name' => strval($p_product_name)
		);
	//echo print_r($request_array);
	//exit;
	$apiRequest_data	= json_encode($request_array);  

	$header_data = array( 
		'Content-Type: application/json; charset=utf-8', 
		"Authorization: " . $key  
	); 

	array_push($header_data, "TOKEN: " . $urlResponse["response"][0]["TOKEN"]);

	$urlResponse2	=	APICurlFnc($urlResponse["response"][0]["ReturnURL"], $header_data, $apiRequest_data );
	echo print_r($urlResponse2);
	

	function APICurlFnc($url, $header_data, $data ){
		$ch = curl_init($url);
		curl_setopt_array($ch, array(
			CURLOPT_POST => TRUE,
			CURLOPT_RETURNTRANSFER => TRUE,
			CURLOPT_HTTPHEADER => $header_data,
			CURLOPT_POSTFIELDS => $data,
			CURLOPT_SSL_VERIFYHOST => '0',
			CURLOPT_SSL_VERIFYPEER => '0'
		));

		$response = curl_exec($ch);
		//ECHO $response;
		
		$sResponse = json_decode($response , true);	 
		$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
		//echo $status_code;exit;
		$error = curl_error($ch);	
		curl_close ($ch);
		//print_r($sResponse);	
		
		//코드값 리턴 
		$sResponse["response"][0]["status_code"] = $status_code; 
		//print_r($sResponse);	
		
		//echo $status_code;exit;
		return $sResponse;
	}

	
결제연동 요청 예제 (CURL) [코드열기/접기]
Terminal Commend

		curl -i 
		-X POST 
		-H "Content-Type: application/json"  
		-H "Authorization: 상점 결제연동 키" 
		-H "TOKEN: 요청에 대한 유효한 키" 
		-d "{  \"USERID\": \"가맹점ID\",  \"PAYMETHOD\": \"CARD-SUGI\",  \"p_price\": \"1004\" ,  \"card_num\": \"\" ,  \"card_useable\": \"\" ,  \"installment\": \"00\" }" 
		 http://결제연동 URL 응답 전문 ReturnURL

	

Postman.exe

2.4 결제연동 응답 전문

구분 항목명 길이 내용 비고
필수 code 4 응답코드 넥스페이 또는 PG사 오류코드
0000 = 정상 , 그외 msg 참조
필수 msg 100 응답메시지 넥스페이 또는 PG사 오류메시지
선택
성공시
p_date 14 결제일시 YYYYMMDDhh24miss
선택
성공시
card_company 30 카드사
선택
성공시
a_number 30 승인번호
선택
성공시
trade_number 30 거래번호
선택
성공시
order_number 30 주문번호
선택
성공시
p_price 10 결제금액
선택
성공시
p_goods 10 물품금액
선택
성공시
p_surtax 10 부가세