just-coding-it
PayPal 결제 API 사용 후기
fffman
2024. 12. 2. 23:22
아직까진 시스템에 적용해서 배포한건 아니다. 지금 개발중인 크롬 익스텐션의 BM을 구독으로 하려고 한다. 그 과정에서 회원 관리는 Firebase Authentication을 사용하고 구독 결제는 PayPal의 Subscription시스템을 이용하려 한다. 그리고 user_id와 subscription_id의 매칭은 Firestore Database에 저장해서 관리하고 간단한 백엔드는 Firebase Functions로 구성해서 개발공수를 최대한 줄이고 시스템을 이용하려했다.
PayPal을 사용하기로 결정한 이유는
- 널리 쓰여지고있는만큼 기존 사용자가 많아서 고객들이 좀 더 결제하는데 어려움을 덜 느낄거라고 생각했다
- 한국의 다른 결제 서비스들은 구독과 같은 정기결제를 적극적으로 지원해주는 곳이 없다. 카드 정보를 저장하고 비인증 결제를 스케줄링 하는 수밖에 없었다. 즉. 백엔드 구현의 부담이 커진다. 게다가 paypal은 빌링 작업을 굉장히 디테일하게 설정할 수 있었다. 결제 주기도 N 일/주/월/년을 선택할수도 있고 trial기간도 설정할수 있다.
- 대체재로 stripe도 고려해봤는데, 상용으로 사용하려면 사업정보를 등록해야 하는데 한국 사업지를 지원해주지 않는다. 따라서 한국에 만 사업지가 있다면 사용할수가 없었다.
그런데 PayPal을 사용하는것도 재고해봐야 할 것 같다. 한국 카드로 결제가 안된다. 물론 반드시 한국에서만 서비스할게 아니긴하지만 한국에서부터 마케팅을 시작할 예정인만큼 크리티컬한 문제다.
그 외에도 불편한점은 좀 많다.
- 베타버전인 SDK. 베타버전이라 그런지 Subscription기능이 쏙 빠져있다. REST API 문서보고 직접 구현해두는 수밖에..
- 구독 리스트 조회 불가능. 구독 정보는 get detail만 가능하다. get list를 제공하지 않는 이유는 아마 보안 이슈로 그럴것이라는데, 정확한 이유는 모르겠다. 다만 관리자 페이지에서 구독 목록 조회가능하고 관리는 가능하다.
비즈니스 대시보드라고 관리자 페이지를 지원해주는데 sandbox모드 즉 개발버전을 제공해주지 않는다. live버전밖에 접속이 안된다. (어째서! 그냥 API만 sandbox모드로 호출해주면 되잖아!!)[개발버전 business dashboard는 내가 못 찾은거였다. 아니 왜 developer dashboard는 sandbox <--> live 토글이 있는데, business dashboard는 url이 다른거임..]
그래도 구독 시스템에 대해 이렇게까지 상세하게 지원해주는곳이 없어서 만약 사용하지 못하게되면 좀 아쉬울것 같다.