토스페이먼츠 API는 일반적으로 Basic 인증에 시크릿 키를 사용합니다. 시크릿 키는 개발자센터에서 확인할 수 있습니다.
✅ 로그인하지 않고 문서에 있는 테스트 키를 사용할 수 있지만, 결제 내역을 확인할 수 없어요.
✅ Basic 인증 헤더에 시크릿 키를 사용자 ID로 사용하고 비밀번호는 없습니다. 시크릿 키 뒤에 콜론을 추가해서 비밀번호가 없다는 것을 알립니다.
✅ 토스페이먼츠는 고객의 결제 정보와 개인 정보를 보호하기 위해 HTTPS 통신과 TLS 버전 1.2 이상만 지원합니다.
1. 개발자센터에서 내 시크릿 키를 확인하세요.
- 로그인했다면, 아래 키 값도 내 테스트 시크릿 키로 바뀌어요.
- 로그인하지 않고 문서에 있는 테스트 시크릿 키도 결제 연동에 사용할 수 있지만, 결제 내역을 확인할 수 없어요.
test_sk_zXLkKEypNArWmo50nX3lmeaxYG5R
test_sk
로 시작하는 시크릿 키는 테스트 키입니다. live_sk
로 시작하는 시크릿 키는 라이브 키입니다. 시크릿 키는 외부에 절대 노출되면 안 됩니다.
2. 시크릿 키 뒤에 :
을 추가하고 base64로 인코딩하세요. 콜론을 빠트리지 않도록 주의하세요.
base64('test_sk_zXLkKEypNArWmo50nX3lmeaxYG5R:')
─────────────────┬───────────────── ┬
secretKey :
발급받은 시크릿 키 콜론
아래 명령어를 터미널에서 실행하면 인코딩된 값을 얻을 수 있습니다.
echo -n 'test_sk_zXLkKEypNArWmo50nX3lmeaxYG5R:' | base64
3. 인코딩된 값을 API의 Basic 인증헤더에 사용하세요.
Authorization: Basic dGVzdF9za196WExrS0V5cE5BcldtbzUwblgzbG1lYXhZRzVSICsgOg==
Authorization: Basic base64({USERNAME}:{PASSWORD})
HTTP Basic 인증 방식은 클라이언트에서 base64로 인코딩된 사용자 ID, 비밀번호 쌍을 인증 정보(credentials) 값으로 사용합니다. 사용자 ID와 비밀번호는 위와 같이 콜론으로 구분합니다. Base64로 인코딩한 정보는 쉽게 디코딩이 가능해서 Basic 인증은 반드시 HTTPS/TLS와 함께 사용해야 합니다.
토스페이먼츠 API는 시크릿 키를 사용자 ID로 사용하고, 비밀번호는 사용하지 않습니다. 비밀번호가 없다는 것을 알리기 위해 시크릿 키 뒤에 콜론을 추가합니다.