본문 바로가기
Language/Spring

[JAVA, SPRING, Iamport] 아임포트 페이팔 연동(WEB,APP)

by tyrannojung 2021. 3. 18.
반응형

아임포트 연동 : tyrannocoding.tistory.com/45

 

[JAVA, SPRING, Iamport] 아임포트 모바일 웹뷰 콜백함수 해결책 및 자바 예제(WEB,APP)

아임포트 특이점  일부를 제외한 국내 대부분의 PG 사들은모바일 결제가 시작되면 페이지를 이동(redirect)시켜버리는 특징이 있습니다. 이 과정에서 기존 페이지가 unload 되고IMP.request_pay(param, call

tyrannocoding.tistory.com

아임포트 웹뷰 콜백 함수 해결책 redirect 이후의 게시글입니다.

 

아임포트 페이팔 연동 준비

 아임포트 사용이유이자 최대 장점은 페이팔도 쉽게 연동 및 개발이 가능한 점 입니다. (부트페이는 페이팔을 아직 정식으로 지원하지 않는다고 합니다.) 페이팔은 다른 결제 pg사와 다르게 우선 페이팔의 가입이 먼저이며, 가입 후 API계정을 받아 아임포트에 적어 연동해 주어야 합니다. 아래 링크는 API계정을 정말 쉽게 얻는 과정을 설명한 글입니다.

 

tyrannocoding.tistory.com/46

 

[API] PayPal(페이팔) 테스트 환경 구성 - 최신버전 페이팔 결제 연동

아임 포트 API 연동을 위해 페이팔 테스트 환경을 구축함에 있어 시행착오를 정리했습니다. 페이팔 테스트(샌드박스) 계정 만들기 페이팔 테스트 계정으로 연동하는 법을 알아보겠습니다. 먼저 w

tyrannocoding.tistory.com

 

아임포트 페이팔 연동하기

우선 테스트 계정의 API Credentials에서 이름/암호/서명을 복사한 후, 아임포트 관리자 계정에 붙여 넣기를 해준 후 저장합니다.

 

 

View 화면 - HTML 자바 스프링 (java spring)

tyrannocoding.tistory.com/45

해당 글까지의 연동을 전제로 작성한 글입니다.

 

<script>
	function iamport(){
		//가맹점 식별코드
		IMP.init('imp30146952');
		IMP.request_pay({
		    pg : 'paypal',
		    pay_method : 'card',
		    merchant_uid : 'merchant_' + new Date().getTime(),
		    name : '상품1' , //결제창에서 보여질 이름
		    amount : 1, //실제 결제되는 가격
		    buyer_email : 'iamport@siot.do',
		    buyer_name : '구매자이름',
		    buyer_tel : '010-1234-5678',
		    buyer_addr : '서울 강남구 도곡동',
		    buyer_postcode : '123-456',
		    m_redirect_url : 'http://localhost:8080/orderCompleteMobile'
		}, function(rsp) {
        <!-- 여기서부터는 페이팔은 동작하지 않습니다 -->
			console.log(rsp);
			// 결제검증
			$.ajax({
	        	type : "POST",
	        	url : "/verifyIamport/" + rsp.imp_uid 
	        }).done(function(data) {
	        	
	        	console.log(data);
	        	
	        	// 위의 rsp.paid_amount 와 data.response.amount를 비교한후 로직 실행 (import 서버검증)
	        	if(rsp.paid_amount == data.response.amount){
		        	alert("결제 및 결제검증완료");
	        	} else {
	        		alert("결제 실패");
	        	}
	        });
		});
	}
</script>

 

 우선 다른 대부분의 PG 사들은 모바일은 아니지만 최소한 웹에서는 callback함수가 동작되었지만, 페이팔은 웹, 모바일 둘 다 callback함수가 동작되지 않습니다. 오직 m_redirect_url만 작동하므로, 이전 글(링크)과 동일하게 코드를 작성해야 합니다.

 

 

 

마치며

 현재 구글에 돌아다니는 글들은 페이팔 테스트 계정 가입뿐만 아니라 아임포트 자료들도 최신화된 부분이 없어 직접 시행착오를 겪고 최신 버전으로 작성했습니다. 혹시라도 오류가 있거나 부족한 점이 발견되면 댓글 남겨주시면 최대한 반영 수정하겠습니다.

 

 

반응형

댓글