🖼️redirect 결제창 결과처리

새로운 창으로 리디렉션되어 결제가 진행되는 환경에서의 결과 처리 방법을 안내합니다.

circle-exclamation

아래 예제 코드는 결제창 형태가 새로운 페이지로 리디렉션되어 결제가 진행되는 대부분의 모바일 환경에서의 결제요청애 대한 응답을 처리하는 부분입니다.

🪧리디렉션이란?chevron-right
IMP.request_pay({
  /* 결제 요청 객체를 채워주세요. */
  m_redirect_url: "{리디렉션 될 URL}"
}, /* callback */); // 리디렉션 방식의 경우 callback은 실행되지 않습니다.

위와 같이 request_pay 함수 파라미터로 m_redirect_url 을 설정하면 결제 완료 이후 해당 URL 주소로 결제 결과를 쿼리스트링(Query String) 형태로 전송해 드립니다.

circle-info

Query String 이란?

URL 뒤에 데이터를 전달하는 가장 단순한 방법으로 주로 GET 요청과 함께 데이터를 전송할 때 사용합니다.

결제 결과를 수신받을 endpoint url 주소를 m_redirect_url 에 설정하시면 결제결과 수신이 가능합니다.

아래 파라미터를 설정하신 URL 을 통해 Query String 형태로 수신받을수 있습니다.

아래는 Query String 으로 리디렉션되는 URL 예제입니다.

curl https://myservice.com/payments/complete?imp_uid=결제건을_특정하는_포트원_번호&merchant_uid=가맹점_고유_주문번호&imp_success=true
파라미터명
설명
비고

imp_uid

포트원 결제 고유번호

공통

merchant_uid

가맹점 주문번호

공통

imp_success

결제 성공 여부

공통

error_code

오류 코드

실패 시

error_msg

오류 메세지

실패 시

결제 완료의 의미

결제완료는 아래의 모든 경우를 포함합니다.

  1. 결제 성공(결제 상태: paid, imp_success: true)

  2. 결제 실패(결제 상태: failed, imp_success: false)

  3. PG 모듈 설정이 올바르지 않아, 결제 창이 열리지 않음

  4. 사용자가 임의로 X 버튼이나 취소 버튼을 눌러 결제를 종료

  5. 카드 정보 불일치, 한도 초과, 잔액 부족 등의 사유로 결제가 중단

  6. 가상계좌 **발급 완료(**결제 상태: ready, imp_success: true)

triangle-exclamation
triangle-exclamation
circle-exclamation

Last updated

Was this helpful?