Payment / Iamport

turnaroundwoo·2023년 2월 17일
0

11st Blogs

목록 보기
18/52

01. Payment


먼저, 개발자가 결제 연동 시스템을 프로젝트에 적용하여 직접 구현을 한다면 위와 같은 과정을 거쳐야 합니다.
최소 2주 이상은 온전하게 결제 연동에 매달려야 구현이 가능한 수준인데, PG사에 따라서 사용하는 모듈들 또한 다르기 때문에 사용하고 있던 PG사를 다른 PG사로 옮기게 된다면 결제 연동 시스템을 다시 구축해줘야 합니다.

하지만 이 과정을 대신 해결해주는 결제솔루션인 결제 외부 API를 사용하면 간단하게 결제 시스템을 구현할 수 있습니다.

  • PG(Payment Gateway) 구매자와 판매자 사이에서의 이뤄지는 결제를 안전하게 할 수 있도록 대행해주는 역할을 담당 (KG 이니시스, NHN, KCP, LGU+, KG 모빌리언스, 다날, 카카오Pay 등이 있음)

결제솔루션으로 개발환경과 상관없이 원하는 PG사와의 결제시스템을 연결시켜주는 결제 API 서비스가 있는데요. 여러 결제솔루션 중 국내에서 많이 사용되고 있는 아임포트(I'mport)/포트원(PortOne) 입니다.
실제로 포트원(구 아임포트)에서 제공하는 API를 사용하면 PG사와의 연결 과정을 포트원이 모두 대신 처리해주기 때문에 복잡하고 까다로운 결제환경을 직접적으로 구현할 필요가 없어집니다.

실제 결제 기능 하나 만드는 것을 쉽게 생각할 수도 있겠지만, 아래의 그림을 보면, 클라이언트가 결제를 한다고 했을 때, 생각보다 고려해야 하는 경우의 수가 많다는 것을 알 수 있습니다.


02. Iamport

최근에 아임포트(Iamport)가 포트원(PortOne)서비스로 업데이트가 되어 포트원으로 이름이 바뀌었습니다.

포트원 결제 프로세스 (imp_uid의 이동 흐름)

1️⃣ 브라우저에서 결제하기 버튼을 클릭하면 프론트엔드에서 포트원에 Rest API로 결제 요청
2️⃣ 포트원은 PG사에 결제 요청
3️⃣ PG사는 카드사에 결제 요청
4️⃣ 결제가 다 되면, 포트원이 결제건에 대한 ID값을 보내줍니다. (이를 `imp_uid`라고 함) 
5️⃣ 프론트 엔드는 받은 imp_uid를 백엔드에 건내줍니다.
7️⃣ 백엔드는 DB에 결제 정보와 함께 imp_uid를 저장합니다.

▶️ 포트원 [구 아임포트] 주소



🗒 출처


0개의 댓글