새 기능연동·실결제 준비 화면 개편자세히 보기
marupay

검증하고, 재시도하고, 다시 보낼 수 있는 웹훅.

모든 이벤트에는 서명이 붙고, 엔드포인트가 실패하면 정해진 일정으로 다시 보내며, 콘솔에서 재전송할 수 있습니다. 이벤트마다 바뀌지 않는 ID가 있어 한 번만 반영하면 됩니다.

이벤트

이벤트보내는 시점
payment.completed수취가 확인되고 이 결제에 귀속됐습니다. 주문을 반영하세요.
payment.expired수취 없이 결제 요청이 만료됐습니다. 주문을 풀어 주세요.
payment.review_opened수취를 정확히 한 요청에 귀속하지 못했습니다. 아직 반영할 것이 없습니다.

재시도 일정

엔드포인트가 10초 안에 2xx로 응답하면 전달 성공입니다. 아니면 다시 보냅니다.

시도직전 시도 후
1즉시
21분
35분
430분
52시간
66시간
724시간, 이후 실패로 표시하고 재전송할 수 있게 보관

모든 시도가 콘솔에 보입니다

전달마다 엔드포인트의 응답 코드와 응답 시간을 봅니다. 엔드포인트가 돌아오면 같은 이벤트 ID로 어떤 이벤트든 재전송합니다.

고객사 1 /웹훅

웹훅

엔드포인트https://api.example.com/webhooks/marupay 사용 중
이벤트시도응답응답 시간시각
payment.completedevt_5hRk2Pq9Wd#1200118ms14:01:33 재전송
payment.completedevt_5hRj8Ld2Tx#1200142ms13:58:50 재전송
payment.expiredevt_5hRh1Vn6Kc#120097ms13:52:15 재전송
payment.completedevt_5hRg4Bs0Ym#2200164ms13:45:04 재전송
payment.completedevt_5hRg4Bs0Ym#15033,012ms13:44:04
payment.completedevt_5hRf7Mc3Qa#1200131ms13:39:27 재전송
payment.completedevt_5hRd0Xw8Ne#1200126ms13:31:59 재전송

이벤트를 잘 처리하려면

먼저 검증

타임스탬프와 원본 본문에 대한 HMAC-SHA256 서명을 확인합니다.

빨리 응답

2xx로 먼저 답하고, 오래 걸리는 일은 뒤에서 처리합니다.

한 번만 반영

이벤트 ID를 저장하세요. 재시도와 재전송은 같은 ID를 씁니다.

순서에 기대지 않기

이벤트는 순서가 바뀌어 올 수 있습니다. 애매하면 결제 상태를 조회하세요.

고객사 엔드포인트로 시험해 보세요.

테스트 계정은 콘솔에서 스테이징 엔드포인트로 서명된 샘플 이벤트를 보낼 수 있습니다.