가이드/자동결제(빌링)
목차

Version 2

새로 나온

는 정기 배송, 음악 스트리밍과 같은 구독형 서비스에서 사용할 수 있어요. 정기 구독형 서비스가 아니라면 정책적으로 자동결제 사용이 제한되니 유의하세요.

토스페이먼츠는 현재 신용·체크카드만 자동결제만 지원해요. 구매자의 카드 번호, 유효기간, 카드 소유자의 생년월일 또는 사업자번호가 필요해요. 아래와 같이 토스페이먼츠 UI로 구매자 정보를 받고 싶다면 SDK를 연동하세요. 만약 모든 UI를 직접 구현하고 싶다면 API를 사용하세요.

* 자동결제는 추가 리스크 검토 및 계약 후 사용할 수 있습니다. 토스페이먼츠 고객센터(1544-7772, support@tosspayments.com)로 문의해주세요.

샘플 프로젝트 바로가기

토스페이먼츠 자동결제

구독 서비스는 API를 사용해서 직접 구축해야 합니다. 1달 주기로 결제가 필요한 상품이면 1달마다 고객키, 빌링키, 금액을 설정해서 카드 자동결제 승인 API를 호출하면 됩니다. 구현하는 방법이 궁금하다면 구독 결제 서비스 간단히 구현하기시리즈를 참고하세요.

다음 결제일에 구독을 취소한 구매자의 빌링키, 고객키로 카드 자동결제 승인 API를 호출하지 않으면 됩니다.

금액이 바뀌었다면 카드 자동결제 승인 API를 호출할 때 amount 파라미터를 변경된 결제 금액으로 설정하면 됩니다.

결제 주기가 바뀌었다면 카드 자동결제 승인 API를 호출하는 주기를 변경해주세요.

아니요. 토스페이먼츠 자동결제(빌링)는 국내 카드만 지원해요. 토스페이, 카카오페이, 네이버페이와 같은 국내 간편결제는 지원하지 않습니다. PayPal(페이팔)과 같은 해외 간편결제도 지원하지 않습니다.


연동하기

결제창토스페이먼츠 UI로 카드 정보, 본인인증을 받아요.

자동결제(빌링) 과정

일반결제는 결제하는 시점에 매번 구매자의 본인인증이 필요하지만, 자동결제는 구독 주기마다 본인인증 없이 결제할 수 있습니다. 최초의 본인인증 뒤에 발급된 빌링키가 이후의 본인인증 과정을 대신합니다.

빌링키란?

는 카드번호, 유효기간, CVC 등 결제 정보를 암호화한 값이에요. 기술적으로는 매 회 본인인증이 일어나지만, 구매자 입장에서는 최초 인증 후에는 인증 과정이 없고 의사와 무관하게 빌링키로 계속 결제가 가능해요. 악용되지 않게 반드시 구매자 본인인증을 받은 뒤에 빌링키를 발급받는 것을 추천해요.

정기 결제 빌링키 사용 흐름도

새로운 카드 정보로 빌링키를 다시 발급받으세요. 별도로 빌링키를 갱신하는 과정은 없습니다.

별도로 제공하지 않습니다. 자동결제에 등록할 카드의 유효성 여부는 빌링키 발급을 요청할 때 카드사를 통해 확인합니다. 만약 유효하지 않다면 에러를 응답합니다. 카드 잔고 부족이나 한도 초과는 결제 승인을 요청할 때 카드사를 통해 확인합니다.

발급된 빌링키를 삭제하는 API는 제공되지 않습니다. 발급된 빌링키가 더 이상 필요하지 않으면 데이터베이스에서 삭제하고 더 이상 사용하지 않으면 됩니다.

혹시 누군가가 빌링키 정보를 알고 있더라도 빌링키와 매칭이되는 customerKey를 모른다면 결제가 불가능합니다. 빌링키를 사용한 결제는 빌링키를 발급할 때 같이 전달된 customerKey와 매핑이 되어있기 때문에, 결제 요청을 할 때 빌링키와 customerKey가 같이 전달되어야 결제가 진행됩니다.

발급된 빌링키를 조회하는 API는 제공되지 않습니다. 빌링키 발급 이후 반드시 안전하게 저장하세요. 만약에 빌링키를 잃어버렸다면 구매자에게 다시 결제 정보를 받아서 새로운 빌링키를 발급받아주세요.

자동결제 과정

아래 과정을 따라서 내 상점만의 구독형 서비스를 구축해보세요. 결제 주기에 따라 자동결제를 승인하는 것은 직접 스케줄링해야 됩니다. 구독 결제 서비스 구현하기 (2) 스케줄링 블로그 아티클에서 자세한 내용 확인하세요.

  1. 토스페이먼츠 SDK 또는 직접 제작한 UI로 구매자의 카드 정보 수집 및 본인인증

  2. 토스페이먼츠 자동결제 API로 빌링키 발급

  3. 빌링키와 구매자 ID 매핑하여 저장

  4. 결제 주기(구독 서비스 결제일)에 빌링키로 원하는 금액 자동결제 승인

자동결제-흐름

  • 더 궁금한 내용이 있나요?
  • 코드 샘플을 참고하세요
  • 기술지원이 필요한가요?
    실시간 문의|이메일 보내기