반응형
아임포트 연동 : tyrannocoding.tistory.com/45
아임포트 웹뷰 콜백 함수 해결책 redirect 이후의 게시글입니다.
아임포트 페이팔 연동 준비
아임포트 사용이유이자 최대 장점은 페이팔도 쉽게 연동 및 개발이 가능한 점 입니다. (부트페이는 페이팔을 아직 정식으로 지원하지 않는다고 합니다.) 페이팔은 다른 결제 pg사와 다르게 우선 페이팔의 가입이 먼저이며, 가입 후 API계정을 받아 아임포트에 적어 연동해 주어야 합니다. 아래 링크는 API계정을 정말 쉽게 얻는 과정을 설명한 글입니다.
아임포트 페이팔 연동하기
우선 테스트 계정의 API Credentials에서 이름/암호/서명을 복사한 후, 아임포트 관리자 계정에 붙여 넣기를 해준 후 저장합니다.
View 화면 - HTML 자바 스프링 (java spring)
해당 글까지의 연동을 전제로 작성한 글입니다.
<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만 작동하므로, 이전 글(링크)과 동일하게 코드를 작성해야 합니다.
마치며
현재 구글에 돌아다니는 글들은 페이팔 테스트 계정 가입뿐만 아니라 아임포트 자료들도 최신화된 부분이 없어 직접 시행착오를 겪고 최신 버전으로 작성했습니다. 혹시라도 오류가 있거나 부족한 점이 발견되면 댓글 남겨주시면 최대한 반영 수정하겠습니다.
반응형
'Language > Spring' 카테고리의 다른 글
파일 업로드 쉽게 구현하기 (Spring Ajax 다중파일 업로드 & 개별삭제 & 개수제한 & 초기화) ② (449) | 2021.05.28 |
---|---|
파일 업로드 쉽게 구현하기 커스터마이징하기(css변경,스타일변경,디자인) ① (248) | 2021.05.28 |
[JAVA, SPRING, Iamport] 아임포트 모바일 웹뷰 콜백함수 해결책 및 자바 예제(WEB,APP) (254) | 2021.03.17 |
[JAVA, SPRING, Iamport] 아임포트 검증하기(WEB,APP) (440) | 2021.03.17 |
[JAVA, SPRING, Iamport] 아임포트 연동(WEB,APP) (397) | 2021.03.17 |
댓글