UNPKG

@portone/server-sdk

Version:

PortOne JavaScript SDK for server-side usage

367 lines (366 loc) 23.4 kB
import { TransferError } from "./TransferError.js"; import type { Unrecognized } from "./../../../utils/unrecognized.js"; import { type PortOneClientInit } from "../../../client.js"; import type { CreateManualTransferResponse } from "../../../generated/platform/transfer/CreateManualTransferResponse.js"; import type { CreateOrderCancelTransferResponse } from "../../../generated/platform/transfer/CreateOrderCancelTransferResponse.js"; import type { CreateOrderTransferResponse } from "../../../generated/platform/transfer/CreateOrderTransferResponse.js"; import type { CreatePlatformOrderCancelTransferBodyDiscount } from "../../../generated/platform/transfer/CreatePlatformOrderCancelTransferBodyDiscount.js"; import type { CreatePlatformOrderCancelTransferBodyExternalCancellationDetail } from "../../../generated/platform/transfer/CreatePlatformOrderCancelTransferBodyExternalCancellationDetail.js"; import type { CreatePlatformOrderCancelTransferBodyOrderDetail } from "../../../generated/platform/transfer/CreatePlatformOrderCancelTransferBodyOrderDetail.js"; import type { CreatePlatformOrderTransferBodyAdditionalFee } from "../../../generated/platform/transfer/CreatePlatformOrderTransferBodyAdditionalFee.js"; import type { CreatePlatformOrderTransferBodyDiscount } from "../../../generated/platform/transfer/CreatePlatformOrderTransferBodyDiscount.js"; import type { CreatePlatformOrderTransferBodyExternalPaymentDetail } from "../../../generated/platform/transfer/CreatePlatformOrderTransferBodyExternalPaymentDetail.js"; import type { CreatePlatformOrderTransferBodyOrderDetail } from "../../../generated/platform/transfer/CreatePlatformOrderTransferBodyOrderDetail.js"; import type { DeletePlatformTransferResponse } from "../../../generated/platform/transfer/DeletePlatformTransferResponse.js"; import type { ForbiddenError } from "../../../generated/common/ForbiddenError.js"; import type { GetPlatformTransferSummariesResponse } from "../../../generated/platform/transfer/GetPlatformTransferSummariesResponse.js"; import type { InvalidRequestError } from "../../../generated/common/InvalidRequestError.js"; import type { PageInput } from "../../../generated/common/PageInput.js"; import type { PlatformAdditionalFeePoliciesNotFoundError } from "../../../generated/platform/transfer/PlatformAdditionalFeePoliciesNotFoundError.js"; import type { PlatformAdditionalFixedAmountFeeCurrencyAndSettlementCurrencyMismatchedError } from "../../../generated/platform/transfer/PlatformAdditionalFixedAmountFeeCurrencyAndSettlementCurrencyMismatchedError.js"; import type { PlatformCancelOrderTransfersExistsError } from "../../../generated/platform/transfer/PlatformCancelOrderTransfersExistsError.js"; import type { PlatformCancellableAmountExceededError } from "../../../generated/platform/transfer/PlatformCancellableAmountExceededError.js"; import type { PlatformCancellableDiscountAmountExceededError } from "../../../generated/platform/transfer/PlatformCancellableDiscountAmountExceededError.js"; import type { PlatformCancellableDiscountTaxFreeAmountExceededError } from "../../../generated/platform/transfer/PlatformCancellableDiscountTaxFreeAmountExceededError.js"; import type { PlatformCancellableProductQuantityExceededError } from "../../../generated/platform/transfer/PlatformCancellableProductQuantityExceededError.js"; import type { PlatformCancellationAndPaymentTypeMismatchedError } from "../../../generated/platform/transfer/PlatformCancellationAndPaymentTypeMismatchedError.js"; import type { PlatformCancellationNotFoundError } from "../../../generated/platform/transfer/PlatformCancellationNotFoundError.js"; import type { PlatformCannotSpecifyTransferError } from "../../../generated/platform/transfer/PlatformCannotSpecifyTransferError.js"; import type { PlatformContractNotFoundError } from "../../../generated/platform/PlatformContractNotFoundError.js"; import type { PlatformContractPlatformFixedAmountFeeCurrencyAndSettlementCurrencyMismatchedError } from "../../../generated/platform/transfer/PlatformContractPlatformFixedAmountFeeCurrencyAndSettlementCurrencyMismatchedError.js"; import type { PlatformCurrencyNotSupportedError } from "../../../generated/platform/PlatformCurrencyNotSupportedError.js"; import type { PlatformDiscountSharePoliciesNotFoundError } from "../../../generated/platform/transfer/PlatformDiscountSharePoliciesNotFoundError.js"; import type { PlatformDiscountSharePolicyIdDuplicatedError } from "../../../generated/platform/transfer/PlatformDiscountSharePolicyIdDuplicatedError.js"; import type { PlatformNotEnabledError } from "../../../generated/platform/PlatformNotEnabledError.js"; import type { PlatformOrderDetailMismatchedError } from "../../../generated/platform/transfer/PlatformOrderDetailMismatchedError.js"; import type { PlatformOrderTransferAlreadyCancelledError } from "../../../generated/platform/transfer/PlatformOrderTransferAlreadyCancelledError.js"; import type { PlatformPartnerNotFoundError } from "../../../generated/platform/PlatformPartnerNotFoundError.js"; import type { PlatformPaymentNotFoundError } from "../../../generated/platform/transfer/PlatformPaymentNotFoundError.js"; import type { PlatformProductIdDuplicatedError } from "../../../generated/platform/transfer/PlatformProductIdDuplicatedError.js"; import type { PlatformProductIdNotFoundError } from "../../../generated/platform/transfer/PlatformProductIdNotFoundError.js"; import type { PlatformSettlementAmountExceededError } from "../../../generated/platform/transfer/PlatformSettlementAmountExceededError.js"; import type { PlatformSettlementCancelAmountExceededPortOneCancelError } from "../../../generated/platform/transfer/PlatformSettlementCancelAmountExceededPortOneCancelError.js"; import type { PlatformSettlementDateEarlierThanSettlementStartDateError } from "../../../generated/platform/transfer/PlatformSettlementDateEarlierThanSettlementStartDateError.js"; import type { PlatformSettlementParameterNotFoundError } from "../../../generated/platform/transfer/PlatformSettlementParameterNotFoundError.js"; import type { PlatformSettlementPaymentAmountExceededPortOnePaymentError } from "../../../generated/platform/transfer/PlatformSettlementPaymentAmountExceededPortOnePaymentError.js"; import type { PlatformSettlementSupplyWithVatAmountExceededPortOnePaymentError } from "../../../generated/platform/transfer/PlatformSettlementSupplyWithVatAmountExceededPortOnePaymentError.js"; import type { PlatformSettlementTaxFreeAmountExceededPortOnePaymentError } from "../../../generated/platform/transfer/PlatformSettlementTaxFreeAmountExceededPortOnePaymentError.js"; import type { PlatformTransfer } from "../../../generated/platform/transfer/PlatformTransfer.js"; import type { PlatformTransferAlreadyExistsError } from "../../../generated/platform/transfer/PlatformTransferAlreadyExistsError.js"; import type { PlatformTransferDiscountSharePolicyNotFoundError } from "../../../generated/platform/transfer/PlatformTransferDiscountSharePolicyNotFoundError.js"; import type { PlatformTransferFilterInput } from "../../../generated/platform/transfer/PlatformTransferFilterInput.js"; import type { PlatformTransferNonDeletableStatusError } from "../../../generated/platform/transfer/PlatformTransferNonDeletableStatusError.js"; import type { PlatformTransferNotFoundError } from "../../../generated/platform/transfer/PlatformTransferNotFoundError.js"; import type { PlatformUserDefinedPropertyKeyValue } from "../../../generated/platform/transfer/PlatformUserDefinedPropertyKeyValue.js"; import type { PlatformUserDefinedPropertyNotFoundError } from "../../../generated/platform/PlatformUserDefinedPropertyNotFoundError.js"; import type { TransferParameters } from "../../../generated/platform/transfer/TransferParameters.js"; import type { UnauthorizedError } from "../../../generated/common/UnauthorizedError.js"; /** * 포트원 API 클라이언트를 생성합니다. */ export declare function TransferClient(init: PortOneClientInit): TransferClient; export type TransferClient = { /** * 정산 상세 내역 다운로드 * * 정산 상세 내역을 csv 파일로 다운로드 합니다. * * @throws {@link DownloadPlatformTransferSheetError} */ downloadPlatformTransferSheet: (options?: { /** * 컬럼 키 목록 * * - TRANSFER_MEMO: 메모 * - TRANSFER_TYPE: 정산 유형 * - TRANSFER_STATUS: 상태 * - TRANSFER_ID: 정산 아이디 * - TRANSFER_SETTLEMENT_DATE: 정산일 * - TRANSFER_SETTLEMENT_AMOUNT: 정산 금액 * - TRANSFER_SETTLEMENT_TAX_FREE_AMOUNT: 정산 면세액 * - TRANSFER_SETTLEMENT_CURRENCY: 정산 통화 * - TRANSFER_SETTLEMENT_START_DATE: 정산 시작일 * - TRANSFER_ORDER_NAME: 주문명 * - TRANSFER_ORDER_AMOUNT: 주문 금액 * - TRANSFER_ORDER_TAX_FREE_AMOUNT: 주문 면세액 * - TRANSFER_PAYMENT_ID: 주문 번호 * - TRANSFER_PAYMENT_METHOD: 결제 수단 * - TRANSFER_PAYMENT_AMOUNT: 결제 금액 * - TRANSFER_PAYMENT_SUPPLY_AMOUNT: 결제 공급가액 * - TRANSFER_PAYMENT_VAT_AMOUNT: 결제 부가세액 * - TRANSFER_PAYMENT_TAX_FREE_AMOUNT: 결제 면세액 * - TRANSFER_PAYMENT_VAT_BURDEN_AMOUNT: 결제 부가세 부담금 * - TRANSFER_PLATFORM_FEE: 중개수수료 * - TRANSFER_PLATFORM_FEE_VAT: 중개수수료 부가세 부담금 * - TRANSFER_DISCOUNT_AMOUNT: 할인 금액 * - TRANSFER_DISCOUNT_TAX_FREE_AMOUNT: 할인 면세액 * - TRANSFER_DISCOUNT_SHARE_AMOUNT: 할인 분담금 * - TRANSFER_DISCOUNT_SHARE_TAX_FREE_AMOUNT: 할인 면세 분담금 * - TRANSFER_ADDITIONAL_FEE: 추가수수료 * - TRANSFER_ADDITIONAL_FEE_VAT: 추가수수료 부가세 부담금 * - TRANSFER_{UserDefinedProperty.Key} * - FORMULA_{UserDefinedFormula.Key} * - PARTNER_* : 파트너 컬럼 키 사용 가능(w/o PARTNER_STATUS_UPDATED_AT) */ filter?: PlatformTransferFilterInput; fields?: string[]; }) => Promise<string>; /** * 정산건 다건 조회 * * 성공 응답으로 조회된 정산건 요약 리스트와 페이지 정보가 반환됩니다. * * @throws {@link GetPlatformTransferSummariesError} */ getPlatformTransferSummaries: (options?: { /** 요청할 페이지 정보 */ page?: PageInput; /** 조회할 정산건 조건 필터 */ filter?: PlatformTransferFilterInput; }) => Promise<GetPlatformTransferSummariesResponse>; /** * 수기 정산건 생성 * * 성공 응답으로 생성된 수기 정산건 객체가 반환됩니다. * * @throws {@link CreatePlatformManualTransferError} */ createPlatformManualTransfer: (options: { /** 파트너 아이디 */ partnerId: string; /** 메모 */ memo?: string; /** * 정산 금액 * (int64) */ settlementAmount: number; /** * 정산 면세 금액 * (int64) */ settlementTaxFreeAmount?: number; /** * 정산 일 * * 날짜를 나타내는 문자열로, `yyyy-MM-dd` 형식을 따릅니다. * (yyyy-MM-dd) */ settlementDate: string; /** * 테스트 모드 여부 * * 기본값은 false 입니다. */ isForTest?: boolean; /** 사용자 정의 속성 */ userDefinedProperties?: PlatformUserDefinedPropertyKeyValue[]; }) => Promise<CreateManualTransferResponse>; /** * 주문 정산건 생성 * * 성공 응답으로 생성된 주문 정산건 객체가 반환됩니다. * * @throws {@link CreatePlatformOrderTransferError} */ createPlatformOrderTransfer: (options: { /** 파트너 아이디 */ partnerId: string; /** * 계약 아이디 * * 기본값은 파트너의 기본 계약 아이디 입니다. */ contractId?: string; /** 메모 */ memo?: string; /** 결제 아이디 */ paymentId: string; /** 주문 정보 */ orderDetail: CreatePlatformOrderTransferBodyOrderDetail; /** * 주문 면세 금액 * * 주문 항목과 면세 금액을 같이 전달하시면 최종 면세 금액은 주문 항목의 면세 금액이 아닌 전달해주신 면세 금액으로 적용됩니다. * (int64) */ taxFreeAmount?: number; /** * 정산 시작일 * * 기본값은 결제 일시 입니다. * (yyyy-MM-dd) */ settlementStartDate?: string; /** * 정산일 * * 날짜를 나타내는 문자열로, `yyyy-MM-dd` 형식을 따릅니다. * (yyyy-MM-dd) */ settlementDate?: string; /** 할인 정보 */ discounts: CreatePlatformOrderTransferBodyDiscount[]; /** 추가 수수료 정보 */ additionalFees: CreatePlatformOrderTransferBodyAdditionalFee[]; /** * 외부 결제 상세 정보 * * 해당 정보가 존재하는 경우 외부 결제 정산건 으로 등록되고, 존재하지않은 경우 포트원 결제 정산건으로 등록됩니다. */ externalPaymentDetail?: CreatePlatformOrderTransferBodyExternalPaymentDetail; /** * 테스트 모드 여부 * * 기본값은 false 입니다. */ isForTest?: boolean; /** 정산 파라미터 (실험기능) */ parameters?: TransferParameters; /** 사용자 정의 속성 */ userDefinedProperties?: PlatformUserDefinedPropertyKeyValue[]; }) => Promise<CreateOrderTransferResponse>; /** * 주문 취소 정산건 생성 * * 성공 응답으로 생성된 주문 취소 정산건 객체가 반환됩니다. * * @throws {@link CreatePlatformOrderCancelTransferError} */ createPlatformOrderCancelTransfer: (options: { /** 파트너 아이디 */ partnerId?: string; /** 결제 아이디 */ paymentId?: string; /** 정산건 아이디 */ transferId?: string; /** 취소 내역 아이디 */ cancellationId: string; /** 메모 */ memo?: string; /** 주문 취소 정보 */ orderDetail?: CreatePlatformOrderCancelTransferBodyOrderDetail; /** * 주문 취소 면세 금액 * * 주문 취소 항목과 취소 면세 금액을 같이 전달하시면 최종 취소 면세 금액은 주문 취소 항목의 면세 금액이 아닌 전달해주신 취소 면세 금액으로 적용됩니다. * (int64) */ taxFreeAmount?: number; /** 할인 정보 */ discounts: CreatePlatformOrderCancelTransferBodyDiscount[]; /** * 정산 시작일 * * 날짜를 나타내는 문자열로, `yyyy-MM-dd` 형식을 따릅니다. * (yyyy-MM-dd) */ settlementStartDate?: string; /** * 정산일 * * 날짜를 나타내는 문자열로, `yyyy-MM-dd` 형식을 따릅니다. * (yyyy-MM-dd) */ settlementDate?: string; /** * 외부 결제 상세 정보 * * 해당 정보가 존재하는 경우 외부 결제 취소 정산건으로 등록되고, 존재하지않은 경우 포트원 결제 취소 정산건으로 등록됩니다. */ externalCancellationDetail?: CreatePlatformOrderCancelTransferBodyExternalCancellationDetail; /** * 테스트 모드 여부 * * 기본값은 false 입니다. */ isForTest?: boolean; /** 사용자 정의 속성 */ userDefinedProperties?: PlatformUserDefinedPropertyKeyValue[]; }) => Promise<CreateOrderCancelTransferResponse>; /** * 정산건 조회 * * 정산건을 조회합니다. * * @throws {@link GetPlatformTransferError} */ getPlatformTransfer: (options: { /** 조회하고 싶은 정산건 아이디 */ id: string; }) => Promise<PlatformTransfer>; /** * 정산건 삭제 * * scheduled, in_process 상태의 정산건만 삭제가능합니다. * * @throws {@link DeletePlatformTransferError} */ deletePlatformTransfer: (options: { /** 정산건 아이디 */ id: string; }) => Promise<DeletePlatformTransferResponse>; }; export declare class DownloadPlatformTransferSheetError extends TransferError { readonly data: InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: InvalidRequestError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class GetPlatformTransferSummariesError extends TransferError { readonly data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class CreatePlatformManualTransferError extends TransferError { readonly data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | PlatformPartnerNotFoundError | PlatformUserDefinedPropertyNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | PlatformPartnerNotFoundError | PlatformUserDefinedPropertyNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class CreatePlatformOrderTransferError extends TransferError { readonly data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePoliciesNotFoundError | PlatformAdditionalFixedAmountFeeCurrencyAndSettlementCurrencyMismatchedError | PlatformContractNotFoundError | PlatformContractPlatformFixedAmountFeeCurrencyAndSettlementCurrencyMismatchedError | PlatformCurrencyNotSupportedError | PlatformDiscountSharePoliciesNotFoundError | PlatformNotEnabledError | PlatformPartnerNotFoundError | PlatformPaymentNotFoundError | PlatformProductIdDuplicatedError | PlatformSettlementAmountExceededError | PlatformSettlementDateEarlierThanSettlementStartDateError | PlatformSettlementParameterNotFoundError | PlatformSettlementPaymentAmountExceededPortOnePaymentError | PlatformSettlementSupplyWithVatAmountExceededPortOnePaymentError | PlatformSettlementTaxFreeAmountExceededPortOnePaymentError | PlatformTransferAlreadyExistsError | PlatformUserDefinedPropertyNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PlatformAdditionalFeePoliciesNotFoundError | PlatformAdditionalFixedAmountFeeCurrencyAndSettlementCurrencyMismatchedError | PlatformContractNotFoundError | PlatformContractPlatformFixedAmountFeeCurrencyAndSettlementCurrencyMismatchedError | PlatformCurrencyNotSupportedError | PlatformDiscountSharePoliciesNotFoundError | PlatformNotEnabledError | PlatformPartnerNotFoundError | PlatformPaymentNotFoundError | PlatformProductIdDuplicatedError | PlatformSettlementAmountExceededError | PlatformSettlementDateEarlierThanSettlementStartDateError | PlatformSettlementParameterNotFoundError | PlatformSettlementPaymentAmountExceededPortOnePaymentError | PlatformSettlementSupplyWithVatAmountExceededPortOnePaymentError | PlatformSettlementTaxFreeAmountExceededPortOnePaymentError | PlatformTransferAlreadyExistsError | PlatformUserDefinedPropertyNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class CreatePlatformOrderCancelTransferError extends TransferError { readonly data: ForbiddenError | InvalidRequestError | PlatformCancellableAmountExceededError | PlatformCancellableDiscountAmountExceededError | PlatformCancellableDiscountTaxFreeAmountExceededError | PlatformCancellableProductQuantityExceededError | PlatformCancellationAndPaymentTypeMismatchedError | PlatformCancellationNotFoundError | PlatformCannotSpecifyTransferError | PlatformDiscountSharePolicyIdDuplicatedError | PlatformNotEnabledError | PlatformOrderDetailMismatchedError | PlatformOrderTransferAlreadyCancelledError | PlatformPaymentNotFoundError | PlatformProductIdDuplicatedError | PlatformProductIdNotFoundError | PlatformSettlementAmountExceededError | PlatformSettlementCancelAmountExceededPortOneCancelError | PlatformSettlementDateEarlierThanSettlementStartDateError | PlatformTransferAlreadyExistsError | PlatformTransferDiscountSharePolicyNotFoundError | PlatformTransferNotFoundError | PlatformUserDefinedPropertyNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PlatformCancellableAmountExceededError | PlatformCancellableDiscountAmountExceededError | PlatformCancellableDiscountTaxFreeAmountExceededError | PlatformCancellableProductQuantityExceededError | PlatformCancellationAndPaymentTypeMismatchedError | PlatformCancellationNotFoundError | PlatformCannotSpecifyTransferError | PlatformDiscountSharePolicyIdDuplicatedError | PlatformNotEnabledError | PlatformOrderDetailMismatchedError | PlatformOrderTransferAlreadyCancelledError | PlatformPaymentNotFoundError | PlatformProductIdDuplicatedError | PlatformProductIdNotFoundError | PlatformSettlementAmountExceededError | PlatformSettlementCancelAmountExceededPortOneCancelError | PlatformSettlementDateEarlierThanSettlementStartDateError | PlatformTransferAlreadyExistsError | PlatformTransferDiscountSharePolicyNotFoundError | PlatformTransferNotFoundError | PlatformUserDefinedPropertyNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class GetPlatformTransferError extends TransferError { readonly data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | PlatformTransferNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PlatformNotEnabledError | PlatformTransferNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }); } export declare class DeletePlatformTransferError extends TransferError { readonly data: ForbiddenError | InvalidRequestError | PlatformCancelOrderTransfersExistsError | PlatformNotEnabledError | PlatformTransferNonDeletableStatusError | PlatformTransferNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }; /** @ignore */ constructor(data: ForbiddenError | InvalidRequestError | PlatformCancelOrderTransfersExistsError | PlatformNotEnabledError | PlatformTransferNonDeletableStatusError | PlatformTransferNotFoundError | UnauthorizedError | { readonly type: Unrecognized; }); }