PortOne REST API - V1
결제완료된 정보, 결제취소, 상태별 결제목록 조회 등의 기능을 하는 REST API를 제공합니다.
비인증 결제, 정기 자동결제 등 부가기능을 위한 REST API도 제공합니다.
2024년 9월 1일부로 포트원 V1 API에 대해 일부 보안 규격이 지원 종료됩니다.
자세한 사항은TLS 지원 범위를 참고해주세요.
자세한 사항은TLS 지원 범위를 참고해주세요.
V1 API hostname: api.iamport.kr
하위호환성
포트원이 제공하는 모든 Stable API에 대해 아래와 같은 하위호환성이 보장됩니다.
현재 사용 가능한 입력 형식은 앞으로도 사용할 수 있습니다.
- 입력 형식 내 필드 정의가 삭제되지 않습니다.
필수 입력 정보가 추가되거나, 선택 입력 정보가 필수로 변경되지 않습니다.
- 오로지 선택 입력 정보만 추가될 수 있습니다.
- 하위 필드의 형식(타입) 또한 위 규칙을 지키며 변경됩니다.
- enum 타입의 값이 삭제되지 않습니다.
출력 형식이 확장될 수 있지만, 축소되지 않습니다.
- 출력 형식 내 필드 정의가 삭제되지 않습니다.
사용 중인 필수 출력 정보가 선택사항으로 변경되거나 출력 시 누락되지 않습니다.
- 이미 존재하는 용례 내에서는 필수 출력 정보가 언제나 유지됩니다.
- 단, 기능이 추가 및 확장되는 등 새로운 용례로 사용될 때의 출력 정보에 한하여 선택사항으로 변경될 수 있습니다.
- 하위 필드의 형식(타입) 또한 위 규칙을 지키며 변경됩니다.
단, 새로운 필드 또는 enum 값, oneOf 케이스가 추가될 수 있습니다.
- 알지 못하는 필드 및 값이 주어지더라도 crash가 발생하지 않도록 유의하여 개발해주세요.
- 새로운 필드 및 값이 추가되는 경우 사전 공지를 통해 안내드립니다.
UNSTABLE
이 표기된 일부 API의 경우, 위 하위호환성 정책과 무관하게 변경 및 지원 종료될 수 있으니 이용에 유의하세요.
인증 관련 API
포트원 API를 호출할 때는 액세스 토큰을 Authorization
헤더에 넣어주어야 합니다.
액세스 토큰은 access_token 발급 API post/users/getToken를 호출해서 발급받을 수 있습니다.
액세스 토큰 발급 API를 호출하려면 API 키와 API 시크릿을 인자로 넣어주어야 합니다.
post/users/getToken
access_token 발급 API
API키 & API secret으로 access_token을 발급받습니다.
access_token의 만료기한은 발행 시간 부터 30분입니다. 만료된 토큰으로 API 요청을 하면 401 Unauthorized 응답을 받습니다.
access_token의 만료기한은 발행 시간 부터 30분입니다. 만료된 토큰으로 API 요청을 하면 401 Unauthorized 응답을 받습니다.
- 재발행 (만료 후 발급): 새로운 access token을 발급한다. (만료기한: 발행시간 후 30분)
- 재사용 (만료 전 발급): 기존 access token을 발급한다. (만료기한: 기존과 동일, 단 기존 만료시간 전 1분이내 요청 시 5분 연장 됨)
Request
Body
imp_key: string
REST API KEY
imp_secret: string
REST API SECRET
Response
200
정상적으로 access_token을 받아왔습니다
code?: integer
응답코드
(Optional)
message?: string
응답메세지
(Optional)
(Optional)
access_token: string
access_token
expired_at: integer
token 만료시각
now: integer
현재시각
401
imp_key, imp_secret 인증에 실패한 경우
try
Request
Request Sample
결제 관련 API
결제 건과 관련된 기능을 제공합니다.
목차
결제 상세내역 조회 API
get/payments/{imp_uid}/balance결제내역 단건조회 API
get/payments/{imp_uid}결제내역 복수조회 API
get/payments결제 단건조회(고유 고객사 주문번호 조회) API
get/payments/find/{merchant_uid}/{payment_status}결제 복수조회(고객사 주문번호 중복 포함) API
get/payments/findAll/{merchant_uid}/{payment_status}결제상태기준 복수조회 API
get/payments/status/{payment_status}결제취소 API
post/payments/cancel결제 금액 사전 등록 관련 API
사전 등록하는 결제금액과 관련된 기능을 제공합니다.
비인증 결제 관련 API
별도 결제창 호출없이 결제를 진행할 수 있는 비인증 결제 기능을 제공합니다.
정기 결제 관련 API
비인증 결제 중 정기 결제를 관리하는 기능을 제공합니다.
목차
결제예약 복수조회 API
get/subscribe/payments/schedule결제 예약 API
post/subscribe/payments/schedule결제 예약취소 API
post/subscribe/payments/unschedule결제예약 단건조회 API
get/subscribe/payments/schedule/{merchant_uid}결제요청 예약시각 수정 API
put/subscribe/payments/schedule/{merchant_uid}결제 실패 재예약 API
post/subscribe/payments/schedule/{merchant_uid}/reschedule결제 실패 재시도 API
post/subscribe/payments/schedule/{merchant_uid}/retry결제예약 복수조회(빌링키) API
get/subscribe/payments/schedule/customers/{customer_uid}빌링키 관련 API
빌링키 관리와 관련된 기능을 제공합니다.
목차
빌링키 정보 복수조회 API
get/subscribe/customers빌링키 정보 단건조회 API
get/subscribe/customers/{customer_uid}빌링키 발급 API
post/subscribe/customers/{customer_uid}빌링키 삭제 API
delete/subscribe/customers/{customer_uid}빌링키 결제 복수조회 API (빌링키 결제 내역 확인)
get/subscribe/customers/{customer_uid}/payments빌링키 결제예약 조회 API
get/subscribe/customers/{customer_uid}/schedules가상계좌 관련 API
PG사 관련 API
PG사 별 추가로 지원하는 기능을 제공합니다.
카카오 관련 API
카카오페이에서 지원하는 기능을 제공합니다.
KCP 퀵페이 관련 API
KCP 퀵페이에서 지원하는 기능을 제공합니다.
페이코 관련 API
페이코에서 지원하는 기능을 제공합니다.
페이먼트월 관련 API
페이먼트월에서 지원하는 기능을 제공합니다.
본인인증 관련 API
현금영수증 관련 API
포트원 결제건 및 외부 결제 건의 현금영수증 관리와 관련된 기능을 제공합니다.
에스크로 관련 API
에스크로 결제 건의 배송 정보와 관련된 기능을 제공합니다.
고객사 정보 관련 API
고객사 정보를 관리하는 기능을 제공합니다.
고객사의 하위 상점 관련 API
하위 상점 관련 API
하위 상점과 관련된 기능을 제공합니다.
기타 API
부가적인 기능을 제공합니다.
베네피아 포인트 관련 API
베네피아 포인트(복지 포인트)와 관련된 기능을 제공합니다.
결제기관 관련 API
금융결제원 기준 카드사, 은행의 표준 코드와 기관정보 조회 기능을 제공합니다.
편의점 결제 관련 API
편의점 결제를 위한 수납 번호(barcode)와 관련된 기능을 제공합니다.
타입 정의
API 요청/응답의 각 필드에서 사용되는 타입 정의들을 확인할 수 있습니다
AuthAnnotationAuthResponseBenepiaPointAnnotationBenepiaPointResponseCertificationAnnotationCertificationOTPAnnotationCertificationOTPResponseCertificationResponseCustomerAnnotationCustomerResponseEscrowLogisAnnotationEscrowLogisInfoAnnotationEscrowLogisProductsAnnotationEscrowLogisReceiverAnnotationEscrowLogisResponseEscrowLogisSenderAnnotationExternalReceiptAnnotationExternalReceiptResponseKcpQuickMemberAnnotationKcpQuickMemberResponseMultipleCustomersResponseMultiplePaymentsResponseMultiplePgSettingResponseNaverAddressNaverCashAmountAnnotationNaverCashAmountResponseNaverOrdererNaverProductOrderAnnotationNaverProductOrderArrayResponseNaverProductOrderResponseNaverReviewAnnotationNaverReviewsResponsePagedPaymentAnnotationPartnerReceiptResponsePartnerReceiptResultAnnotationPartnerReceiptsAnnotationPaycoStatusAnnotationPaycoStatusResponsePaymentAnnotationPaymentBalanceAnnotationPaymentBalanceHistoriesAnnotationPaymentBalanceResponsePaymentBalanceResponseAnnotationPaymentCancelAnnotationPaymentListResponsePaymentPrepareAnnotationPaymentPrepareResponsePaymentResponsePaymentwallDeliveryAnnotationPaymentwallDeliveryDetailAnnotationPgSettingAnnotationReceiptAnnotationReceiptResponseResponseAnnotationScheduleAnnotationScheduleResponseScheduleResultAnnotationSingleScheduleResponseStandardCodeAnnotationStandardCodeListResponseStandardCodeResponseSubscribePaymentExtraTierAnnotationTierResponseVbankHolderAnnotationVbankHolderResponse