UNPKG

nav-connect

Version:
377 lines (376 loc) 15.1 kB
/** * This file contains TypeScript interfaces generated from the Hungarian Online Invoice System API XML schema * Original schema: http://schemas.nav.gov.hu/OSA/3.0/api */ import { SimpleText50NotBlankType, SimpleText512NotBlankType, GenericTimestampType, BusinessResultCodeType, EntityIdType, LoginType, RequestPageType, ResponsePageType, TaxpayerIdType, CurrencyType, CountryCodeType, CryptoType, BasicRequestType, BasicResponseType, TechnicalValidationResultType, GeneralErrorHeaderResponseType, SimpleText100NotBlankType, SimpleText1024NotBlankType, SimpleText15NotBlankType, SimpleText200NotBlankType } from './commonTypes'; import { InvoiceAppearanceType, InvoiceCategoryType, InvoiceDateType, InvoiceIndexType, InvoiceTimestampType, InvoiceUnboundedIndexType, LineNumberType, MonetaryType, PaymentMethodType, DetailedAddressType, TaxNumberType } from './baseTypes'; /** * Simple types from invoiceApi.xsd */ export type AnnulmentVerificationStatusType = 'NOT_VERIFIABLE' | 'VERIFICATION_PENDING' | 'VERIFICATION_DONE' | 'VERIFICATION_REJECTED'; export type IncorporationType = 'ORGANIZATION' | 'SELF_EMPLOYED' | 'TAXABLE_PERSON'; export type InvoiceDirectionType = 'INBOUND' | 'OUTBOUND'; export type InvoiceStatusType = 'RECEIVED' | 'PROCESSING' | 'SAVED' | 'DONE' | 'ABORTED'; export type ManageAnnulmentOperationType = 'ANNUL'; export type ManageInvoiceOperationType = 'CREATE' | 'MODIFY' | 'STORNO'; export type OriginalRequestVersionType = '1.0' | '1.1' | '2.0' | '3.0'; export type QueryNameType = string; export type QueryOperatorType = 'EQ' | 'GT' | 'GTE' | 'LT' | 'LTE'; export type RequestStatusType = 'RECEIVED' | 'PROCESSING' | 'SAVED' | 'FINISHED' | 'NOTIFIED'; export type SoftwareIdType = string; export type SoftwareOperationType = 'LOCAL_SOFTWARE' | 'ONLINE_SERVICE'; export type SourceType = 'WEB' | 'XML' | 'MGM' | 'OPG' | 'OSZ'; export type TaxpayerAddressTypeType = 'HQ' | 'SITE' | 'BRANCH'; /** * Complex types from invoiceApi.xsd */ export interface AdditionalQueryParamsType { taxNumber?: TaxpayerIdType; groupMemberTaxNumber?: TaxpayerIdType; name?: QueryNameType; invoiceCategory?: InvoiceCategoryType; paymentMethod?: PaymentMethodType; invoiceAppearance?: InvoiceAppearanceType; source?: SourceType; currency?: CurrencyType; } export interface AnnulmentDataType { annulmentVerificationStatus: AnnulmentVerificationStatusType; annulmentDecisionDate?: InvoiceTimestampType; annulmentDecisionUser?: LoginType; } export interface AnnulmentOperationListType { annulmentOperation: AnnulmentOperationType[]; } export interface AnnulmentOperationType { index: InvoiceIndexType; annulmentOperation: ManageAnnulmentOperationType; invoiceAnnulment: string; } export interface AuditDataType { insdate: InvoiceTimestampType; insCusUser: LoginType; source: SourceType; transactionId?: EntityIdType; index?: InvoiceIndexType; batchIndex?: InvoiceUnboundedIndexType; originalRequestVersion: OriginalRequestVersionType; } export interface BasicOnlineInvoiceRequestType extends BasicRequestType { software: SoftwareType; } export interface BasicOnlineInvoiceResponseType extends BasicResponseType { software: SoftwareType; } export interface BusinessValidationResultType { validationResultCode: BusinessResultCodeType; validationErrorCode?: SimpleText100NotBlankType; message?: SimpleText512NotBlankType; pointer?: PointerType; } export interface DateIntervalParamType { dateFrom: InvoiceDateType; dateTo: InvoiceDateType; } export interface DateTimeIntervalParamType { dateTimeFrom: InvoiceTimestampType; dateTimeTo: InvoiceTimestampType; } export interface GeneralErrorResponseType extends GeneralErrorHeaderResponseType { software: SoftwareType; technicalValidationMessages?: TechnicalValidationResultType[]; } export interface InvoiceChainDigestResultType { currentPage: ResponsePageType; availablePage: ResponsePageType; invoiceChainElement?: InvoiceChainElementType[]; } export interface InvoiceChainDigestType { invoiceNumber: SimpleText50NotBlankType; batchIndex?: InvoiceUnboundedIndexType; invoiceOperation: ManageInvoiceOperationType; supplierTaxNumber: TaxpayerIdType; customerTaxNumber?: TaxpayerIdType; insDate: InvoiceTimestampType; originalRequestVersion: OriginalRequestVersionType; } export interface InvoiceChainElementType { invoiceChainDigest: InvoiceChainDigestType; invoiceLines?: InvoiceLinesType; invoiceReferenceData?: InvoiceReferenceDataType; } export interface InvoiceChainQueryType { invoiceNumber: SimpleText50NotBlankType; invoiceDirection: InvoiceDirectionType; taxNumber?: TaxpayerIdType; } export interface InvoiceDataResultType { invoiceData: string; auditData: AuditDataType; compressedContentIndicator: boolean; electronicInvoiceHash?: CryptoType; } export interface InvoiceDigestResultType { currentPage: ResponsePageType; availablePage: ResponsePageType; invoiceDigest?: InvoiceDigestType[]; } export interface InvoiceDigestType { invoiceNumber: SimpleText50NotBlankType; batchIndex?: InvoiceUnboundedIndexType; invoiceOperation: ManageInvoiceOperationType; invoiceCategory: InvoiceCategoryType; invoiceIssueDate: InvoiceDateType; supplierTaxNumber: TaxpayerIdType; supplierGroupMemberTaxNumber?: TaxpayerIdType; supplierName: SimpleText512NotBlankType; customerTaxNumber?: TaxpayerIdType; customerGroupMemberTaxNumber?: TaxpayerIdType; customerName?: SimpleText512NotBlankType; paymentMethod?: PaymentMethodType; paymentDate?: InvoiceDateType; invoiceAppearance?: InvoiceAppearanceType; source?: SourceType; invoiceDeliveryDate?: InvoiceDateType; currency?: CurrencyType; invoiceNetAmount?: MonetaryType; invoiceNetAmountHUF?: MonetaryType; invoiceVatAmount?: MonetaryType; invoiceVatAmountHUF?: MonetaryType; transactionId?: EntityIdType; index?: InvoiceIndexType; originalInvoiceNumber?: SimpleText50NotBlankType; modificationIndex?: InvoiceUnboundedIndexType; insDate: InvoiceTimestampType; completenessIndicator?: boolean; } export interface InvoiceLinesType { maxLineNumber: LineNumberType; newCreatedLines?: NewCreatedLinesType[]; } export interface InvoiceNumberQueryType { invoiceNumber: SimpleText50NotBlankType; invoiceDirection: InvoiceDirectionType; batchIndex?: InvoiceUnboundedIndexType; supplierTaxNumber?: TaxpayerIdType; } export interface InvoiceOperationListType { compressedContent: boolean; invoiceOperation: InvoiceOperationType[]; } export interface InvoiceOperationType { index: InvoiceIndexType; invoiceOperation: ManageInvoiceOperationType; invoiceData: string; electronicInvoiceHash?: CryptoType; } export interface InvoiceQueryParamsType { mandatoryQueryParams: MandatoryQueryParamsType; additionalQueryParams?: AdditionalQueryParamsType; relationalQueryParams?: RelationalQueryParamsType; transactionQueryParams?: TransactionQueryParamsType; } export interface InvoiceReferenceDataType { originalInvoiceNumber: SimpleText50NotBlankType; modifyWithoutMaster: boolean; modificationTimestamp?: InvoiceTimestampType; modificationIndex?: InvoiceUnboundedIndexType; } export interface ManageAnnulmentRequestType extends BasicOnlineInvoiceRequestType { exchangeToken: SimpleText50NotBlankType; annulmentOperations: AnnulmentOperationListType; } export interface ManageInvoiceRequestType extends BasicOnlineInvoiceRequestType { exchangeToken: SimpleText50NotBlankType; invoiceOperations: InvoiceOperationListType; } export interface MandatoryQueryParamsType { invoiceIssueDate?: DateIntervalParamType; insDate?: DateTimeIntervalParamType; originalInvoiceNumber?: SimpleText50NotBlankType; } export interface NewCreatedLinesType { lineNumberIntervalStart: LineNumberType; lineNumberIntervalEnd: LineNumberType; } export interface PointerType { tag?: SimpleText1024NotBlankType; value?: SimpleText1024NotBlankType; line?: LineNumberType; originalInvoiceNumber?: SimpleText50NotBlankType; } export interface ProcessingResultListType { processingResult: ProcessingResultType[]; originalRequestVersion: OriginalRequestVersionType; annulmentData?: AnnulmentDataType; } export interface ProcessingResultType { index: InvoiceIndexType; batchIndex?: InvoiceUnboundedIndexType; invoiceStatus: InvoiceStatusType; technicalValidationMessages?: TechnicalValidationResultType[]; businessValidationMessages?: BusinessValidationResultType[]; compressedContentIndicator: boolean; originalRequest?: string; } export interface QueryInvoiceChainDigestRequestType extends BasicOnlineInvoiceRequestType { page: RequestPageType; invoiceChainQuery: InvoiceChainQueryType; } export interface QueryInvoiceChainDigestResponseType extends BasicOnlineInvoiceResponseType { invoiceChainDigestResult: InvoiceChainDigestResultType; } export interface QueryInvoiceCheckResponseType extends BasicOnlineInvoiceResponseType { invoiceCheckResult: boolean; } export interface QueryInvoiceDataRequestType extends BasicOnlineInvoiceRequestType { invoiceNumberQuery: InvoiceNumberQueryType; } export interface QueryInvoiceDataResponseType extends BasicOnlineInvoiceResponseType { invoiceDataResult?: InvoiceDataResultType; } export interface QueryInvoiceDigestRequestType extends BasicOnlineInvoiceRequestType { page: RequestPageType; invoiceDirection: InvoiceDirectionType; invoiceQueryParams: InvoiceQueryParamsType; } export interface QueryInvoiceDigestResponseType extends BasicOnlineInvoiceResponseType { invoiceDigestResult: InvoiceDigestResultType; } export interface QueryTaxpayerRequestType extends BasicOnlineInvoiceRequestType { taxNumber: TaxpayerIdType; } export interface QueryTaxpayerResponseType extends BasicOnlineInvoiceResponseType { infoDate?: GenericTimestampType; taxpayerValidity?: boolean; taxpayerData?: TaxpayerDataType; } export interface QueryTransactionListRequestType extends BasicOnlineInvoiceRequestType { page: RequestPageType; insDate: DateTimeIntervalParamType; requestStatus?: RequestStatusType; } export interface QueryTransactionListResponseType extends BasicOnlineInvoiceResponseType { transactionListResult: TransactionListResultType; } export interface QueryTransactionStatusRequestType extends BasicOnlineInvoiceRequestType { transactionId: EntityIdType; returnOriginalRequest?: boolean; } export interface QueryTransactionStatusResponseType extends BasicOnlineInvoiceResponseType { processingResults?: ProcessingResultListType; } export interface RelationalQueryParamsType { invoiceDelivery?: RelationQueryDateType[]; paymentDate?: RelationQueryDateType[]; invoiceNetAmount?: RelationQueryMonetaryType[]; invoiceNetAmountHUF?: RelationQueryMonetaryType[]; invoiceVatAmount?: RelationQueryMonetaryType[]; invoiceVatAmountHUF?: RelationQueryMonetaryType[]; } export interface RelationQueryDateType { queryOperator: QueryOperatorType; queryValue: InvoiceDateType; } export interface RelationQueryMonetaryType { queryOperator: QueryOperatorType; queryValue: MonetaryType; } export interface SoftwareType { softwareId: SoftwareIdType; softwareName: SimpleText50NotBlankType; softwareOperation: SoftwareOperationType; softwareMainVersion: SimpleText15NotBlankType; softwareDevName: SimpleText512NotBlankType; softwareDevContact: SimpleText200NotBlankType; softwareDevCountryCode?: CountryCodeType; softwareDevTaxNumber?: SimpleText50NotBlankType; } export interface TaxpayerAddressItemType { taxpayerAddressType: TaxpayerAddressTypeType; taxpayerAddress: DetailedAddressType; } export interface TaxpayerAddressListType { taxpayerAddressItem: TaxpayerAddressItemType[]; } export interface TaxpayerDataType { taxpayerName: SimpleText512NotBlankType; taxpayerShortName?: SimpleText200NotBlankType; taxNumberDetail: TaxNumberType; incorporation: IncorporationType; vatGroupMembership?: TaxpayerIdType; taxpayerAddressList?: TaxpayerAddressListType; } export interface TokenExchangeResponseType extends BasicOnlineInvoiceResponseType { encodedExchangeToken: string; tokenValidityFrom: InvoiceTimestampType; tokenValidityTo: InvoiceTimestampType; } export interface TransactionListResultType { currentPage: ResponsePageType; availablePage: ResponsePageType; transaction?: TransactionType[]; } export interface TransactionQueryParamsType { transactionId: EntityIdType; index?: InvoiceIndexType; invoiceOperation?: ManageInvoiceOperationType; } export interface TransactionResponseType extends BasicOnlineInvoiceResponseType { transactionId: EntityIdType; } export interface TransactionType { insDate: InvoiceTimestampType; insCusUser: LoginType; source: SourceType; transactionId: EntityIdType; requestStatus: RequestStatusType; technicalAnnulment: boolean; originalRequestVersion: OriginalRequestVersionType; itemCount: InvoiceIndexType; } /** * Element interfaces */ export interface GeneralErrorResponse extends GeneralErrorResponseType { } export interface ManageAnnulmentRequest extends ManageAnnulmentRequestType { } export interface ManageAnnulmentResponse extends TransactionResponseType { } export interface ManageInvoiceRequest extends ManageInvoiceRequestType { } export interface ManageInvoiceResponse extends TransactionResponseType { } export interface QueryInvoiceChainDigestRequest extends QueryInvoiceChainDigestRequestType { } export interface QueryInvoiceChainDigestResponse extends QueryInvoiceChainDigestResponseType { } export interface QueryInvoiceCheckRequest extends QueryInvoiceDataRequestType { } export interface QueryInvoiceCheckResponse extends QueryInvoiceCheckResponseType { } export interface QueryInvoiceDataRequest extends QueryInvoiceDataRequestType { } export interface QueryInvoiceDataResponse extends QueryInvoiceDataResponseType { } export interface QueryInvoiceDigestRequest extends QueryInvoiceDigestRequestType { } export interface QueryInvoiceDigestResponse extends QueryInvoiceDigestResponseType { } export interface QueryTaxpayerRequest extends QueryTaxpayerRequestType { } export interface QueryTaxpayerResponse extends QueryTaxpayerResponseType { } export interface QueryTransactionListRequest extends QueryTransactionListRequestType { } export interface QueryTransactionListResponse extends QueryTransactionListResponseType { } export interface QueryTransactionStatusRequest extends QueryTransactionStatusRequestType { } export interface QueryTransactionStatusResponse extends QueryTransactionStatusResponseType { } export interface TokenExchangeRequest extends BasicOnlineInvoiceRequestType { } export interface TokenExchangeResponse extends TokenExchangeResponseType { }