import { PaymentError } from "./PaymentError.js"; import type { Unrecognized } from "./../../utils/unrecognized.js"; import { type PortOneClientInit } from "../../client.js"; import { BillingKeyClient } from "./billingKey/client.js"; import { CashReceiptClient } from "./cashReceipt/client.js"; import { AdditionalFeatureClient } from "./additionalFeature/client.js"; import { PaymentScheduleClient } from "./paymentSchedule/client.js"; import { PromotionClient } from "./promotion/client.js"; import type { AlreadyPaidError } from "../../generated/payment/AlreadyPaidError.js"; import type { ApplyEscrowLogisticsResponse } from "../../generated/payment/ApplyEscrowLogisticsResponse.js"; import type { BillingKeyAlreadyDeletedError } from "../../generated/common/BillingKeyAlreadyDeletedError.js"; import type { BillingKeyNotFoundError } from "../../generated/common/BillingKeyNotFoundError.js"; import type { CancelAmountExceedsCancellableAmountError } from "../../generated/payment/CancelAmountExceedsCancellableAmountError.js"; import type { CancelPaymentBodyRefundAccount } from "../../generated/payment/CancelPaymentBodyRefundAccount.js"; import type { CancelPaymentResponse } from "../../generated/payment/CancelPaymentResponse.js"; import type { CancelRequester } from "../../generated/payment/CancelRequester.js"; import type { CancelTaxAmountExceedsCancellableTaxAmountError } from "../../generated/payment/CancelTaxAmountExceedsCancellableTaxAmountError.js"; import type { CancelTaxFreeAmountExceedsCancellableTaxFreeAmountError } from "../../generated/payment/CancelTaxFreeAmountExceedsCancellableTaxFreeAmountError.js"; import type { CancellableAmountConsistencyBrokenError } from "../../generated/payment/CancellableAmountConsistencyBrokenError.js"; import type { CapturePaymentResponse } from "../../generated/payment/CapturePaymentResponse.js"; import type { CashReceiptInput } from "../../generated/common/CashReceiptInput.js"; import type { ChannelNotFoundError } from "../../generated/common/ChannelNotFoundError.js"; import type { CloseVirtualAccountResponse } from "../../generated/payment/CloseVirtualAccountResponse.js"; import type { ConfirmEscrowResponse } from "../../generated/payment/ConfirmEscrowResponse.js"; import type { ConfirmedPaymentSummary } from "../../generated/payment/ConfirmedPaymentSummary.js"; import type { Country } from "../../generated/common/Country.js"; import type { Currency } from "../../generated/common/Currency.js"; import type { CustomerInput } from "../../generated/common/CustomerInput.js"; import type { DiscountAmountExceedsTotalAmountError } from "../../generated/payment/DiscountAmountExceedsTotalAmountError.js"; import type { ForbiddenError } from "../../generated/common/ForbiddenError.js"; import type { GetAllPaymentEventsByCursorResponse } from "../../generated/payment/GetAllPaymentEventsByCursorResponse.js"; import type { GetAllPaymentsByCursorResponse } from "../../generated/payment/GetAllPaymentsByCursorResponse.js"; import type { GetPaymentTransactionsResponse } from "../../generated/payment/GetPaymentTransactionsResponse.js"; import type { GetPaymentsResponse } from "../../generated/payment/GetPaymentsResponse.js"; import type { InformationMismatchError } from "../../generated/common/InformationMismatchError.js"; import type { InstantPaymentMethodInput } from "../../generated/payment/InstantPaymentMethodInput.js"; import type { InvalidPaymentTokenError } from "../../generated/payment/InvalidPaymentTokenError.js"; import type { InvalidRequestError } from "../../generated/common/InvalidRequestError.js"; import type { Locale } from "../../generated/common/Locale.js"; import type { MaxTransactionCountReachedError } from "../../generated/common/MaxTransactionCountReachedError.js"; import type { MaxWebhookRetryCountReachedError } from "../../generated/payment/MaxWebhookRetryCountReachedError.js"; import type { ModifyEscrowLogisticsResponse } from "../../generated/payment/ModifyEscrowLogisticsResponse.js"; import type { NegativePromotionAdjustedCancelAmountError } from "../../generated/payment/NegativePromotionAdjustedCancelAmountError.js"; import type { PageInput } from "../../generated/common/PageInput.js"; import type { PayInstantlyResponse } from "../../generated/payment/PayInstantlyResponse.js"; import type { PayWithBillingKeyResponse } from "../../generated/payment/PayWithBillingKeyResponse.js"; import type { Payment } from "../../generated/payment/Payment.js"; import type { PaymentAlreadyCancelledError } from "../../generated/payment/PaymentAlreadyCancelledError.js"; import type { PaymentAmountInput } from "../../generated/common/PaymentAmountInput.js"; import type { PaymentCancellationNotFoundError } from "../../generated/payment/PaymentCancellationNotFoundError.js"; import type { PaymentCancellationNotPendingError } from "../../generated/payment/PaymentCancellationNotPendingError.js"; import type { PaymentEscrowReceiverInput } from "../../generated/payment/PaymentEscrowReceiverInput.js"; import type { PaymentEscrowSenderInput } from "../../generated/payment/PaymentEscrowSenderInput.js"; import type { PaymentFilterInput } from "../../generated/payment/PaymentFilterInput.js"; import type { PaymentLogistics } from "../../generated/payment/PaymentLogistics.js"; import type { PaymentNotFoundError } from "../../generated/payment/PaymentNotFoundError.js"; import type { PaymentNotPaidError } from "../../generated/payment/PaymentNotPaidError.js"; import type { PaymentNotWaitingForDepositError } from "../../generated/payment/PaymentNotWaitingForDepositError.js"; import type { PaymentProduct } from "../../generated/common/PaymentProduct.js"; import type { PaymentProductType } from "../../generated/common/PaymentProductType.js"; import type { PaymentScheduleAlreadyExistsError } from "../../generated/common/PaymentScheduleAlreadyExistsError.js"; import type { PgProviderError } from "../../generated/common/PgProviderError.js"; import type { PreRegisterPaymentResponse } from "../../generated/payment/PreRegisterPaymentResponse.js"; import type { PromotionDiscountRetainOption } from "../../generated/payment/PromotionDiscountRetainOption.js"; import type { PromotionDiscountRetainOptionShouldNotBeChangedError } from "../../generated/payment/PromotionDiscountRetainOptionShouldNotBeChangedError.js"; import type { PromotionPayMethodDoesNotMatchError } from "../../generated/payment/PromotionPayMethodDoesNotMatchError.js"; import type { RegisterStoreReceiptBodyItem } from "../../generated/payment/RegisterStoreReceiptBodyItem.js"; import type { RegisterStoreReceiptResponse } from "../../generated/payment/RegisterStoreReceiptResponse.js"; import type { ResendWebhookResponse } from "../../generated/payment/ResendWebhookResponse.js"; import type { SeparatedAddressInput } from "../../generated/common/SeparatedAddressInput.js"; import type { StopPaymentCancellationResponse } from "../../generated/payment/StopPaymentCancellationResponse.js"; import type { SumOfPartsExceedsCancelAmountError } from "../../generated/payment/SumOfPartsExceedsCancelAmountError.js"; import type { SumOfPartsExceedsTotalAmountError } from "../../generated/common/SumOfPartsExceedsTotalAmountError.js"; import type { UnauthorizedError } from "../../generated/common/UnauthorizedError.js"; import type { WebhookNotFoundError } from "../../generated/payment/WebhookNotFoundError.js"; /** * 포트원 API 클라이언트를 생성합니다. */ export declare function PaymentClient(init: PortOneClientInit): PaymentClient; export type PaymentClient = { /** * 결제 이벤트 대용량 다건 조회(커서 기반) * * 기간 내 모든 결제 이벤트를 커서 기반으로 조회합니다. 결제 이벤트의 생성일시를 기준으로 주어진 기간 내 존재하는 모든 결제 이벤트가 조회됩니다. * * @throws {@link GetAllPaymentEventsError} * * @unstable 실험적 API입니다. 하위호환성 정책과 무관하게 변경 및 지원 종료될 수 있으니 이용에 유의하세요. */ getAllPaymentEventsByCursor: (options?: { /** * 상점 아이디 * * Merchant 사용자만 사용가능하며, 지정되지 않은 경우 고객사 전체 결제 이벤트를 조회합니다. */ storeId?: string; /** * 결제 이벤트 생성시점 범위 조건의 시작 * * 값을 입력하지 않으면 end의 90일 전으로 설정됩니다. * (RFC 3339 date-time) */ from?: string; /** * 결제 이벤트 생성시점 범위 조건의 끝 * * 값을 입력하지 않으면 현재 시점으로 설정됩니다. * (RFC 3339 date-time) */ until?: string; /** * 커서 * * 결제 이벤트 리스트 중 어디서부터 읽어야 할지 가리키는 값입니다. 최초 요청일 경우 값을 입력하지 마시되, 두번째 요청 부터는 이전 요청 응답값의 cursor를 입력해주시면 됩니다. */ cursor?: string; /** * 페이지 크기 * * 미입력 시 기본값은 10 이며 최대 1000까지 허용 * (int32) */ size?: number; }) => Promise; /** * 결제 대용량 다건 조회(커서 기반) * * 기간 내 모든 결제 건을 커서 기반으로 조회합니다. 결제 건의 생성일시를 기준으로 주어진 기간 내 존재하는 모든 결제 건이 조회됩니다. * * @throws {@link GetAllPaymentsError} * * @unstable 실험적 API입니다. 하위호환성 정책과 무관하게 변경 및 지원 종료될 수 있으니 이용에 유의하세요. */ getAllPaymentsByCursor: (options?: { /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** * 결제 건 생성시점 범위 조건의 시작 * * 값을 입력하지 않으면 end의 90일 전으로 설정됩니다. * (RFC 3339 date-time) */ from?: string; /** * 결제 건 생성시점 범위 조건의 끝 * * 값을 입력하지 않으면 현재 시점으로 설정됩니다. * (RFC 3339 date-time) */ until?: string; /** * 커서 * * 결제 건 리스트 중 어디서부터 읽어야 할지 가리키는 값입니다. 최초 요청일 경우 값을 입력하지 마시되, 두번째 요청 부터는 이전 요청 응답값의 cursor를 입력해주시면 됩니다. */ cursor?: string; /** * 페이지 크기 * * 미입력 시 기본값은 10 이며 최대 1000까지 허용 * (int32) */ size?: number; }) => Promise; /** * 빌링키 결제 * * 빌링키로 결제를 진행합니다. * * @throws {@link PayWithBillingKeyError} */ payWithBillingKey: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** 빌링키 결제에 사용할 빌링키 */ billingKey: string; /** * 채널 키 * * 다수 채널에 대해 발급된 빌링키에 대해, 결제 채널을 특정하고 싶을 때 명시 */ channelKey?: string; /** 주문명 */ orderName: string; /** 고객 정보 */ customer?: CustomerInput; /** 사용자 지정 데이터 */ customData?: string; /** 결제 금액 세부 입력 정보 */ amount: PaymentAmountInput; /** 통화 */ currency: Currency; /** * 할부 개월 수 * (int32) */ installmentMonth?: number; /** 무이자 할부 이자를 고객사가 부담할지 여부 */ useFreeInterestFromMerchant?: boolean; /** 카드 포인트 사용 여부 */ useCardPoint?: boolean; /** * 현금영수증 정보 * * 나이스페이먼츠를 통해 네이버페이 포인트 빌링결제 시, 현금영수증 발급을 위해 입력 가능 (신청 필요) */ cashReceipt?: CashReceiptInput; /** 결제 국가 */ country?: Country; /** * 웹훅 주소 * * 결제 승인/실패 시 요청을 받을 웹훅 주소입니다. * 상점에 설정되어 있는 값보다 우선적으로 적용됩니다. * 빈 배열은 무시됩니다. */ noticeUrls?: string[]; /** * 상품 정보 * * 입력된 값이 없을 경우에는 빈 배열로 해석됩니다. */ products?: PaymentProduct[]; /** * 상품 개수 * (int32) */ productCount?: number; /** 상품 유형 */ productType?: PaymentProductType; /** 배송지 주소 */ shippingAddress?: SeparatedAddressInput; /** 해당 결제에 적용할 프로모션 아이디 */ promotionId?: string; /** * 결제 시 사용할 언어 * * 엑심베이의 경우 필수 입력입니다. */ locale?: Locale; /** PG사별 추가 파라미터 ("PG사별 연동 가이드" 참고) */ bypass?: object; }) => Promise; /** * 결제 취소 * * 결제 취소를 요청합니다. * * @throws {@link CancelPaymentError} */ cancelPayment: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** * 취소 총 금액 * * 값을 입력하지 않으면 전액 취소됩니다. * (int64) */ amount?: number; /** * 취소 금액 중 면세 금액 * * 값을 입력하지 않으면 전액 과세 취소됩니다. * (int64) */ taxFreeAmount?: number; /** * 취소 금액 중 부가세액 * * 값을 입력하지 않으면 자동 계산됩니다. * (int64) */ vatAmount?: number; /** 취소 사유 */ reason: string; /** * 취소 요청자 * * 고객에 의한 취소일 경우 Customer, 관리자에 의한 취소일 경우 Admin으로 입력합니다. */ requester?: CancelRequester; /** * 프로모션 할인율 유지 옵션 * * 프로모션이 적용된 결제를 부분 취소하는 경우, 최초 할인율을 유지할지 여부를 선택할 수 있습니다. * RETAIN 으로 설정 시, 최초 할인율을 유지할 수 있도록 취소 금액이 조정됩니다. * RELEASE 으로 설정 시, 취소 후 남은 금액이 속한 구간에 맞게 프로모션 할인이 새롭게 적용됩니다. * 값을 입력하지 않으면 RELEASE 로 취급합니다. */ promotionDiscountRetainOption?: PromotionDiscountRetainOption; /** * 결제 건의 취소 가능 잔액 * * 본 취소 요청 이전의 취소 가능 잔액으로써, 값을 입력하면 잔액이 일치하는 경우에만 취소가 진행됩니다. 값을 입력하지 않으면 별도의 검증 처리를 수행하지 않습니다. * (int64) */ currentCancellableAmount?: number; /** * 환불 계좌 * * 계좌 환불일 경우 입력합니다. 계좌 환불이 필요한 경우는 가상계좌 환불, 휴대폰 익월 환불 등이 있습니다. */ refundAccount?: CancelPaymentBodyRefundAccount; /** * 환불 이메일 * * Triple-A 결제 환불에 필요합니다. 해당 이메일로 환불 안내가 발송됩니다. */ refundEmail?: string; /** * 웹훅 생략 여부 * * 취소가 성공했을 때 웹훅을 전송하지 않으려면 true로 설정합니다. */ skipWebhook?: boolean; }) => Promise; /** * 결제 취소 요청 취소 * * 비동기적으로 수행되는 결제 취소 요청을 취소합니다. * Triple-A에서만 사용됩니다. * * @throws {@link StopPaymentCancellationError} */ stopPaymentCancellation: (options: { /** 결제 건 아이디 */ paymentId: string; /** 취소 요청 아이디 */ cancellationId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; }) => Promise; /** * 수동 매입 * * 수동 매입을 요청합니다. PG 및 포트원과의 사전 협의가 필요합니다. * * @throws {@link CapturePaymentError} */ capturePayment: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; }) => Promise; /** * 인증 결제 수동 승인 * * 수동 승인으로 설정된 인증 결제에 대해, 결제를 완료 처리합니다. * * @throws {@link ConfirmPaymentError} */ confirmPayment: (options: { /** 결제 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** * 결제 토큰 * * 인증 완료 시 발급된 토큰입니다. */ paymentToken: string; /** * 결제 시도 아이디 * * 검증용 파라미터로, 결제 시도 아이디와 일치하지 않을 경우 오류가 반환됩니다. */ txId?: string; /** * 통화 * * 검증용 파라미터로, 결제 건 화폐와 일치하지 않을 경우 오류가 반환됩니다. 값 전달을 권장합니다. */ currency?: Currency; /** * 결제 금액 * * 검증용 파라미터로, 결제 건 총 금액과 일치하지 않을 경우 오류가 반환됩니다. 값 전달을 권장합니다. * (int64) */ totalAmount?: number; /** * 면세 금액 * * 검증용 파라미터로, 결제 건 면세 금액과 일치하지 않을 경우 오류가 반환됩니다. * (int64) */ taxFreeAmount?: number; /** * 테스트 결제 여부 * * 검증용 파라미터로, 결제 건 테스트 여부와 일치하지 않을 경우 오류가 반환됩니다. 값 전달을 권장합니다. */ isTest?: boolean; }) => Promise; /** * 에스크로 구매 확정 * * 에스크로 결제를 구매 확정 처리합니다 * * @throws {@link ConfirmEscrowError} */ confirmEscrow: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** * 확인 주체가 상점인지 여부 * * 구매확정요청 주체가 고객사 관리자인지 구매자인지 구분하기 위한 필드입니다. * 네이버페이 전용 파라미터이며, 구분이 모호한 경우 고객사 관리자(true)로 입력합니다. */ fromStore?: boolean; }) => Promise; /** * 에스크로 배송 정보 등록 * * 에스크로 배송 정보를 등록합니다. * * @throws {@link ApplyEscrowLogisticsError} */ applyEscrowLogistics: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** 에스크로 발송자 정보 */ sender?: PaymentEscrowSenderInput; /** 에스크로 수취인 정보 */ receiver?: PaymentEscrowReceiverInput; /** 에스크로 물류 정보 */ logistics: PaymentLogistics; /** * 이메일 알림 전송 여부 * * 에스크로 구매 확정 시 이메일로 알림을 보낼지 여부입니다. */ sendEmail?: boolean; /** 상품 정보 */ products?: PaymentProduct[]; }) => Promise; /** * 에스크로 배송 정보 수정 * * 에스크로 배송 정보를 수정합니다. * * @throws {@link ModifyEscrowLogisticsError} */ modifyEscrowLogistics: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** 에스크로 발송자 정보 */ sender?: PaymentEscrowSenderInput; /** 에스크로 수취인 정보 */ receiver?: PaymentEscrowReceiverInput; /** 에스크로 물류 정보 */ logistics: PaymentLogistics; /** * 이메일 알림 전송 여부 * * 에스크로 구매 확정 시 이메일로 알림을 보낼지 여부입니다. */ sendEmail?: boolean; /** 상품 정보 */ products?: PaymentProduct[]; }) => Promise; /** * 수기 결제 * * 카드 비인증 결제 또는 가상 계좌 발급을 API로 요청합니다. * * @throws {@link PayInstantlyError} */ payInstantly: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** * 채널 키 * * 채널 키 또는 채널 그룹 ID 필수 */ channelKey?: string; /** * 채널 그룹 ID * * 채널 키 또는 채널 그룹 ID 필수 */ channelGroupId?: string; /** 결제수단 정보 */ method: InstantPaymentMethodInput; /** 주문명 */ orderName: string; /** * 문화비 지출 여부 * * 기본값은 false 입니다. */ isCulturalExpense?: boolean; /** * 에스크로 결제 여부 * * 기본값은 false 입니다. */ isEscrow?: boolean; /** 고객 정보 */ customer?: CustomerInput; /** 사용자 지정 데이터 */ customData?: string; /** 결제 금액 세부 입력 정보 */ amount: PaymentAmountInput; /** 통화 */ currency: Currency; /** 결제 국가 */ country?: Country; /** * 웹훅 주소 * * 결제 웹훅 주소입니다. * 상점에 설정되어 있는 값보다 우선적으로 적용됩니다. * 빈 배열은 무시됩니다. */ noticeUrls?: string[]; /** * 상품 정보 * * 입력된 값이 없을 경우에는 빈 배열로 해석됩니다. */ products?: PaymentProduct[]; /** * 상품 개수 * (int32) */ productCount?: number; /** 상품 유형 */ productType?: PaymentProductType; /** 배송지 주소 */ shippingAddress?: SeparatedAddressInput; /** 해당 결제에 적용할 프로모션 아이디 */ promotionId?: string; /** PG사별 추가 파라미터 ("PG사별 연동 가이드" 참고) */ bypass?: object; }) => Promise; /** * 결제 정보 사전 등록 * * 결제 정보를 사전 등록합니다. * * @throws {@link PreRegisterPaymentError} */ preRegisterPayment: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** * 결제 총 금액 * (int64) */ totalAmount?: number; /** * 결제 면세 금액 * (int64) */ taxFreeAmount?: number; /** 통화 단위 */ currency?: Currency; }) => Promise; /** * 영수증 내 하위 상점 거래 등록 * * 결제 내역 매출전표에 하위 상점의 거래를 등록합니다. * 지원되는 PG사: * KG이니시스(이용 전 콘솔 -> 결제연동 탭에서 INIApi Key 등록 필요) * * @throws {@link RegisterStoreReceiptError} */ registerStoreReceipt: (options: { /** 등록할 하위 상점 결제 건 아이디 */ paymentId: string; /** 하위 상점 거래 목록 */ items: RegisterStoreReceiptBodyItem[]; /** 상점 아이디 */ storeId?: string; }) => Promise; /** * 웹훅 재발송 * * 웹훅을 재발송합니다. * * @throws {@link ResendWebhookError} */ resendWebhook: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; /** * 웹훅 아이디 * * 입력하지 않으면 결제 건의 가장 최근 웹훅 아이디가 기본 적용됩니다 */ webhookId?: string; }) => Promise; /** * 결제 시도 내역 조회 * * 주어진 아이디에 대응되는 결제 건의 결제 시도 내역을 조회합니다. * * @throws {@link GetPaymentTransactionsError} * * @unstable 실험적 API입니다. 하위호환성 정책과 무관하게 변경 및 지원 종료될 수 있으니 이용에 유의하세요. */ getPaymentTransactions: (options: { /** 조회할 결제 아이디 */ paymentId: string; /** 상점 아이디 */ storeId?: string; }) => Promise; /** * 가상계좌 말소 * * 발급된 가상계좌를 말소합니다. * * @throws {@link CloseVirtualAccountError} */ closeVirtualAccount: (options: { /** 결제 건 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; }) => Promise; /** * 결제 단건 조회 * * 주어진 아이디에 대응되는 결제 건을 조회합니다. * * @throws {@link GetPaymentError} */ getPayment: (options: { /** 조회할 결제 아이디 */ paymentId: string; /** * 상점 아이디 * * 접근 권한이 있는 상점 아이디만 입력 가능하며, 미입력시 인증 정보의 상점 아이디를 사용합니다. */ storeId?: string; }) => Promise; /** * 결제 다건 조회(페이지 기반) * * 주어진 조건에 맞는 결제 건들을 페이지 기반으로 조회합니다. * * @throws {@link GetPaymentsError} */ getPayments: (options?: { /** * 요청할 페이지 정보 * * 미 입력 시 number: 0, size: 10 으로 기본값이 적용됩니다. */ page?: PageInput; /** * 조회할 결제 건 조건 필터 * * V1 결제 건의 경우 일부 필드에 대해 필터가 적용되지 않을 수 있습니다. */ filter?: PaymentFilterInput; }) => Promise; billingKey: BillingKeyClient; cashReceipt: CashReceiptClient; additionalFeature: AdditionalFeatureClient; paymentSchedule: PaymentScheduleClient; promotion: PromotionClient; }; export declare class GetAllPaymentEventsError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class GetAllPaymentsError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class PayWithBillingKeyError extends PaymentError { readonly data: AlreadyPaidError | BillingKeyAlreadyDeletedError | BillingKeyNotFoundError | ChannelNotFoundError | DiscountAmountExceedsTotalAmountError | ForbiddenError | InvalidRequestError | MaxTransactionCountReachedError | PaymentScheduleAlreadyExistsError | PgProviderError | PromotionPayMethodDoesNotMatchError | SumOfPartsExceedsTotalAmountError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: AlreadyPaidError | BillingKeyAlreadyDeletedError | BillingKeyNotFoundError | ChannelNotFoundError | DiscountAmountExceedsTotalAmountError | ForbiddenError | InvalidRequestError | MaxTransactionCountReachedError | PaymentScheduleAlreadyExistsError | PgProviderError | PromotionPayMethodDoesNotMatchError | SumOfPartsExceedsTotalAmountError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class CancelPaymentError extends PaymentError { readonly data: CancellableAmountConsistencyBrokenError | CancelAmountExceedsCancellableAmountError | CancelTaxAmountExceedsCancellableTaxAmountError | CancelTaxFreeAmountExceedsCancellableTaxFreeAmountError | ForbiddenError | InvalidRequestError | NegativePromotionAdjustedCancelAmountError | PaymentAlreadyCancelledError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | PromotionDiscountRetainOptionShouldNotBeChangedError | SumOfPartsExceedsCancelAmountError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: CancellableAmountConsistencyBrokenError | CancelAmountExceedsCancellableAmountError | CancelTaxAmountExceedsCancellableTaxAmountError | CancelTaxFreeAmountExceedsCancellableTaxFreeAmountError | ForbiddenError | InvalidRequestError | NegativePromotionAdjustedCancelAmountError | PaymentAlreadyCancelledError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | PromotionDiscountRetainOptionShouldNotBeChangedError | SumOfPartsExceedsCancelAmountError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class StopPaymentCancellationError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentCancellationNotFoundError | PaymentCancellationNotPendingError | PaymentNotFoundError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentCancellationNotFoundError | PaymentCancellationNotPendingError | PaymentNotFoundError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class CapturePaymentError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class ConfirmPaymentError extends PaymentError { readonly data: AlreadyPaidError | ForbiddenError | InformationMismatchError | InvalidPaymentTokenError | InvalidRequestError | PaymentNotFoundError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: AlreadyPaidError | ForbiddenError | InformationMismatchError | InvalidPaymentTokenError | InvalidRequestError | PaymentNotFoundError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class ConfirmEscrowError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class ApplyEscrowLogisticsError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class ModifyEscrowLogisticsError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class PayInstantlyError extends PaymentError { readonly data: AlreadyPaidError | ChannelNotFoundError | DiscountAmountExceedsTotalAmountError | ForbiddenError | InvalidRequestError | MaxTransactionCountReachedError | PaymentScheduleAlreadyExistsError | PgProviderError | PromotionPayMethodDoesNotMatchError | SumOfPartsExceedsTotalAmountError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: AlreadyPaidError | ChannelNotFoundError | DiscountAmountExceedsTotalAmountError | ForbiddenError | InvalidRequestError | MaxTransactionCountReachedError | PaymentScheduleAlreadyExistsError | PgProviderError | PromotionPayMethodDoesNotMatchError | SumOfPartsExceedsTotalAmountError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class PreRegisterPaymentError extends PaymentError { readonly data: AlreadyPaidError | ForbiddenError | InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: AlreadyPaidError | ForbiddenError | InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class RegisterStoreReceiptError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotPaidError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class ResendWebhookError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | MaxWebhookRetryCountReachedError | PaymentNotFoundError | UnauthorizedError | WebhookNotFoundError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | MaxWebhookRetryCountReachedError | PaymentNotFoundError | UnauthorizedError | WebhookNotFoundError | { readonly type: Unrecognized; }); } export declare class GetPaymentTransactionsError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class CloseVirtualAccountError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotWaitingForDepositError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | PaymentNotWaitingForDepositError | PgProviderError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class GetPaymentError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PaymentNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class GetPaymentsError extends PaymentError { readonly data: ForbiddenError | InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }); }