PG (Payment Gateway)

­이은재 ·2024년 10월 10일

1. 페이먼츠의 종류

직접 카드사 가맹점, 은행 펌뱅킹과 연동할 수도 있고, PG(payment gateway)사, 펌뱅킹 대행사를 도입할 수도 있다.

직접 카드사 가맹점, 은행 펌뱅킹과 연동할 경우 아래의 장단점이 있다.

👍 장점
(1) 카드, 이체수수료만 부과
(2) 외부 시스템에 의존 X

👎 단점
(1) 신용카드 가맹점 계약, 펌뱅킹 계약 필요
(2) 라이선스 발급 및 요건 충족 등이 필요

PG(payment gateway)사, 펌뱅킹 대행사를 도입할 경우 아래의 장단점이 있다.

👍 장점
(1) 빠르게 도입 가능
(2) 라이선스 발급 불필요

👎 단점
(1) PG사 수수료 발생
(2) PG사 심사(간혹 매출 조건이 있는 경우도 있음)
(3) 결제 UI 디자인 한계

-> 외부 PG사로는 아임포트, 토스페이먼츠, 네이버, 카카오 결제 시스템 등이 있다!


2. 결제의 주요 구성 요소

(1) 구매자
상품을 선택하고 결제를 진행하는 최종 사용자다!

(2) Client
프론트엔드!
구매자가 상호작용하는 웹사이트나 앱. 결제 요청을 받고 결제창을 호출하는 인터페이스 역할을 한다.

(3) Server
백앤드!
PG사에게 결제 승인을 요청하고, 그에 대한 응답을 받는 상점의 서버.
Server는 PG사에게 승인 API 요청을 보내고 그에 대한 응답을 받고, 그 응답을 다시 Client에게 전달하게 된다.

(4) 페이먼츠(PG사)
실제 결제 처리와 승인, 결제 상태 등을 관리하는 결제 대행사.
금융기관과 상점 서버 간 결제 프로세스를 처리한다.

PG사는 이커머스 결제 대행 서비스를 진행하는 중개업체다.
'결제를 위한 관문'!
온라인 쇼핑몰의 계산대 역할을 한다, 다양한 결제 방식(카드 결제, 간편 결제, 계좌 이체, 가상계좌 등)을 사용할 수 있게 연결한다.
카드사에게 결제를 시도하는 구매자의 정보를 전달해서, 실제로 해당 구매자가 카드사 고객이 맞는지 인증을 진행하는 과정에서 카드사와 우리 사이를 중개,,하는 것!


3. 외부 api를 사용한 결제 플로우

(1) 결제창 호출(결제 준비)
구매자는 상품의 '결제 버튼'을 클릭해 결제를 시작하게 된다.
이 클릭에 반응해 Client가 Server에 결제 요청을 보내게 되고, Server는 이 결제 요청에 대한 응답으로 카카오페이의 api를 호출하여 결제 준비를 요청한다.
이 요청이 PG사로 전달되어, PG사가 Client에게 결제창 URL을 응답으로 반환하고, Client가 해당 URL을 이용해 결제창을 띄우는 일련의 과정이다!

👉 구매자 -> Client -> Server -> PG사 -> Client -> 구매자가 결제창 확인

(2) 카드 정보 전달 및 인증(카드사 인증 요청)
구매자가 해당 결제창에서 결제 수단을 선택한다. 그리고 PG사는 고객 정보를 카드사로 전달하고, 카드사는 내부적으로 구매자가 실제 카드사의 고객이 맞는지 확인하는 절차를 거친다.

👉 구매자 -> PG사 -> 카드사

(3) 서버에서 결제 승인 요청 날리기(결제 승인)
카드사가 고객 인증을 성공적으로 하면, PG사가 pg token을 Client한테 발급해주게 된다. 여기서 pg token은 '구매자 인증에 대한 증표'라고 이해하면 편하다. 이 상태에서는 Client만 구매자 인증 결과를 아는 상태다. Client가 Server한테 pg token을 보내주면 그때 Server가 해당 구매자가 인증된 고객인 걸 알게 된다.
결제 승인 절차를 위해 Server가 PG사로 다시 결제 승인 요청을 날린다. PG사는 카드사와의 통신을 통해 실제 결제를 처리하고, Server가 보낸 결제 승인 요청에 대한 응답으로 Server에 결제 완료 데이터를 전달한다.

👉 PG사 -> Client -> Server -> PG사 -> Server


profile
이은재

0개의 댓글