Exemplo n.º 1
0
        public async Task <TaxCertificate> UpdateCertificateAsync(int certificateID, TaxCertificate cert, Address buyerLocation)
        {
            var companyID         = _settings.CompanyID;
            var certificate       = _avaTax.UpdateCertificateAsync(companyID, certificateID, TaxCertificateMapper.Map(cert, buyerLocation, companyID));
            var pdf               = GetCertificateBase64String(companyID, certificateID);
            var mappedCertificate = TaxCertificateMapper.Map(await certificate, await pdf);

            return(mappedCertificate);
        }
Exemplo n.º 2
0
        public async Task <TaxCertificate> CreateCertificateAsync(TaxCertificate cert, Address buyerLocation)
        {
            var companyID    = _settings.CompanyID;
            var certificates = await _avaTax.CreateCertificatesAsync(companyID, false, new List <CertificateModel> {
                TaxCertificateMapper.Map(cert, buyerLocation, companyID)
            });

            var pdf = await GetCertificateBase64String(companyID, certificates[0].id ?? 0);

            var mappedCertificate = TaxCertificateMapper.Map(certificates[0], pdf);

            return(mappedCertificate);
        }
Exemplo n.º 3
0
 // Resale Exemption Certificates
 public static CertificateModel Map(TaxCertificate source, Address buyerLocation, int avalaraCompanyID)
 {
     return(new CertificateModel()
     {
         id = source.ID,
         signedDate = source.SignedDate.UtcDateTime,
         expirationDate = source.ExpirationDate.UtcDateTime,
         pdf = source.Base64UrlEncodedPDF,
         exemptPercentage = 100,
         exemptionNumber = source.ExemptionNumber,
         filename = source.FileName,
         exposureZone = new ExposureZoneModel()
         {
             name = source.ExposureZoneName
         },
         exemptionReason = new ExemptionReasonModel()
         {
             name = RESALE_EXEMPTION_REASON
         },
         customers = new List <CustomerModel> {
             Map(buyerLocation, avalaraCompanyID)
         }
     });
 }