권민혁
권민혁2y ago

결제 실패 시 추가정보를 받을 수 있나요?

결제모듈 통해서 결제 실패 시에 카드번호, 결제 실패 값만 가져온다고 알고 있습니다. 혹시 추가적으로 다른 정보를 받을 수 있나요?
17 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
이실장
이실장2y ago
어떤 정보를 말씀하시는걸까요~? 결제정보를 의미하시는걸까요?
이실장
이실장2y ago
https://docs.tosspayments.com/guides/payment/integration ABORTED 웹훅으로 확인해보시면 좋을 것 같습니다.
결제창 연동하기 | 토스페이먼츠 개발자센터
카드, 계좌이체, 휴대폰, 상품권 결제를 연동하는 방법을 알아보세요.
Kimoon Lee
Kimoon Lee2y ago
실패하신 paymentkey 로 결제정보 조회를 하셔도 정보를 얻으실수 있어요..
권민혁
권민혁OP2y ago
결제결과가 성공이든 실패이든 받는 결과값으로 DB에서 내역을 매칭하는 방식의 서비스 중입니다. 매칭시키고자 하는 테이블에 카드번호가 없어서 다른 정보로 조회할 수 있는 방법에 대해 여쭤보고자 합니다.
Kimoon Lee
Kimoon Lee2y ago
실패시에는 일반적으로 카드 번호를 응답으로 드리지 않고 있습니다.
권민혁
권민혁OP2y ago
실패 시에 어떤 내용을 받을 수 있는지 여쭤봐도 될까요? 내용이라고 하면 주문번호나, 해당 일자같은 정보를 말씀드리는 겁니다.
유부장
유부장2y ago
실패 했을때 해당 결제건의 paymentKey 로 조회 하면, 결제 성공시 응답되는 파라미터 셋에, 결제와 관련된 정보는 null로, failure code 와 message 는 포함된 값을들 확인 할 수 있습니다. MID, paymentKey, orderId, orderName, amount 등 결제 요청때 전달된 정보는 대체적으로 확인할 수 있다고 보면 될것 같네요. 결제 실패 했을때 어떤 값을 어떻게 활용하시려고 하는지는 모르겠는데, 이정도 정보면 충분할까요? { "mId": "mid", "lastTransactionKey": "transactionkey", "paymentKey": "paymentkey", "orderId": "orderid", "orderName": "안사면 후회하는 상품", "taxExemptionAmount": 0, "status": "ABORTED", "requestedAt": "2023-03-03T13:02:54+09:00", "approvedAt": null, "useEscrow": null, "cultureExpense": false, "card": null, "virtualAccount": null, "transfer": null, "mobilePhone": null, "giftCertificate": null, "cashReceipt": null, "discount": null, "cancels": null, "secret": null, "type": "NORMAL", "easyPay": null, "country": "KR", "failure": { "code": "INVALID_CARD_NUMBER", "message": "카드번호를 다시 확인해주세요." }, "isPartialCancelable": true, "receipt": null, "checkout": { "url": "checkoururl.com" }, "currency": "KRW", "totalAmount": 10000, "balanceAmount": 10000, "suppliedAmount": 9000, "vat": 1000, "taxFreeAmount": 0, "method": null, "version": "2022-11-16" } 이런 느낌 입니다.
권민혁
권민혁OP2y ago
현재 결제는 되었는데 내부적으로 결제완료라고 처리되지 않는 문제를 해결 중입니다. 해당 문제를 결제실패라고 생각하고 상점관리자 > 전송실패내역을 조회했는데 검색된 내용이 없는 것을 확인했습니다. 그렇다는 건 결제 이후 내부적인 문제라고 봐야할까요?
유부장
유부장2y ago
그렇다는건, 결제가 성공했으나 결제결과를 처리하지 못한 케이스에 대해서 찾고 있으신 거군요 결제 결과는 승인 API 응답, 웹훅 두가지 방법으로 받으실 수 있는데, 승인 API 응답으로는 결제 처리는 하시지 않고, 웹훅으로만 결제 후 처리를 하고 계시는걸까요? 상점관리자에서 확인하는 순서를 이렇게 해보시는 것은 어떠실까요? * 가맹점 단에서 결제실패라고 생각되는 거래를 확인 (주문번호) * 상점관리자 좌측 결제조회에서, 결제수단을 클릭하고, 주문번호로 실제 토스페이먼츠에서는 결제가 되었는지 확인 * 결제 성공 / 실패 여부는 이렇게도 확인할 수 있습니다. 전송실패내역은 토스페이먼츠가 정보를 통보할때 실패여부를 확인하는 것이라, 여기는 "가상계좌통보"를 받지 못했거나, "결제결과 웹훅"을 받지 못했거나 등을 확인할 때 사용하셔야 합니다. 왜 통보를 받지 못했는가 사유 초도 확인이 필요하시면, 주문번호 남겨주시면 저희가 로그 확인해서, 왜 통보가 실패했는지 사유 알려드릴 수 있습니다
김차장
김차장2y ago
추측하시는대로 "결제 이후 내부적인 문제" 가 맞습니다. 결제결과를 정상 수신하셨고 이후 내부 로직에서 소스코드의 Exception 이나 Internal Server Error 등이 있었을것으로 생각됩니다. 관련해서 동료분중에 WAS로그를 봐주시는 분이 계시다면 문의해보시는게 좋습니다. 말씀하신 내용들로는 특정거래건이 아닌 모든 거래에 대해 결과처리가 안되고 있을 수도 있어서 빠른 확인을 해보시는게 좋겠습니다.
권민혁
권민혁OP2y ago
제대로 된 정보로 질문을 하는 게 아님에도 불구하고 답변해주셔서 너무 감사드립니다. 보내주신 답변과 개발자센터 정보를 확인했을 때 결제 성공/실패 시 받는 값들에 개인정보와 같은 내용은 카드정보만 있는 게 맞나요? 카드정보 이외의 개인정보(이름, id...) 를 추가적으로 얻을 수 있을까요?
유부장
유부장2y ago
PG 에서는 관련 정보를 카드사로부터 전달받지 않으므로, 이 정보는 전달드릴 수 있는 정보가 아닙니다. 카드번호 역시, 마스킹 되어서 응답 되게 됩니다. 정리하면 * 토스페이먼츠 쪽에서 성공 / 실패 여부를 확인하고 싶다면, 상점관리자 결제내역 확인 * 토스페이먼츠는 PG 로서, 카드사로부터 개인정보를 전달받고 있지 않음. 카드번호 등 일부 값은 마스킹 되어서 응답 됨.
권민혁
권민혁OP2y ago
추가적으로 여쭤보고 싶은 사례가 있는데, 고객이 접수하고 결제모듈을 통해서 결제를 했는데 결제 일시가 접수를 받은 시점으로부터 1일 뒤에 결제가 된 케이스가 있었습니다. 본 내용과 비슷한 케이스가 있었는지 여쭤보고 싶습니다.
김차장
김차장2y ago
승인요청을 진행한 카드결제의 결제일시가 하루차이나는 경우는 없습니다. 카드사 앱에서 디스플레이가 늦어지는 경우는 있지만 결제한 일자와 시각은 제대로 찍히게됩니다.
유부장
유부장2y ago
비슷한 문의가 있었던것으로 기억하는데, 전달주시는 주문번호에 날짜를 입혀 두셨었는데, 그 주문번호에 명시된 날짜가 결제날짜가 아닌 다른 날짜였던 케이스가 있었습니다. 당시 주문번호 생성로직 확인하시라는 답변 했었는데, 예상 하기로는 아래와 같습니다. * 주문번호생성이 결제 진행되는 때에 진행되는 것이 아니라, 별개로 다른 로직에 의해 생성되고, 결제는 다른로직으로 생성된 주문번호를 그냥 이용하고 있다 이런 케이스가 아니었는지도 확인 해보시면 좋을것 같네요.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.

Did you find this page helpful?