public static GeneralResponse <bool> SetInvoiceAnswerRequest(SetInvoiceAnswer model) { var request = SetHeaders("/einvoice/setAnswer"); request.Method = Method.POST; request.AddBody(model); var response = Client.Execute(request); return(response.Parse <bool>()); }
static void Main(string[] args) { Client = new RestClient(Nes.RestApi.CSharp.Example.Constant.BaseUrl); #region Account var templateListResponse = TemplateListRequest(Constant.InvoiceType.eInvoice); // Hesabınızda tanımlı olan XSLT listesinin detaylarını almak için kullanılır. var getTemplateResponse = GetTemplateRequest(new GetTemplateRequest() { TemplateType = GetTemplateType.EInvoice, Title = "TASARIM_BASLIGI" }); //Hesabınızda tanımlı olan XSLT yi almak için kullanılır. #endregion #region Customer var checkResponse = CheckRequest(CustomerVknTckn); //Bir firma/kişinin e-Fatura mükellefi olup olmadığını sorgulamak için kullanılır. var getAllResponse = GetAllRequest(); //GIB'de kayıtlı bütün E-Fatura mükelleflerini çekmek için kullanılır. var downloadZipResponse = DownloadZipRequest(); //GIB'de kayıtlı bütün E-Fatura mükelleflerini ZIP içerisinde XML olarak çekmek için kullanılır. #endregion #region EArchive var getDocumentStatusResponse = GetDocumentStatusRequest(EArchiveInvoiceUUID); //E-Arşiv faturalarının durumlarını sorgulamak için kullanılır. var getMailStatisticsResponse = GetMailStatisticsRequest(EArchiveInvoiceUUID); //E-Arşiv faturalarının mail durumlarını sorgulamak için kullanılır. var setInvoiceCancelResponse = SetInvoiceCancelRequest(EArchiveInvoiceUUID); //E-Arşiv faturaların iptal edilmesi için kullanılır. var sendMailRequest = new SendMailRequest() { InvoiceUUID = EArchiveInvoiceUUID, ReceiverMailList = new List <string>() { "ALICI_MAIL_ADRESI", "ALICI_MAIL_ADRESI_1", "ALICI_MAIL_ADRESI_2" } }; var sendMailResponse = SendMailRequest(sendMailRequest); //E-Arşiv faturalarını mail olarak göndermek için kullanılır #endregion #region EInvoice var saleInvoiceStatusResponse = SaleInvoiceStatusRequest(EInvoiceUUID); //Giden E-Faturaların durumlarını sorgulamak için kullanılır. var getUnAnsweredInvoiceUUIDListResponse = GetUnAnsweredInvoiceUUIDListRequest(); //Firmanıza gelen ve cevap verilmemiş olan Ticari Faturaların ETTn listesini almak için kullanılır. Burada dönen listedeki ETTN ler üzerinden faturaya cevap verme işlemini gerçekleştirebilirsiniz. var getUnTransferredInvoiceUUIDListResponse = GetUnTransferredInvoiceUUIDListRequest(CustomerAlias); //Firmanıza gelen ve içeriye aktarılmamış (ERP'ye Alınmamış) faturaların ETTN listesini almak için kullanılır. Etiket bilgisi opsiyoneldir. Detalar dokümantasyonda mevcuttur. var setInvoiceTransferredResponse = SetInvoiceTransferredRequest(EInvoiceUUID); //ERP'ye yazılmış olan Gelen E-Faturanın NESBilgi üzerinde Transfer Edildi olarak işaretlemek için kullanılır. var setInvoiceAnswerRequest = new SetInvoiceAnswer() { Answer = ServiceAnswer.Accepted, InvoiceUuid = EInvoiceUUID, IsDirectSend = true, RejectNote = "RED_YANITI_GIRILIR" }; var setInvoiceAnswerResponse = SetInvoiceAnswerRequest(setInvoiceAnswerRequest); //Gelen Ticari E-Faturaya cevap vermek için kullanılır. #endregion #region InvoiceGeneral var getUBLXmlContentResponse = GetUBLXmlContentRequest(EInvoiceUUID); //Gelen/Giden E-Fatura veya E-Ariv Faturalarının UBL Xml içeriğini almak için kullanılır. var getInvoiceHtmlRequestResponse = GetInvoiceHtmlRequest(EInvoiceUUID); //Gelen/Giden E-Fatura veya E-Ariv faturalarının HTML formatında önizlemesini almak için kullanılır. var getInvoicePdfResponse = GetInvoicePdfRequest(EInvoiceUUID); //Gelen/Giden E-Fatura veya E-Arşiv Faturalarının PDF halini almak için kullanılır. var GetInvoiceNumberFromUUIDResponse = GetInvoiceNumberFromUUIDRequest(EInvoiceUUID); //Gelen/Giden E-Fatura veya E-Arşiv faturalarının 16 Haneli fatura numarasını almak için kullanılır. #region SendUBLInvoice//UBL Xml Formatında E-Fatura Göndermek İçin Kullanılır ZipFile zip = new ZipFile(); var xmlFile = @"D:\e-FaturaPaketi\e-FaturaPaketi\xml\be770327-b0fe-4511-9ff7-15936bcd1c17.xml"; zip.AddEntry(Path.GetFileName(xmlFile), File.ReadAllBytes(xmlFile)); MemoryStream ms = new MemoryStream(); zip.Save(ms); ms.Position = 0; byte[] data = ms.ToArray(); var sendUBLInvoiceRequest = new { transferDocument = new NESTransferDocument() { FileName = Path.GetFileNameWithoutExtension(xmlFile) + ".zip", IsDirectSend = true, UUID = EInvoiceUUID, ZIPBinaryDataArray = data }, invoiceProfile = InvoiceProfile.TICARIFATURA, customerRegisterNumber = CustomerVknTckn, eInvoiceAlias = CustomerAlias }; var sendUBLInvoiceResponse = SendUBLInvoiceRequest(sendUBLInvoiceRequest); #endregion #region Token Alma İşlemi var tokenResult = GetToken(new TokenRequest() { username = "******", password = "******" }); if (tokenResult.ErrorStatus == null) { accessToken = tokenResult.Result.access_token; } #endregion #region SendNESInvoice//NESInvoice Formatında XML Göndermek İçin Kullanılır var invoice = InvoiceGenerator.GetStandarInvoice(); //Fatura üzerine ek bilgiler eklemek için kullanabilirsiniz. invoice.InvoiceInfo.AdditionalDocumentReferences = new System.Collections.Generic.List <AdditioanlDocumentReference>() { }; invoice.InvoiceInfo.AdditionalDocumentReferences.Add(new AdditioanlDocumentReference() { DocumentType = "BRANCH_NAME", ID = "Şube Adı" }); //Özel değer invoice.InvoiceInfo.AdditionalDocumentReferences.Add(new AdditioanlDocumentReference() { DocumentType = "BRANCH_ADDRESS", ID = "Şube adresi" }); var sendNESInvoiceRequest = new { nesInvoice = invoice, invoiceProfile = InvoiceProfile.TICARIFATURA, customerRegisterNumber = CustomerVknTckn, isDirectSend = true }; var sendNESInvoiceResponse = SendNESInvoiceRequest(sendNESInvoiceRequest); #endregion #endregion }