테스트 사이트 - 개발 중인 베타 버전입니다

PG 스마트로 결제서비스의 결제결과값 채택완료

해피정 2년 전 조회 2,170

스마트로 PG 결제 서비스를 홈페이지에 적용해서

신용카드 결제 연동 서비스를 작업중입니다.

https://manual.smartropay.co.kr/easyModule.do?level=

 

아래는 결제완료후 승인요청후 결과값을 받는 코드 입니다.

<?php
$url = "https://tapproval.smartropay.co.kr/payment/approval/urlCallApproval.do";	// 테스트 
//$url = "https://approval.smartropay.co.kr/payment/approval/urlCallApproval.do";	// 운영 
        
$approval_data = array(
	'Tid' => $_REQUEST['Tid'],
	'TrAuthKey' => $_REQUEST['TrAuthKey']
);

// json data
$json = json_encode($approval_data);

$http_status = 0;

// https 통신
$ret = Curl($url, $json, $http_status);

function Curl($url, $post_data, &$http_status, &$header = null) {

    $ch=curl_init();
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL, $url);

    // post_data
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
    curl_setopt($ch, CURLOPT_HEADER, false);

    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json', 'Content-Type: application/json'));
    curl_setopt($ch, CURLOPT_VERBOSE, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

    $response = curl_exec($ch);

    $body = null;
    // error
    if (!$response) {
        $body = curl_error($ch);
        // HostNotFound, No route to Host, etc  Network related error
        $http_status = -1;
        Log::error("CURL Error: = " . $body);
    } else {
       //parsing http status code
        $http_status = curl_getinfo($ch, CURLINFO_HTTP_CODE);

        if (!is_null($header)) {
            $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);

            $header = substr($response, 0, $header_size);
            $body = substr($response, $header_size);
        } else {
            $body = $response;
        }
    }
    curl_close($ch);
    return $body;
}
?>

 

위와 같이 curl 을 이용해서 결과값을 가져오도록 function 처리된 것이 보이는데요

예를 들어  ret 변수에 담겨진 다양한 값중에서

내가 원하는 값을 가져와야하는데,  어떻게 echo 를 찍으라는 건지 ...

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
2년 전

결과값을 그냥 배열이나 json으로 넘겨줄거 같네요 문서를 살펴보시고 어떤 값으로 리턴 오는지 체크를 해보셔야 할거 같습니다.

잘 모르시면 보통은 기술지원 팀에 문의하면 도움을 주실겁니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

해피정
2년 전
안녕하세요 스마트로 OOO입니다.
저희쪽에서 추가로 소스코드를 제공해드리지는 않습니다.
인터넷을 찾아보시면 쉽게 해결 가능합니다
감사합니다.


라고 친절하게 회신을 받았습니다. ㅋㅋ....
다른 PG (KCP, 이니시스, 토스페이먼츠)와는 전혀 다른 행보라서 놀랍더군요
작업의뢰에 https://sir.kr/request/62579 에 글 게시했습니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인