Jiwift

[iOS/Swift] Toss Payments 자동 결제(빌링) 이해하기 (정기 구독, 구독제) 본문

라이브러리/TossPayments

[iOS/Swift] Toss Payments 자동 결제(빌링) 이해하기 (정기 구독, 구독제)

지위프트 2023. 11. 1. 18:19
반응형

 이번에는 Toss 정기 결제를 연동하기 앞서 정기 결제가 어떤 식으로 진행이 되는지, 알아보도록 하겠습니다. 우선 아래 내용은 모두 토스 페이먼츠 개발자 센터에 있는 내용으로 정확한 내용을 원하시는 분들은 개발자 센터를 방문해 주세요.

자동결제(빌링) 이해하기 | 토스페이먼츠 개발자센터 (tosspayments.com)

 

자동결제(빌링) 이해하기 | 토스페이먼츠 개발자센터

자동결제는 정기 배송, 음악 스트리밍과 같은 구독형 서비스에서 사용하는 결제 방식입니다. 자동결제(빌링)의 개념과 과정을 설명합니다.

docs.tosspayments.com

 

저는 공부와 기억을 하기 위해서 작성하도록 하겠습니다.


출처 : 토스 페이먼츠

 우선 정기 결제 흐름을 알고 가야 서버와 작업할 때 대화하기가 좋습니다. 저는 머리가 나빠서 그런지 API 문서만으로는 이해가 안 갔는데, 위 그림을 통해서 그나마 흐름을 알고 나니 이런저런 API를 왜 호출하는지 알겠더라고요. 간단하게 보고 넘어가도록 하겠습니다.

 

출처 : 토스 페이먼츠

 위에서 보이는 빌링키를 통해서 서버는 앞으로 정기 결제를 진행하게 되는데요. 빌링키를 발급받기 위해서는 고객에게 본인 인증과 카드 등록과 같은 절차를 앱에서 수행해야 합니다. 

 

출처 : 토스 페이먼츠

 전체적인 흐름입니다. 위에서 나온 내용들이 모두 들어있는데요. 제가 아는 선에서 정리를 해보도록 하겠습니다. 위 작업을 하기 위해서는 관리를 위한 서버가 필요합니다. 

 

 1. 우선 고객은 카드 등록창을 호출하게 됩니다. 여기서는 서버에서 받은 customerKey가 필요합니다. 

 2. 고객은 카드 정보 입력과 본인인증 절차를 수행합니다. 

 3. 모든 절차가 정상이라면 authKey를 발급받게 됩니다. 

 4. 앱은 authKey키를 서버에게 알려주면 서버는 빌링키를 토스에게 받게 되고 앞으로 정기 결제를 수행하게 됩니다. 

큰 절차는 위와 같습니다. 서버와 어떻게 주고받을지, 어떻게 처리할지는 각각 개발 단계와 상황에 따라서 다르다고 생각됩니다. 

 

 저 같은 경우는 정기 결제를 위한 등록창은 웹뷰를 통해서 구현했습니다. 브랜드페이를 사용하면 정기 결제가 된다는데 해보신 분들은 댓글을 통해서 정보를 공유해 주시면 감사하겠습니다. 

 

 이번에는 간단하게 토스 정기결제에 대해서 알아보았는데요. 사실 다른 서비스들도 다르지 않을 것 같다는 생각이 듭니다. 바로 구현하기 전에 이렇게 한번 어떤 식으로 동작하고 백엔드에서는 어떤 절차들이 수행되는지 알고 간다면 더 좋은 소통과 개발을 할 수 있을 것 같다는 생각에 구현하기 앞서 글을 작성해 보았습니다. 

 

 

 

반응형