Beispiel #1
0
        public async Task <ReceivedInvoices> SubmitSimplifiedInvoiceAsync(SimplifiedInvoicesToSubmit model)
        {
            var request  = new ModelToDtoConverter().Convert(model);
            var response = await SoapClient.SendAsync <SubmitIssuedInvoicesRequest, SubmitIssuedInvoicesResponse>(request);

            return(new DtoToModelConverter().Convert(response));
        }
 public SubmitIssuedInvoicesRequest Convert(SimplifiedInvoicesToSubmit model)
 {
     return(new SubmitIssuedInvoicesRequest
     {
         Cabecera = Convert(model.Header),
         RegistroLRFacturasEmitidas = model.Invoices.Select(i => Convert(i)).ToArray()
     });
 }
Beispiel #3
0
        private async Task <SimplifiedInvoice> SuccessfullyPostInvoice(Client client)
        {
            var invoice = GetInvoice(IssuingCompany, ReceivingCompany);
            var model   = SimplifiedInvoicesToSubmit.Create(
                header: new Header(IssuingCompany, CommunicationType.Registration),
                invoices: new[] { invoice }
                ).Success.Get();

            var response = await client.SubmitSimplifiedInvoiceAsync(model);

            var responseErrorMessages = response.Invoices.Select(i => i.ErrorMessage).Flatten();
            var errorMessage          = String.Join(System.Environment.NewLine, responseErrorMessages);

            Assert.AreEqual(response.Result, RegisterResult.Correct, errorMessage);

            return(invoice);
        }