UNPKG

@montarist/nilvera-api

Version:

An unofficial SDK for integrating with Nilvera e-Invoice, e-Archive services

188 lines (187 loc) 4.61 kB
export interface CreateDraftRequest { EInvoice: EInvoice; CustomerAlias: string; } export interface CreateEInvoiceModelRequest { EInvoice: EInvoice; CustomerAlias: string; } export interface EInvoice { InvoiceInfo: InvoiceInfo; CompanyInfo: CompanyInfo; CustomerInfo: CustomerInfo; BuyerCustomerInfo?: CustomerInfo; ExportCustomerInfo?: ExportCustomerInfo; InvoiceLines: InvoiceLine[]; Notes?: string[]; } export interface InvoiceInfo { UUID: string; TemplateUUID: string; TemplateBase64String: string; InvoiceType: string; InvoiceSerieOrNumber: string; IssueDate: string; CurrencyCode: string; ExchangeRate: number; InvoiceProfile: string; DespatchDocumentReference?: DespatchDocumentReference[]; OrderReference?: OrderReference; OrderReferenceDocument?: OrderReferenceDocument; AdditionalDocumentReferences?: AdditionalDocumentReference[]; TaxExemptionReasonInfo?: TaxExemptionReasonInfo; PaymentTermsInfo?: PaymentTermsInfo; PaymentMeansInfo?: PaymentMeansInfo; OKCInfo?: OKCInfo; ReturnInvoiceInfo?: ReturnInvoiceInfo[]; AccountingCost?: string; InvoicePeriod?: InvoicePeriod; SGKInfo?: SGKInfo; LineExtensionAmount?: number; GeneralAllowanceTotal?: number; PayableAmount?: number; KdvTotal?: number; } export interface CompanyInfo { TaxNumber: string; Name: string; TaxOffice: string; PartyIdentifications?: PartyIdentification[]; AgentPartyIdentifications?: PartyIdentification[]; Address: string; District: string; City: string; Country: string; PostalCode: string; Phone?: string; Fax?: string; Mail?: string; WebSite?: string; } export interface CustomerInfo { TaxNumber: string; Name: string; TaxOffice: string; PartyIdentifications?: PartyIdentification[]; AgentPartyIdentifications?: PartyIdentification[]; Address: string; District: string; City: string; Country: string; PostalCode: string; Phone?: string; Fax?: string; Mail?: string; WebSite?: string; } export interface ExportCustomerInfo { TaxNumber: string; LegalRegistrationName: string; PersonName: string; PersonSurName: string; Address: string; District: string; City: string; Country: string; PostalCode: string; Phone?: string; Fax?: string; Mail?: string; WebSite?: string; } export interface InvoiceLine { Index: string; SellerCode: string; BuyerCode: string; Name: string; Description?: string; Quantity: number; UnitType: string; Price: number; AllowanceTotal?: number; KDVPercent?: number; KDVTotal?: number; Taxes?: Tax[]; } export interface Tax { TaxCode: string; Total: number; Percent: number; ReasonCode?: string; ReasonDesc?: string; } export interface DespatchDocumentReference { IssueDate: string; Value: string; } export interface OrderReference { IssueDate: string; Value: string; } export interface OrderReferenceDocument { ID: string; IssueDate: string; DocumentType: string; DocumentTypeCode: string; DocumentDescription: string; Attachment: Attachment; } export interface Attachment { Base64Data: string; MimeCode: string; FileName: string; } export interface AdditionalDocumentReference { ID: string; IssueDate: string; DocumentType: string; DocumentTypeCode: string; DocumentDescription: string; Attachment: Attachment; } export interface TaxExemptionReasonInfo { KDVExemptionReasonCode: string; OTVExemptionReasonCode: string; OzelMatrahExemptionReasonCode: string; } export interface PaymentTermsInfo { Percent: number; Amount: number; Note: string; } export interface PaymentMeansInfo { Code: string; ChannelCode: string; DueDate: string; PayeeFinancialAccountID: string; Note: string; } export interface OKCInfo { ID: string; IssueDate: string; Time: string; ZNo: string; EndPointID: string; DocumentDescription: string; } export interface ReturnInvoiceInfo { InvoiceNumber: string; IssueDate: string; } export interface InvoicePeriod { StartDate: string; StartTime?: string; EndDate: string; EndTime?: string; DurationMeasureValue?: number; Description?: string; } export interface SGKInfo { RegisterName: string; DocumentNumber: string; RegisterCode: string; } export interface PartyIdentification { SchemeID: string; Value: string; }