KCP PG-API
KCP PG-API란?
KCP PG-API는 가맹점이 HTTPS 통신으로 결제 서비스를 이용할 수 있도록 제공하는 서비스입니다.
인가된 가맹점만 API를 이용할 수 있도록, 계약 시 발급된 서비스 인증서와 개인키를 적용하여 가맹점과 KCP 간의 암호화 통신이 이루어집니다.
1. KCP PG-API 구성
KCP PG-API는 서비스 인증서와 개인키로 구성됩니다. 두 파일은 함께 발급되지만 API 요청에서 사용하는 위치가 다릅니다.
서비스 인증서
NHN KCP에서 발급받은 가맹점을 확인하기 위한 인증서입니다. 결제 승인, 거래취소 등 모든 API 요청 시 kcp_cert_info 값으로 전달합니다.
테스트용 서비스 인증서 다운로드 →
개인키
가맹점 부인 방지와 요청 데이터의 무결성 검증을 위한 서명데이터(kcp_sign_data)를 만들 때 사용합니다.
외부에 노출되지 않도록 안전하게 관리해야 합니다.
테스트용 개인키 다운로드 →
2. 서비스 인증서와 개인키 발급 및 관리
운영 환경의 서비스 인증서와 개인키는 파트너관리자에서 발급받습니다.
테스트 환경은 위의 다운로드 링크에서 테스트용 파일을 다운로드하여 적용합니다.
운영 환경 발급 방법
- 파트너관리자에 로그인합니다.
- 기술관리센터 > 인증센터 > KCP-PG API 메뉴에서 서비스 인증서와 개인키를 발급합니다.
- 최초 발급 시 서비스 인증서와 개인키가 함께 발급됩니다.
PC 다운로드 폴더에서 KCP_AUTH_사이트코드_CERT 형태의 폴더를 확인하세요.
발급 파일 구성
KCP_AUTH_사이트코드_CERT 폴더 내에 아래와 같은 .pem 파일이 있습니다.
KCP_AUTH_사이트코드_CERT.pem — 서비스 인증서 파일
KCP_AUTH_사이트코드_PRIKEY.pem — 개인키 파일
보관 및 관리 주의사항
- 개인키는 외부로 노출되지 않도록 주의해 주세요.
- KCP PG-API 서비스 인증서의 유효기간은 5년이며, 유효기간 만료 30일 전부터 재발급할 수 있습니다.
- 개인키 비밀번호를 분실했거나 파일을 분실한 경우에는 폐기 후 재발급이 필요합니다.
개인키 폐기 시 기존에 사용하던 서비스 인증서로는 승인, 취소, 조회 등 모든 서비스를 이용할 수 없습니다.
3. 서비스 인증서 적용하기
발급받은 서비스 인증서 파일의 내부 값을 텍스트 값으로 전달해야 합니다. kcp_cert_info 값 적용 시에는 서비스 인증서 텍스트 값을 직렬화하고, 시작/종료 구분자까지 포함하여 value 값으로 전달하세요.
"kcp_cert_info" : "-----BEGIN CERTIFICATE-----MIIDgTCCAmmgAwIBAgIHBy4lYNG7ojANBgkqhkiG9w0BAQsFADBzMQswCQYDVQQGEwJLUjEOMAwGA1UECAwFU2VvdWwxEDAOBgNVBAcMB0d1cm8tZ3UxFTATBgNVBAoMDE5ITktDUCBDb3JwLjETMBEGA1UECwwKSVQgQ2VudGVyLjEWMBQGA1UEAwwNc3BsLmtjcC5jby5rcjAeFw0yMTA2MjkwMDM0MzdaFw0yNjA2MjgwMDM0MzdaMHAxCzAJBgNVBAYTAktSMQ4wDAYDVQQIDAVTZW91bDEQMA4GA1UEBwwHR3Vyby1ndTERMA8GA1UECgwITG9jYWxXZWIxETAPBgNVBAsMCERFVlBHV0VCMRkwFwYDVQQDDBAyMDIxMDYyOTEwMDAwMDI0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAppkVQkU4SwNTYbIUaNDVhu2w1uvG4qip0U7h9n90cLfKymIRKDiebLhLIVFctuhTmgY7tkE7yQTNkD+jXHYufQ/qj06ukwf1BtqUVru9mqa7ysU298B6l9v0Fv8h3ztTYvfHEBmpB6AoZDBChMEua7Or/L3C2vYtU/6lWLjBT1xwXVLvNN/7XpQokuWq0rnjSRThcXrDpWMbqYYUt/CL7YHosfBazAXLoN5JvTd1O9C3FPxLxwcIAI9H8SbWIQKhap7JeA/IUP1Vk4K/o3Yiytl6Aqh3U1egHfEdWNqwpaiHPuM/jsDkVzuS9FV4RCdcBEsRPnAWHz10w8CX7e7zdwIDAQABox0wGzAOBgNVHQ8BAf8EBAMCB4AwCQYDVR0TBAIwADANBgkqhkiG9w0BAQsFAAOCAQEAg9lYy+dM/8Dnz4COc+XIjEwr4FeC9ExnWaaxH6GlWjJbB94O2L26arrjT2hGl9jUzwd+BdvTGdNCpEjOz3KEq8yJhcu5mFxMskLnHNo1lg5qtydIID6eSgew3vm6d7b3O6pYd+NHdHQsuMw5S5z1m+0TbBQkb6A9RKE1md5/Yw+NymDy+c4NaKsbxepw+HtSOnma/R7TErQ/8qVioIthEpwbqyjgIoGzgOdEFsF9mfkt/5k6rR0WX8xzcro5XSB3T+oecMS54j0+nHyoS96/llRLqFDBUfWn5Cay7pJNWXCnw4jIiBsTBa3q95RVRyMEcDgPwugMXPXGBwNoMOOpuQ==-----END CERTIFICATE-----"