최종 결제승인 직전 가맹점에서 승인에 대한 확정을 한번 더 진행하실 수 있습니다.
1. 지원가능한 PG사 알아보기
지원가능한 PG사 확인하기 (화살표 클릭!)
지원 불가한 PG사 확인하기 (화살표 클릭!)
인스타그램 웹뷰는 구조상 confirm process 적용이 불가하기 때문에 가맹점에서 별도 분기 처리 로직을 추가해 주셔야 합니다.
2. 연동 방식
포트원 서버에서 PG사로 최종 요청 보내기 직전 포트원→ 가맹점으로 HTTP 요청을 보내게 됩니다. (POST) 요청을 받을 URL은 매 결제건마다 confirm_url 이라는 파라메터로 지정하실 수 있으며, 지정하지 않는 경우 기존처럼 그냥 결제 진행됩니다.
POST 요청에 대해서는 5초 내로 응답을 해주셔야 하며(Timeout) 결제진행은 200응답, 거절은 그 외의 응답을 해주시면 됩니다. (confirm_url이 요청된 거래에 대해 Timeout 이 발생하면 500응답을 받은 것으로 간주하고 결제는 중단됩니다)
a.
IMP.request_pay(param) 호출시 confirm_url 파라메터 지정
포트원에서 결제진행여부를 확인할 URL을 입력해주세요!
결제승인 직전 해당 URL로 아래와 같은 POST요청을 보내게 됩니다. (Content-Type은 application/json 으로 보내게 됩니다)
•
imp_uid
•
merchant_uid
•
amount
예시)
IMP.request_pay({
//다른파라메터 생략
confirm_url : '
[https://test.com/payments/confirm](https://test.com/payments/confirm)
'
})
JavaScript
복사
b. 포트원에서 confirm URL로 POST요청을 보냈을 때 결제를 진행하려면 HTTP Status 200 응답을, 그렇지 않으면 그 외의 응답을 보내시면 됩니다 (ex. 500)
응답본문 Json 에 reason 이라는 필드가 있으면 해당 정보를 결제실패사유로 기록하고 고객에게도 출력하게 됩니다.
예시)
{
"reason" : "재고수량부족"
}
JavaScript
복사
이용을 원하시면 포트원 기술지원팀(support@portone.io)로 포트원 계정과 함께 confirm process 설정요청을 주시기 바랍니다.