62037468
620374683w ago

브랜드페이 결제 이후 SuccessUrl 에서 confirm API로 결제승인 상황에서 질문

안녕하세요, 브랜드페이 도입 개발 중에 궁금한 점이 있어 문의드립니다. [배경] - 현재 브랜드페이 연동을 개발 중입니다. - 기존에는 토스페이먼츠의 일반 결제(카드, 간편결제 등)를 사용하고 있었습니다. [상황] 브랜드페이 개발 문서를 보니 결제 승인 API 경로가 /v1/brandpay/payments/confirm 으로 안내되어 있습니다. 그런데 기존에 사용하던 경로인 https://api.tosspayments.com/v1/payments/confirm 으로 브랜드페이 결제 건에 대해 결제 승인 요청을 보냈더니 200 OK 응답이 왔습니다. [질문] 브랜드페이 결제에 대해서도 기존 경로(/v1/payments/confirm)를 계속 사용해도 괜찮은지, 아니면 브랜드페이 전용 경로(/v1/brandpay/payments/confirm)를 반드시 사용해야 하는지 궁금합니다.
14 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
Kimoon Lee
Kimoon Lee3w ago
브랜드페이 전용경로를 사용해 주시기 바랍니다. /v1/payments/confirm 는 결제위젯에서만 사용해주셔야 합니다.
62037468
62037468OP3w ago
지금 결제위젯사용에서 API 사용으로 전환하려고 하는데요, 그러면 api 전용 경로와 브랜드페이 전용 경로 2개를 사용해야 하는 것인가요? + api 사용시와 결제위젯 사용시의 confirm api 경로는 /v1/payments/confirm로 같죠?
today.lastday
today.lastday3w ago
API 사용이라는 것은 어떤 것인지 추가 설명 부탁드려요.
62037468
62037468OP3w ago
네~ 토스페이먼츠는 결제 연동 방식이 두 가지로 나뉘어요. 하나는 위젯 방식이고, 다른 하나는 API 방식이에요. 위젯 방식은 토스에서 제공하는 결제 UI를 그대로 사용하는 거라 구현이 간단하고 빠르게 적용할 수 있어요. 반면에 API 방식은 저희가 직접 UI를 구성하고, 토스의 결제 API를 호출해서 처리하는 방식이라 커스터마이징이 자유로운 게 장점이에요. 지금 저희는 위젯을 사용하고 있다가 브랜드페이 도입으로 API 호출 및 UI를 직접 그려주는 방식으로 전황하고 있답니다.
today.lastday
today.lastday3w ago
브랜드페이를 API로 호출하여 직접 구현하신 다는 것이죠? 브랜드페이는 브랜드페이용 confirm API를 호출하시면 됩니다. (/v1/brandpay/payments/confirm)
62037468
62037468OP3w ago
혹시 하나 여쭤봐도 될까요? 브랜드페이 결제 승인 시, 브랜드페이용 시크릿키가 아니라 기존에 사용하던 토스페이먼츠 시크릿키로 /v1/brandpay/payments/confirm 와 /v1/payments/confirm API를 호출했는데도 결제가 정상적으로 컨펌되는 것처럼 보이더라고요. 이게 정상적인 동작이 맞는 건지 조금 혼란스러운데요, 혹시 관련해서 설명해주실 수 있을까요?
유부장
유부장3w ago
200 OK 라고 하셨는데, 그건 API url 이 유효하면 http status 이니까 응답이 무엇이었나요? json body 응답이 무엇이었나요?
today.lastday
today.lastday3w ago
주문번호 남겨주시겠어요?
62037468
62037468OP3w ago
응답이 { "approvedAt": "2025-04-21T12:58:49+09:00", "balanceAmount": 30000, "cancels": null, "card": { "acquireStatus": "READY", "acquirerCode": "61", "amount": 30000, "approveNo": "00000000", "cardType": "\uc2e0\uc6a9", "installmentPlanMonths": 0, "interestPayer": null, "isInterestFree": false, "issuerCode": "61", "number": "48902300**297*", "ownerType": "\uac1c\uc778", "useCardPoint": false }, "cashReceipt": null, "cashReceipts": null, "checkout": { "url": "https://api.tosspayments.com/v1/payments/tcp_c202504211258473xZ82/checkout" }, "country": "KR", "cultureExpense": false, "currency": "KRW", "discount": null, "easyPay": null, "failure": null, "giftCertificate": null, "isPartialCancelable": true, "lastTransactionKey": "txrd_a01jsb7zajyccy00hhr64sar2nv", "mId": "tcp_curiou99ca", "metadata": null, "method": "\uce74\ub4dc", "mobilePhone": null, "orderId": "fc24f997-d975-4d23-adf6-d950f5c93706", "orderName": "Test Order", "paymentKey": "tcp_c202504211258473xZ82", "receipt": { "url": "https://dashboard.tosspayments.com/receipt/redirection?transactionId=tcp_c202504211258473xZ82&ref=PX" }, "requestedAt": "2025-04-21T12:58:47+09:00", "secret": "ps_6BYq7GWPVvvdvJ1NeRGXVNE5vbo1", "status": "DONE", "suppliedAmount": 27273, "taxExemptionAmount": 0, "taxFreeAmount": 0, "totalAmount": 30000, "transfer": null, "type": "BRANDPAY", "useEscrow": false, "vat": 2727, "version": "2022-11-16", "virtualAccount": null } 라고 나옵니다. [상황] - 브랜드페이로 결제 - url = "https://api.tosspayments.com/v1/payments/confirm" 로 결제승인
Kimoon Lee
Kimoon Lee3w ago
기존에 사용하던 secretkey 가 위젯키면 가능합니다. 네 결제자체는 되실텐데 권장하지 않습니다. /v1/brandpay/payments/confirm 이걸 써주세요.
62037468
62037468OP3w ago
아 그래요? 권장하지 않는 이유가 있나요? 브랜드페이 업데이트시 동일한 결과를 보장할 수 없어서라고 보면 될까요?
Kimoon Lee
Kimoon Lee3w ago
네 맞습니다. 추후에라도 브랜드페이용 특정 기능이 추가된다거나 할때 브랜드페이 전용 endpoint 에 추가 될겁니다. 그러면 backward compatibility 이슈가 발생할수 있습니다.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.

Did you find this page helpful?