본문으로 건너뛰기

키인결제 (Key-in Payment)

**키인결제(Key-in Payment)**란 구매자가 결제창에서 직접 인증(앱카드, ISP 등)을 수행하지 않고, 카드 정보(번호, 유효기간 등)를 입력받아 판매자가 대행하여 승인을 요청하는 방식입니다.

현장에서는 '수기결제', '비인증 결제', 또는 **'전화승인'**이라는 용어로도 불립니다. 주로 콜센터 상담원을 통한 전화 주문이나, 오프라인 단말기 고장 시 비상 결제 수단으로 사용됩니다.


⚙️ 필수 입력 정보 (Parameters)

일반적인 인증 결제와 달리, 본인 확인을 위한 추가적인 민감 정보가 필수적으로 요구됩니다.

구분필수 여부설명예시
카드번호✅ 필수14~16자리 숫자1234-5678-****-****
유효기간✅ 필수MMYY (월/년)1225 (2025년 12월)
비밀번호✅ 필수앞 2자리12 (나머지는 마스킹)
인증정보✅ 필수생년월일 또는 사업자번호개인: 900101 (6자리)
법인: 1234567890 (10자리)
법인카드 예외 처리

**법인 공용카드(기명 X, 비밀번호 설정 X)**의 경우, 비밀번호와 생년월일 대신 사업자번호만으로 승인되는 경우가 있습니다. 단, 카드사별 정책이 상이하므로 개발 시 try-catch 예외 처리가 필요합니다.


⚖️ 기술 비교: 인증 결제 vs 키인결제

개발 연동 시 프로세스와 리스크 관리 측면에서 큰 차이가 있습니다.

구분인증 결제 (Authenticated)키인결제 (Key-in / Non-Auth)
주체구매자가 결제창에서 직접 수행**판매자(가맹점)**가 API로 호출
보안3D Secure, 토큰(Token) 사용Raw Data(카드번호) 직접 전송
리스크낮음 (부인 방지 가능)높음 (도용 위험, 차지백 발생 가능)
한도개인 카드 한도 내 자유월 한도 제한이 타이트하게 적용됨
APIpayResult 수신 후 승인 요청정보 수집 후 즉시 승인 요청

💻 개발자 팁 (Security Checkpoints)

1. 카드 정보 저장 금지 (PCI-DSS)

키인결제를 구현할 때 가장 주의할 점은 보안입니다.

  • API 호출을 위해 카드 정보를 입력받더라도, 승인 후에는 해당 정보를 DB나 로그 파일에 절대 평문으로 저장해서는 안 됩니다. (보안 감사 지적 1순위)

2. 에러 메시지 처리 (User Friendly)

사용자가 구두로 불러준 정보를 입력하다 보면 오타가 자주 발생합니다. PG사로부터 리턴받는 에러 코드를 명확하게 매핑하여 안내해야 합니다.

  • 예: 비밀번호 오류 → "비밀번호 앞 2자리가 일치하지 않습니다."
  • 예: 유효기간 오류 → "카드의 유효기간을 다시 확인해 주세요."

3. 할부 개월 수 제한

일반적으로 키인결제는 리스크 관리 차원에서 5만 원 이상 결제 시에도 무이자 할부가 적용되지 않거나, 최대 할부 개월 수가 일반 결제보다 짧게(예: 3~6개월) 제한될 수 있습니다.