🛬6. 결제완료 처리하기

결제가 완료되면 사용자에게 결제 실패 유무 메세지를 작성하는 예제입니다.

Deprecated

이 문서는 더 이상 관리되지 않습니다.

PortOne 개발자센터를 이용해주세요.

Iframe 방식으로 진행되는 대부분의 PC환경 결제인 경우 결제응답은 callback 함수로 받아볼 수 있으며 가맹점 서버에서 결제결과 처리가 최종적으로 완료되면 아래 예제처럼 결제 성공유무에 따른 분기를 통해 결과 메세지 처리를 진행 하실 수 있습니다.

IMP.request_pay(
  {/* 결제 요청 객체 */},
  async requestPayResponse => {
    const { success, error_msg } = requestPayResponse;
    if (!success) {
      alert(`결제에 실패하였습니다. 에러 내용: ${error_msg}`);
      return;
    }
    // 이전 단계에서 구현한 결제정보 사후 검증 API 호출
    const res = await axios({
      url: "/payments/complete",
      method: "post",
      headers: { "Content-Type": "application/json" }, 
      data: { imp_uid: "...", merchant_uid: "..." },
    });
    switch (res.status) {
      case: "vbankIssued":
        // 가상계좌 발급 시 로직
        break;
      case: "success":
        // 결제 성공 시 로직
        break;
    }
  }
);

새로운 페이지로 리디렉션되어 결제가 진행되는 대부분의 모바일환경에서의 결제는 m_redirect_url 파라미터로 설정하신 가맹점 EndPoint URL 에서 최종 결제완료 메세지 처리를 진행해 주시면 됩니다.

error_msg, error_code 정의

결제 실패 시 응답으로 내려가는 해당 파라미터는 PG사에서 내려준 오류코드와 메세지를 2차 가공없이 그대로 내려드리고 있습니다.

Last updated