v2개발 관련
상점 ID plaincpc75 입니다.
저희가 현재 v2 지급대행 API를 개발할 수 있을까요?
아니면 따로 지급대행 사용하도록 신청을 해야할까요?
29 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
1544-7772 에서 사용신청을 하시고 v2 개발하시면 됩니다
토스페이먼츠 결제연동팀
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
이미 계약이 되어있다고 합니다.
API 개발 연동 키. 라이브에서 보안 키를 이용해서 작업을 진행했습니다.
작업중에 동작이 잘 안되어서요.
발송할 때 바디는 아래와 같고,
vLsmjG1bst1IFk2f.NjO8+bagJ6BCtW3fSrdAla11IcACYh5qnJCHLJ4S9og/R0F8Agdw8BixbNX/T4qctgvApIDPeAf9u7Lslmrq5yragPzzAYlKcUiu8fcAYaMRRO9lekD7yClvqxiENxiIJbFXK9nKTAsq3+1sZLAX3soy81/U268ipuW9AJmQ0OpckPqizsU3A3RGPryQbSCBPxyrWg==
결과가 에러가 발생했습니다.
Request failed with status code InternalServerError
결과값 바디는 아래와 같습니다.
eyJlbmMiOiJBMjU2R0NNIiwiaWF0IjoiMjAyNC0xMC0yMlQxOTowMzo0My4zNzczNTAwNTMrMDk6MDAiLCJub25jZSI6ImE5OGFiYzE2LWQ1MWItNGU3My04MmExLWE3YTQ2NjdmMmVhZCIsImFsZyI6ImRpciJ9..4lJSpTU0kxgOc2ZK.7O1GCsqwSud7fhxhWjza6bUD2SOrsZ2RTRhyuriNR5KVHZTGdB3qUW8C6o8K3mkIvy1Ot-MLmQosfbZeaQ7CvIsGdmwMCxcQvfJXn4YB8B27OAg-wy3Nohesfd1tbuTJfh-CXEVl8Uxj_CfpbuYJ7ZHzO1f9UJkWEZlLyMJklq0r515oH9dlqcNlNVkronaNedI2MZzzAAclz8zM3uyDuQai5oXrGmqBuMz7QXpxKShAMeir1dMbnL5NQvBGQ1S6SVwA_WBlkrshjLLV2BbHkS4.T1kbXR3GcJ74V16aPl0WFg
저희가 현재 닷넷을 사용하고 있는데 닷넷 예제는 따로 없을까요?
혹시 v1 을 지금 사용중이신가요?
지금 보낸 body를 보면 좀 이상합니다.
--ad985111-1cfa-4f64-9da2-933c1eca1387
Content-Type: text/plain; charset=utf-8
Content-Disposition: form-data; name=data
vLsmjG1bst1IFk2f.NjO8+bagJ6BCtW3fSrdAla11IcACYh5qnJCHLJ4S9og/R0F8Agdw8BixbNX/T4qctgvApIDPeAf9u7Lslmrq5yragPzzAYlKcUiu8fcAYaMRRO9lekD7yClvqxiENxiIJbFXK9nKTAsq3+1sZLAX3soy81/U268ipuW9AJmQ0OpckPqizsU3A3RGPryQbSCBPxyrWg==
--ad985111-1cfa-4f64-9da2-933c1eca1387--
이렇게 보내주셨어요 뭔가 header 에 들어가야 할것도 body로 보내주신것 같습니다.
별도로 닷넷 예제는 제공하지 않고 있습니다.
아마도 이 lib rary 를 사용하시면 되실것 같습니다.
jose-jwt 5.0.0
Javascript Object Signing and Encryption (JOSE), JSON Web Token (JWT), JSON Web Encryption (JWE) and JSON Web Key (JWK) Implementation for .NET
Ultimate Javascript Object Signing and Encryption (JOSE), JSON Web Token (JWT), JSON Web Encryption (JWE) and JSON Web Key (JWK) Implementation for .NET and .NET Core. Minimallistic. Zero-dependency. F...
JWT.IO - JSON Web Tokens Libraries
Find an overview of libraries that help you work with JSON Web Tokens in your favorite language.
닷넷에서 사용할 수 있는 라이브러리들입니다. 참고하세요
v1 쓰다가 v2로 변경하려고 합니다.
결과값 디코딩 하면
{"version":"2022-11-16","traceId":"2e1272fda31405242803277a9005b8c8","entityBody":null,"entityType":null,"error":{"code":"COMMON_ERROR","message":"This is temporary error. Please try again in a few minutes."}}
대충 이런값이 나오는 것 같습니다.
개인도 가능한거 맞을까요?
대충 보내는 json의 내용은
refSellerId: v2_I_54697884_004qb3
businessType: INDIVIDUAL
account {
bankCode = 088
accountNumber = ㅁㅁㅁㅁ
holderName = 이름
}
individual {
name = 이름
email = 메일
phone = 전화번호
}
이정도를 만들어서 보냅니다.
에러내용은 별도로 확인해볼게요
개인도 가능한것 맞습니다.
생성하신 request body 도 맞아요
네 감사합니다.
mid 는 plaincpc75 입니다.
네, 혹시 저희쪽 담당 매니저 또는 고객센터에 v2 신청을 하셨을까요?
v1 쓰시던 곳에서는 전환신청을 하시면 내부에서 열어주는 프로세스로 운영하고있어요
어제 확인해보니,
3번 입니다.
아하... 넵넵 공유 감사합니다.
방금 하나 더 보내봤는는데. 보낼때 내용 공유드립니다.
{[iat, 2024-10-23T17:17:27+09:00]}
{[nonce, f9cc9d6f-2554-45f5-a120-45b46ba5c5e2]}
body
"eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIiwiaWF0IjoiMjAyNC0xMC0yM1QxNzoxNzoyNyswOTowMCIsIm5vbmNlIjoiZjljYzlkNmYtMjU1NC00NWY1LWExMjAtNDViNDZiYTVjNWUyIn0..-8uh3d4zKZQ4vGsP.wd15-p46fOpOgbVLta6dv5dXjKUxwnPqIdx4214SlRvioktsxaphhckXquRUp28hJxmpi1uwk39j-4DvOC-9lmaSQmaSNyjyYki9o_pH36fHu1vybJrxHR_mwpGo3oA3cLk3BNfRClGhZV6I23Xg6IrFixfy_HjncgYvQ3qAjcSAwHvz7JzlYGH0RE6XigVtQ1mK8vDCdA15OLG4h4yb_b83Q2HFlCo9hxglofrwlQJxJQ8zDglG_wt3Vbu9j-AhsZ5FoK9McBr-OwkMYJD8KdjYrlYRC56pll5LefsxcJ5nbpSNA3fdUw.2R9Jw8KP1lJfZN9gSP9oiA"
output
"eyJlbmMiOiJBMjU2R0NNIiwiaWF0IjoiMjAyNC0xMC0yM1QxNzoxOTowNi40NTUwMDQ1NzErMDk6MDAiLCJub25jZSI6Ijc4MWJkYTY3LWQ4OGEtNGM2My1hYzEwLWUxODBlNzIwYzViZSIsImFsZyI6ImRpciJ9..z3P_QKsdNQAWFpFT.pvQeXlm-jLyDTaR9cml8ft39fzYiQe8X-nUk11lJ7QWMaTwwUxIAUC8Z-zK4OkaXfg0w12q8FNulZrZu9S9dRzrN_FZbB1jHdi_8MaxxgB0N3onHkROgV88wIoaRDcLpAVnyz6aUrYLnNVUEDDIXFPMvRUggOwaTlO9vIu_AAsZvR8XkD5S7u-RHfHstkEDxQxUr7ij8G4T2xOezj-ZS-kuWCpk3ehcVMxPSR-Sk6oueqbo42biHd5ESi981XdXDg9b5N_f6tX49u2f-Jyu12H8._zQG1ixuwEa4bWsjSZl2aA"
{"version":"2022-11-16","traceId":"ca3407c0a66d6f70a4f5793fae1f1185","entityBody":null,"entityType":null,"error":{"code":"COMMON_ERROR","message":"This is temporary error. Please try again in a few minutes."}}
셀러등록 API입니다.
v2/sellers
다른건 하고 혼동했네요;;
내부에서 Illegal base64 character 2d 에러가 발생하였습니다.
base64 인코딩은 어떤 방식으로 하셨나요?
2d는 -(하이픈)문자의 ASCII코드인데, Java의 기본 Base64 인코딩 스펙에서는 허용되지 않는 문자가 포함되었기 때문에 발생한 에러입니다.
우선 저희는 닷넷을 사용하고 있고.
jwe 내용을 말하는거라면, 위에 언급해주신 라입브러리 사용했고 확인해보니 utf8인것 같은데.
아스키로 되어잇는게 잇는지 한번 확인해보겟습니다.
그리고 잘 이해가 안가는데, 2d가 어디에 잇는걸까요?
body 에 보내는 내용을 말하시는걸까요?
/v1, /v2 호출을 같이 사용하시나요?
저희가 실제 운영중인데 v1을 사용하고 있습니다.
v2로 교체하길 권하시길래, 이번에 v2로 구현하려는데, 개발중에 셀러 등록부터 안되어서 제가 어딘가 잘못 구현한게 있나해서 여쭤봅니다.
api 호출시에 form-data로 보내고 있는데요. body에 암호문만 보내주셔야 합니다.
현재
--1801e846-8efa-4282-9027-9278c88bb88e Content-Type: text/plain; charset=utf-8 Content-Disposition: form-data; name=data
해당 데이터가 같이 포함되어 들어오고 있어요.
네에 확인해보겠습니다. 감사합니다.
해당 문서를 보시면 도움이 되실거에요.
data 부분에 JWE로 암호화된 객체만 보내주시면 됩니다.
https://docs.tosspayments.com/guides/v2/payouts#1-%EC%85%80%EB%9F%AC-%EB%93%B1%EB%A1%9D%ED%95%98%EA%B8%B0
지급대행하기 | 토스페이먼츠 개발자센터
지급대행은 오픈마켓을 운영하는 사업자 대신 토스페이먼츠가 셀러(입점 판매자)에게 대금 지급을 대행 해주는 서비스예요.
다른 데이터가 같이 포함되어 있어 저희쪽에서 디코딩시 에러 발생한 것입니다.
네 방금 body에 암호문만 해서 보냇는데,
동작한 것 같습니다.
감사합니다.