CodeCamp-28일차

김영탁·2021년 12월 8일
0

오늘은 결제시스템을 배운다.
기존것도 잘 못하는 느낌인데 결제까지 들어가다니!!!

-결제-
크게 두가지로 나눠진다.

일반결제

  • 카드결제
  • 계좌이체
  • 무통자입금

정기결제

  • 카드결제

이러한 기능들은 결제라는 큰 틀로 다같이 들어오는것이 아니라 하나하나 넣어줘야 한다고 한다.

보통 우리는 결제간에 PG사를 통해 결제를 진행한다.
대표적으로 NHN나이스페이, KG이니시스가 있는데
사실 이 업체들을 하나하나 다 연결해주는것이 불편함이 있다.

그래서 요즘에는 결제 솔루션이라는게 생겨나는데 대표적으로 아임포트, 부트페이라는곳이 있다.
이 친구들은 pg사와 업체 사이에서 일정 수수료를 받으며 제공하는데 장점으로는
각각의 pg사를 하나하나 연동하는것이 아닌 한번에 api로 받아와 적용시킬수 있다는 것이다.

아임포트를 사용할때에는 아임포트 홈페이지에서 각 PG사의 계약서를 작성하여 각각의 PG사로 보내준다. 그러면 1주일정도 이후에 PG사로부터 각 카드사에서 심사결과를 회부한것을 보내주는데 이때 각 카드사에서 자체적으로 판단한 룰에 어긋나는경우 불합격 처리를 받을수 있다. 그래서 우리는 ppt와 로그인 계정을 같이 보내주게 되며 이때 소요기간은 2주정도 걸린다고 보면된다. 그말은 순수 서류작업만 한달정도의 기간을 잡으면 된다는것이다.

기술적인 면에서 알아보자!

결제 과정에서는 API통신 간 ID값을 받아오게 되는데 그것을 imp_uid라고 한다. 우리는 그 아이디값을 mutation하여 백앤드 서버로 날려주고 백단에서는 DB까지 보내주는것이다.

mutation은 취소, 구매를 보내주고 결제목록 조회 query를 통해 결제 내역들을 관리하게 된다. 이때도 상당한 기간이 소요된다.

이렇게 잘만 만들어놓으면 다 되는것인가?

그것은 아니다. 위에서 말했듯 각 카드사에서 룰에 어긋나는경우 거절할수도 있다,
그럼 어떠한 경우일까?

예시
-경매/도박
-금액을 직접입력하는 방식의 결제
-도메인이 없는 테스트 서비스

위의 내용을 그림으로 보자면 이런느낌이 될것이다.

profile
front-end engineer

0개의 댓글