Search

웹훅이 무엇인가요?

Created
6/4/2021, 1:19:00 AM
Tags
연동

웹훅이란?

Webhook(웹훅)이란, 서버에서 어떠한 작업이 수행 되었을 때 해당 작업이 수행되었음을 HTTP POST로 알리는 개념을 말합니다.
Webhook을 구현한 웹 애플리케이션은, 특정 작업이 수행될 때 URL에 대해 POST방식으로 요청을 생성합니다. 이 때 가맹점에서 통지를 받고자 하는 자신의 URL을 지정할 수 있습니다.
가맹점의 입장에서는 지속적으로 데이터를 폴링(polling)하여 대부분의 경우 불필요한 정보를 받는 대신, webhook을 활용하여 중요한 이벤트가 발생했을 때에만 정보를 수신할 수 있습니다.
이를 활용하여 유저의 커스텀 기능이나 다른 애플리케이션과 통합하거나 기능을 확장할 수 있습니다.

아임포트 웹훅 호출 case

1.
결제가 승인되었을 때(모든 결제 수단) - (status : paid)
2.
가상계좌가 발급되었을 때 - (status : ready)
3.
가상계좌에 결제 금액이 입금되었을 때 - (status : paid)
4.
예약결제가 시도되었을 때 - (status : paid or failed)
5.
대시보드에서 환불되었을 때 - (status : cancelled)

웹훅으로 전달되는 결제정보는?

Webhook이 호출되어 생성되는 POST요청의 body에는 imp_uid, merchant_uid, status속성이 포함되어있습니다. (참고 : 용어별 정리)
콜백 url 에서 수신한 imp_uid와 merchant_uid를 통해 아임포트 REST API를 활용하여 결제 정보를 조회한 후, 해당 데이터를 가맹점 서버에 동기화할 수 있습니다.

웹훅 설정방법

-아임포트 관리자콘솔 > 시스템설정 > 웹훅(Notification) 설정 > 웹훅설정 저장

웹훅통지된 로그를 보고싶어요!

-아임포트 관리자콘솔 >결제승인내역 > imp_uid 열 > 웹훅로그 클릭
-웹훅 로그에서 '웹훅 재발송처리'도 가능
(아래는 예시 이미지이기 때문에 일부 정보는 마스킹 처리 되었습니다 )
<예시 이미지>
<예시 이미지>

웹훅 응답코드가 400번대, 500번대 인 경우

웹훅 로그상 아임포트→가맹점으로 정상적인 통지는 이루어졌으나,
응답 코드가 400번대 혹은 500번대로 오류가 발생된다면, 운영하시는 수신 서버(가맹점 서버)에서 요청된 파라메터 데이터가 올바르지 않다고 판단하여 오류로 응답한 것입니다.
오류로 응답하신 사유는 아임포트에서 파악하기 어려우며, 내부적으로 로그를 확인해주셔야 확인이 가능합니다

아임포트 IP허용하기

설정하신 웹훅 URL이 외부에서 접근가능하도록 아래 아임포트IP에 대한 허용설정부탁드립니다.
52.78.100.19
52.78.48.223

웹훅 재전송

기본적으로 1회 전송되며 가맹점 요청시 1분단위로 최대 5회까지 재 전송 가능합니다.

기타

웹훅URL주소 변경 시 변경시점 기준 과거거래 재 발송시 과거 웹훅 URL로 전송됩니다.