-
NestJs(Node) 환경에서 TossPayments Seller 코드 예제NestJs 2024. 12. 17. 00:24
개요
저희 회사에서는 결제/지급대행 기능을 TossPayments를 통해 구현 되어있습니다.
그런데 9월 즈음부터 새로 가입한 사업자들이 '개인사업자'가 아닌 '개인'으로 등록되고 있었습니다.
원인은 토스 API 변경!
v1에서는 서브몰(submall)이라는 이름으로,
v2에서는 셀러(seller)라는 이름으로 서비스가 제공되고 있습니다.
v1에서는 '개인'을 '개인사업자'의 의미로 '개인', '법인'으로만 사용했으나
v2에서는 '개인', '개인사업자', '법인'으로 '개인사업자' 코드가 추가 되었습니다.
이것 때문에 9월 이후 '개인'으로 등록된 셀러정보를 전부 삭제하고 다시 등록 했습니다.
기존 서브몰(v1)도 문제가 있던터라(데이터 삭제해도 같은 ID로 등록이 안됩니다. v2에서는 refSellerId라고 소개 되네요.)
이참에 v2로 마이그레이션 하고자 마음 먹었습니다.
그런데 왠걸?
암/복호화 기능이 생겼네요.
Node 예제가 없으므로 정말 몇 년만에 맨땅에 헤딩하듯 삽질을 해보기로 합니다.
참고로, 시크릿 키 + 아닌 암호화 키가 필요합니다.
암호화 키 들어갈 곳에 시크릿 키 넣지 마세요.
iat 필드에 입력되는 값 또한 확실하게 해야 합니다.
UTC로 들어가면 '암호화 포멧이 유효하지 않다(Invalid encrypt format)'로 응답 받고 한참 삽질하니 주의 합니다.
'NestJs' 카테고리의 다른 글
[이슈] 토스 페이먼츠 중복 결제 (1) 2024.10.30 [오답] Jest로 Axios 테스트 시 Cannot use import statement outside a module (0) 2023.03.13 TypeOrm 0.2 - Relations 성능 이슈 (0) 2023.02.24 Serverless + NestJS + MikroORM 조합 시 문제 (0) 2022.03.06 [공부] NestJS (0) 2021.12.20