본문으로 건너뛰기

PG (Payment Gateway)

PG(Payment Gateway, 전자결제대행사)는 온라인 상점에서 상품과 서비스를 판매할 때, 고객이 신용카드나 계좌이체 등 다양한 수단으로 안전하게 결제할 수 있도록 지원하는 중계 시스템입니다.

오프라인 매장에 '카드 단말기(POS)'가 있다면, 온라인 쇼핑몰에는 PG가 있다고 이해하면 됩니다.

💳 왜 PG사가 필요한가요?

온라인 쇼핑몰(가맹점)이 수많은 카드사(신한, 삼성, 현대 등), 은행, 간편결제사(네이버페이, 카카오페이)와 일일이 계약을 맺고 시스템을 연결하는 것은 현실적으로 불가능합니다.

PG사는 이 복잡한 계약과 정산 과정을 대행합니다.

  • 계약 대행: 가맹점은 PG사와 단 한 번의 계약으로 모든 카드/은행 결제를 이용할 수 있습니다.
  • 정산 대행: 여러 카드사에서 들어오는 대금을 PG사가 모아서, 수수료를 제외하고 가맹점에 일괄 지급합니다.
VAN 사와의 차이점
  • VAN (Value Added Network): 카드사와 단말기 사이의 통신망을 연결하고 승인을 중계하는 역할 (주로 오프라인).
  • PG: VAN의 역할에 더해, 가맹점을 대신해 카드사와 대표 가맹점 계약을 맺고 자금 정산까지 책임지는 역할 (주로 온라인).

🔄 결제 흐름 (Flow)

PG는 고객과 금융기관 사이에서 데이터를 암호화하여 전달합니다.

  1. 인증 (Authentication): 고객이 본인임(비밀번호, 생체인증)을 증명합니다.
  2. 승인 (Authorization): 카드사가 한도와 유효성을 확인하고 결제를 허락합니다.
  3. 매입 (Capture): 확정된 매출 전표를 카드사에 청구합니다.
  4. 정산 (Settlement): 약정된 주기에 맞춰 판매 대금이 입금됩니다.

💻 개발 체크포인트

PG 연동 시 개발자는 다음 키워드를 반드시 숙지해야 합니다.

1. MID (Merchant ID)

PG사가 가맹점을 식별하기 위해 발급하는 고유 아이디입니다.

  • 연동 시 주의: 개발(Sandbox) 환경용 MID와 운영(Production) 환경용 MID가 다르므로, 배포 시 반드시 교체해야 합니다.

2. 시크릿 키(Secret Key)

결제 데이터의 위변조를 막기 위한 암호화 키입니다. 이 키가 유출되면 해커가 결제 금액을 0원으로 조작하여 요청할 수도 있으므로 절대 프론트엔드(브라우저) 코드에 노출하면 안 됩니다.

3. Webhook (Noti URL)

고객이 결제창을 닫아버리거나 네트워크가 끊겨도, 결제 결과를 서버가 확실히 수신하기 위해 PG사가 가맹점 서버로 보내주는 후속 통보(Callback) 메커니즘입니다.