portone-api-v2
Version:
PortOne REST API v2
69 lines (68 loc) • 2.08 kB
TypeScript
import { SelectedChannel } from './common';
import * as Enum from './enums';
export type CashReceipt = CancelledCashReceipt | IssuedCashReceipt | IssueFailedCashReceipt;
export interface CashReceiptBase {
/** 현금영수증 상태 */
status: 'CANCELLED' | 'ISSUED' | 'ISSUE_FAILED';
/** 가맹점 ID */
merchantId: string;
/** 상점 ID */
storeId: string;
/** 결제 건 ID */
paymentId: string;
/** (결제, 본인인증 등에) 선택된 채널 정보 */
channel: SelectedChannel;
/** 결제금액 (int64) */
amount: number;
/** 면세액 (int64) */
taxFreeAmount?: number;
/** 부가세액 (int64) */
vatAmount?: number;
/** 통화단위 */
currency: Enum.Currency;
/** 주문명 */
orderName: string;
/** 수동발급여부 */
isManual: boolean;
/** 발급 유형 */
type?: Enum.CashReceiptType;
/** PG사 현금영수증 ID */
pgReceiptId?: string;
/** 승인번호 */
issueNumber: string;
/** 현금영수증 URL */
url?: string;
}
export interface CancelledCashReceipt extends CashReceiptBase {
status: 'CANCELLED';
/** 발급 시점 (RFC 3339 date-time) */
issuedAt: string;
/** 취소 시점 (RFC 3339 date-time) */
cancelledAt: string;
}
export interface IssuedCashReceipt extends CashReceiptBase {
status: 'ISSUED';
/** 발급 시점 (RFC 3339 date-time) */
issuedAt: string;
}
export interface IssueFailedCashReceipt extends Pick<CashReceiptBase, 'status' | 'merchantId' | 'storeId' | 'paymentId' | 'channel' | 'orderName' | 'isManual'> {
status: 'ISSUE_FAILED';
}
export interface CashReceiptSummary {
/** 현금영수증 발행 번호 */
issueNumber: string;
/** 현금영수증 URL */
url: string;
/** PG사 현금영수증 ID */
pgReceiptId: string;
}
export interface IssueCashReceiptCustomerInput {
/** 고객 식별값 */
identityNumber: string;
/** 이름 */
name?: string;
/** 이메일 */
email?: string;
/** 전화번호 */
phoneNumber?: string;
}