본문 바로가기
Project/pre-print-project

preprint 개발일지 - 결제기능 강화 & 결제 취소기능 구현 & 소셜로그인 배포환경 설정 & m_redirect_url, webhook 설정(모바일 테스트)

by 지식을 쌓는 개구리 2024. 8. 2.

여는 글

preprint 개발이 어느덧 막바지에 다다랐는데 기간 동안 결제 기능에 있어 유연성을 강화하고 

결제 취소 기능과 현재 배포환 환경에 맞게 구글로그인 & 카카오로그인이 가능할 수 있게 리디렉션 설정 변경 및 

프로젝트 환경 세팅을 개발 환경, 프로덕션 환경 각각 다르게 설정될 수 있도록 수정하였다.

또한 결제가 데스크탑에서는 문제가 없지만 모바일 환경에서 결제가 진행되면 웹페이지를 벗어나게 되기에

정상적인 결제진행이 되지 않는다.

따라서 m_redirect_url설정을 진행해 주어 모바일 환경에서도 결제가 잘 이뤄질 수 있게 수정하였으며

webhook설정도 진행하였다.

=> 이를 하나하나 간단히 기록할 예정이다.

 

m_redirect_url, webhook의 경우 이전에 포스팅 글로 정리한 부분이 있는데, 아래 글을 참고하면 좋겠다.

https://choiet.tistory.com/36

 

iamport를 활용한 m_redirect_url, webhook 테스트 진행하기

iamport를 활용해서 테스트 결제 서비스를 개발 완료하고 이를 AWS까지 배포진행하였다.지금은 로직상 페이지가 넘어가버리면 결제 진행이 끊겨버리기에 pc환경에서는 상관 없으나모바일 환경에

choiet.tistory.com

 

주문이 도중에 취소되었다면 이후에 결제할 수 있게 수정

지금 로직상 주문 신청을 하면 결제전에 바로 db에 주문 라인이 생성이 된다. 이후 결제를 완료하면

이 결제 정보가 주문 데이터르 기반으로 추가 저장되는 구조이기에 주문 신청만 하고 결제를 진행하지 않는다면

주문 정보만 남고 결제를 추가로 진행할 수 없는 문제가 있었다. 따라서 이러한 경우 결제 진행이 되지 않은 주문에 대해

"결제하기"버튼을 두어 결제 진행이 될 수 있도록 하였다.

결제 되지 않은 주문 -> 결제 진행 주문

=> 다음과 같이 결제하기 버튼을 클릭해 결제를 진행하면 정상 결제 주문으로 수정되는 모습이다.

 

주문 취소 기능

주문을 일정 시간내에 취소를 할 수 있어야 하기에

주문취소 기능도 구현하여 손쉽게 취소할 수 있도록 하였다.

 

=> 정상적으로 취소되는 모습

 

 

배포환경에 맞추어 소셜로그인(구글, 카카오) 리디렉션 환경 설정

=> 나의 로컬 환경에서도 로그인 기능 테스트가 필요하기 때문에 환경별 baseurl의 분리를 해둔 상태이다.

local환경에서는 다음과 같이 본 url을 사용할 수 있게, 배포환경에서는 배포한 도메인의 주소로 url을 사용할 수 있게 해 두었다.

 

=> 또한 다음과 같이 구글 oauth & 카카오 디벨로퍼 app에서 도메인, 리디렉션 설정을 추가해 주었다.

 

=> 배포한 환경에서 잘 로그인되는 모습

 

 

m_redirect_url & 웹훅

위에서 설명했듯 모바일 환경에서도 정상결제가 이뤄질 수 있게 m_redirect_url 설정을 진행해 줬고

실 결제 서비스 연동 시 안전성을 위해 웹훅을 적용했다.

 

[m_redirect_url 결과]

=> 다음과 같이 모바일로 배포한 웹사이트에 접속해 로그인을 진행하고

 

 

 

=> 다음과 같이 모바일 환경에서 결제를 진행해도 정상적으로 결제 진행이 가능한 모습이다.

 

 

[웹훅 결과]

=> 다음과 같이 배포한 도메인을 엔드포인트로 맞추고 테스트하면

=> 잘 진행되는 모습

 

마무리 및 해야 할 일

다음과 같이 대부분의 태스크를 모두 개발 완료하고 이제는 주문 건에 대한 프린트 출력에 대해 스케줄러 스크립트 작성과

파일 스케줄러 스크립트 작성만 개발하고 테스트 진행하면 된다.

 

동시에 실 결제 서비스 연동을 위해서 법인등록증 및 이하 결제, 고객정보관리 지침서 등등 자료들로

결제 pg사 검증 및 계약을 진행해야 한다.

심사 기간이 1~2주가 소요되기에 이를 위해 문제가 없도록 자료 준비 및 결제 로직에 대해 유효성 검증을 더 진행할 예정이다.