-
Notifications
You must be signed in to change notification settings - Fork 3
API Web
Rafael Dorantes edited this page Apr 19, 2023
·
7 revisions
Crear un objeto de tipo CFDI
com.Facturama.sdk_java.Models.Request.Cfdi cfdi = new com.Facturama.sdk_java.Models.Request.Cfdi();
cfdi.setSerie("R");
cfdi.setCurrency("MXN");
cfdi.setExpeditionPlace("78116");
cfdi.setPaymentConditions("CREDITO A SIETE DIAS");
cfdi.setCfdiType( CfdiType.Ingreso.getValue());
cfdi.setPaymentForm("03");
cfdi.setPaymentMethod("PUE");
Receiver receiver = new Receiver();
receiver.setRfc("RSS2202108U5");
receiver.setName("RADIAL SOFTWARE SOLUTIONS");
receiver.setCfdiUse("P01");
cfdi.setReceiver(receiver);
List<Item> lstItems = new ArrayList<>();
item.setProductCode("10101504");
item.setIdentificationNumber("EDL");
item.setDescription("Estudios de viabilidad");
item.setUnit("NO APLICA");
item.setUnitCode("MTS");
item.setUnitPrice(50.00);
item.setQuantity(2.00);
item.setSubtotal(100.00);
List<Tax> lstTaxes = new ArrayList<>();
tax.setTotal(16.00);
tax.setName("IVA");
tax.setRate(100.00);
tax.setBase(0.160000);
tax.setIsRetention(false);
lstTaxes.add(tax);
item.setTaxes(lstTaxes);
item.setTotal(116.0);
lstItems.add(item);
cfdi.setItems(lstItems);
Creacion de CFDI 3.3
facturama.Cfdis().Create(cfdi);
Cancelación
facturama.Cfdis().Remove(cfdiCreated.getId(),"issued","01","7eo51BvzV-E16gBx3nnxfQ2");
Descarga en el formato deseado xml, html ó pdf
String filePath = "factura";
facturama.Cfdis().SavePdf(filePath+".pdf", "7eo51BvzV-E16gBx3nnxfQ2");
facturama.Cfdis().SaveXml(filePath+".xml", "7eo51BvzV-E16gBx3nnxfQ2");
Consulta tus facturas en cualquier momento mediante una palabra clave ó algun atributo en específico
facturama.Cfdis().List("Expresion en Software");
facturama.Cfdis().ListFilterByRfc("ESO1202108R2");
Envia tu CFDI por Email
facturama.Cfdis().SendEmail("example@.mx",CfdiService.InvoiceType.Issued, "7eo51BvzV-E16gBx3nnxfQ2");
Crear un objeto de tipo CFDI
com.Facturama.sdk_java.Models.Request.Cfdi cfdi = new com.Facturama.sdk_java.Models.Request.Cfdi();
cfdi.setSerie("R");
cfdi.setCurrency("MXN");
cfdi.setExpeditionPlace("78116");
cfdi.setPaymentConditions("CREDITO A SIETE DIAS");
cfdi.setCfdiType( CfdiType.Ingreso.getValue());
cfdi.setPaymentForm("03");
cfdi.setPaymentMethod("PUE");
Receiver receiver = new Receiver();
receiver.setRfc("EKU9003173C9");
receiver.setName("ESCUELA KEMPER URGATE");
receiver.setCfdiUse("P01");
receiver.setFiscalRegime("603"); //Nuevo elemento
receiver.setTaxZipCode("26015") //Nuevo elemento
cfdi.setReceiver(receiver);
List<Item> lstItems = new ArrayList<>();
item.setProductCode("10101504");
item.setIdentificationNumber("EDL");
item.setDescription("Estudios de viabilidad");
item.setUnit("NO APLICA");
item.setUnitCode("MTS");
item.setUnitPrice(50.00);
item.setQuantity(2.00);
item.setSubtotal(100.00);
item.setTaxObject("02"); // Nuevo elemento
List<Tax> lstTaxes = new ArrayList<>();
tax.setTotal(16.00);
tax.setName("IVA");
tax.setRate(100.00);
tax.setBase(0.160000);
tax.setIsRetention(false);
lstTaxes.add(tax);
item.setTaxes(lstTaxes);
item.setTotal(116.0);
lstItems.add(item);
cfdi.setItems(lstItems);
Metodo para probar CFDI 4.0
facturama.Cfdis().Create3(cfdi);
// Primer ejemplo, solo dos datos en consulta.
List<CfdiSearchResult> lstCfdiByOrderNumber = facturama.Cfdis().ListFilterByOrderNumber(CfdiService.InvoiceType.Issued, "050408");
System.out.println("Se el Id de la factura: " + lstCfdiByOrderNumber.get(0).getId());
// segundo ejemplo, multiples datos en consulta.
int FolioIni=-1;
int FolioFin=-1;
String Rfc="OÑO120726RX3";
String taxEntityName= null;
String dateStart=null;
String dateEnd=null;
String idBranch=null;
String serie=null;
CfdiService.CfdiStatus status = CfdiService.CfdiStatus.all;
String OrderNumber= "050408";
List<CfdiSearchResult> lstCfdiByOrderNumber2 = facturama.Cfdis().List(FolioIni, FolioFin, Rfc, taxEntityName, dateStart, dateEnd, idBranch, serie, status, type, OrderNumber);
System.out.println("Se obtiene la lista de facturas: " + lstCfdiByOrderNumber2.get(0).getId());