requestPayment를 '계좌이체'로 요청 시
아래와 같은 방식으로 요청 후
tossPayments.requestPayment('계좌이체', {
amount: 10000,
orderId: 'e57825bfdgs6',
orderName: '개인산책1',
customerName: '홍길동',
successUrl: 'http://localhost:8080/api/v1/payments/success',
failUrl: 'http://localhost:8080/api/v1/payments/fail',
payments/confirm api의 최종 결제 응답값으로 아래와 같은 포맷으로 전달받고 있습니다.
{
"version": "2022-07-27",
"paymentKey": "Kl56WYb7w4vZnjEJeQVxnma2YGKg6Z8PmOoBN0k12dzgRG9p",
"status": "DONE",
"orderId": "e57825bfdgs6",
"orderName": "개인산책1",
"requestedAt": "2023-03-09T11:40:43+09:00",
"approvedAt": "2023-03-09T11:44:39+09:00",
"useEscrow": false,
"cultureExpense": false,
"type": "NORMAL",
"currency": "KRW",
"totalAmount": 10000,
"balanceAmount": 10000,
"suppliedAmount": 9091,
"vat": 909,
"method": "계좌이체"
}
https://docs.tosspayments.com/reference#paymentdetaildto-transfer 에 설명에서는 계좌이체의 경우에도 위의 입력값 이외에도
transfer값이 전달될 것 같은데요, 해당 정보를 받아보려면 어떻게 해야 할까요?
transfer값이 v1.1로 되어 있는데, 제 상점 api 버전은 그 보다 상위인 2022-07-27로 보입니다.
그럼 답변 부탁드립니다.
코어 API | 토스페이먼츠 개발자센터
토스페이먼츠 API 엔드포인트(Endpoint)와 객체 정보, 파라미터, 요청 및 응답 예제를 살펴보세요.
13 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
참고로 테스트 환경입니다.
상점의 테스트 API 버전을 확인 부탁드립니다.
지금 보내주신 응답은 1.0 버전 응답입니다.
API키 항목에서 테스트탭의 API 버전은 2022-07-27로 되어있습니다.
그런데 저희 로그를 보면 응답이 다릅니다.
파싱을 잘못하신것으로 보이네요.
저희 가 보내드린 응답입니다.
{"mId":"tvivarepublica","lastTransactionKey":"A0C29D1596D39D669A05FF3016F5F1CA","paymentKey":"Kl56WYb7w4vZnjEJeQVxnma2YGKg6Z8PmOoBN0k12dzgRG9p","orderId":"e57825bfdgs6","orderName":"개인산책1","taxExemptionAmount":0,"status":"DONE","requestedAt":"2023-03-09T11:40:43+09:00","approvedAt":"2023-03-09T11:44:39+09:00","useEscrow":false,"cultureExpense":false,"card":null,"virtualAccount":null,"transfer":{"bank":"하나","bankCode":"81","settlementStatus":"INCOMPLETED"},"mobilePhone":null,"giftCertificate":null,"cashReceipt":null,"discount":null,"cancels":null,"secret":"ps_AQ92ymxN342znZXYbJB0rajRKXvd","type":"NORMAL","easyPay":null,"country":"KR","failure":null,"isPartialCancelable":true,"receipt":{"url":"https://pgweb.tosspayments.com:9091/MpFlowCtrl?eventDiv1=search&eventDiv2=getBankReceipt&trxid=tviva20230309114439AfWt5&SYSTEM=NEW"},"checkout":{"url":"https://api.tosspayments.com/v1/payments/Kl56WYb7w4vZnjEJeQVxnma2YGKg6Z8PmOoBN0k12dzgRG9p/checkout"},"transactionKey":"A0C29D1596D39D669A05FF3016F5F1CA","currency":"KRW","totalAmount":10000,"balanceAmount":10000,"suppliedAmount":9091,"vat":909,"taxFreeAmount":0,"method":"계좌이체","version":"2022-07-27"}
다시 확인해보고 현 쓰레드에 추가 문의드리겠습니다.
넵
아 제가 착각을 해서 잘 못 구현했습니다 ㅠㅠ 혼선을 드려 죄송합니다~
그런데 trasfer로 전달되는 값중 settlementStatus가 INCOMPLETED로 들어오고 있는데 테스트결제라 그런걸까요?
미정산이란는 의미가 어떤 의미인지 설명해 주실수 있을까요?
계좌에 돈이 없어서 결제가 안된 상태는 다른 error가 발생할거 같은데 (맞나요?)
미정산이라는 의미는 결제가 완료되었고 저희가 아직 가맹점으로 정산을 해드리지 않았다는 뜻이라서 결제실패는 아닙니다.
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
그러면 이후 미정산 상태에서 정산 상태로 변경될 때에도 웹훅등으로 알림을 받을수 있을까요?
정산 관련 정보는 정산대사를 통해 전달되므로 별도로 웹훅을 제공하지 않고 있습니다.
정산대사 API 를 확인해 보시면 될거에요.
코어 API | 토스페이먼츠 개발자센터
토스페이먼츠 API 엔드포인트(Endpoint)와 객체 정보, 파라미터, 요청 및 응답 예제를 살펴보세요.