![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Facturación eléctronica
Hola compañeros foristas
Al igual que ustedes tengo el mismo problema, ya que he desarrollado un sistema de punto de venta y algunos programas para facturación (para comercializadoras, agentes aduanales, etc.), el caso es que parece muy complicado el asunto. Entre mis desarrollos he hecho un sistema de pedimentos (sirve para elaborar documentos para importar y exportar mercancias) desde hace varios años y antes de que se presente el pedimento ante la aduana, se debe validar, para lo cual genero un archivo y este hay que firmarlo electronicamente, para lo cual en las paginas de aduana se usa un programa llamado SIFEP o se puede optar por usar unas librerias para firmalos desde tu propio programa. No sé si esto sea similar a las facturas eléctronicas, el proceso en el sistema de pedimentos es el siguiente: Pedimentos - se captura el pedimento - se genera un archivo de texto con cos datos del pedimento, importador, mercancias, etc. - Se firmar el archivo utilizando el achivo de certificado .cer y el archivo llave .key que se le ha proporcionado al agente aduanal por el SAT - La cadena resultante (firma) se agrega al final del archivo de texto que se va a validar y se imprime en el pedimento Facturación - Se captura la factura - Se genera un archivo XML con los datos del vendedor, cliente, mercancias, etc. - Se firma el archivo - Se imprime en la factura (se hace algo mas?) Al final de todo esto no sé si sea lo mismo (se puedan firmar las facturas del mismo modo) aunque sospecho que aunque se parezca no tiene nada que ver. Por lo pronto voy a empezar por estudiar como generar el XML y todo el proceso.
__________________
Cancun, Q.Roo, México |
|
#2
|
||||
|
||||
|
Que tal cancun (jeje, que nicks tan originales
),Segun lo que comentas, el proceso es casi casi lo mismo. Adicionalmente a lo que tienes solo te restaría generar el xml y obtener su cadena de digestión y lo demás es pan comido pars ti según lo que tienes. ¿Que librerías son esas de las que dispones? Son gratis o de paga?
__________________
Tiempo y ocasión acontecen a todos! |
|
#3
|
|||
|
|||
|
Estan disponibles en la página:
http://www.aduanas.gob.mx/aduana_mex...144_10186.html Viene documentado el uso de la .dll, pero falta ver si es lo mismo, aunque al ser un formato de archivo diferente puede que no funcione. Si decides probarlo el código para usar la .dll es el siguiente: Código:
// hay que declarar al principio de tu unidad
type
PCURP = ^TCURP;
TCURP = record
curp: array[0..18] of char;
archivoKey: array[0..255] of char;
archivoCer: array[0..255] of char;
password: array[0..18] of char
end;
// Declaras las funciones
{$R *.DFM}
function BuscaCurpsG(const archivoOrig:pchar; const tipo:Integer; struct_curps_g:PCURP):Integer; stdcall;
external 'sgenc32.dll' name '_BuscaCurpsG_std@12';
function GeneraFirmaDigitalG(const archivoOrig:pchar; const tipo:Integer; struct_curps_g:PCURP):Integer; stdcall;
external 'sgenc32.dll' name '_GeneraFirmaDigitalG_std@12';
// Este es el boton que ejecuta la firma
procedure TFrmConfig.btnFirmarClick(Sender: TObject);
var
archivo: array [0..250] of Char;
PReg: PCURP;
Arch, Er:Integer;
begin
StrPCopy(archivo,FieldByName('Ruta').AsString+'\'+'m'+Patente+StrZero(Arch,3)+'.'+StrZero(DayOfTheYear(Date),3));
GetMem(PReg, SizeOf(TCURP) * 10);
Er:=BuscaCurpsG(archivo, 0, PReg);
StrPCopy(PReg.archivoKey,ArchivoKey);
StrPCopy(PReg.archivoCer,ArchivoCer);
StrPCopy(Preg.password,Clave);
Er:=GeneraFirmaDigitalG(archivo, 0, PReg);
if Er=0 then
Mensaje('Se ha firmado correctamente el archivo: '+archivo,'Firma exitosa',mb_Ok)
else
MensajeError('Error al procesar la Firma: '+IntToStr(Er),'Error');
end;
archivo ruta y nombre del archivo a firmar ArchivoKey Ruta y nombre del archivo con extensión .key ArchivoCer Ruta y nombre del archivo con extensión .cer Clave Password para la firma
__________________
Cancun, Q.Roo, México |
|
#4
|
|||
|
|||
|
Pues el asunto de cancun si se parece mucho a lo de la factura electronica.
Ahora, (ya estoy como en los concursos de television) cual es la pregunta? es decir, parece que tienes todo resuelto, tienes la dll, la forma de usarla dentro de Delphi y no parece muy dificil y lo mejor de todo, ya tienes un sistema de pedimentos desarrollado desde hace unos años..... En donde te atoraste? |
|
#5
|
|||
|
|||
|
Bueno, no me he atorado en nada aun pues todavía no empiezo, solo estoy investigando como va el asunto y el primer problema que encuentro es para generar el archivo XML ya que es algo nuevo para mí, en unos dias debo terminar unos pendientes y entonces me meteré de lleno en este tema y estaré dando lata por aquí.
He puesto el código que utilizo por si a alguien le interesa hacer la prueba y nos comente el resultado.
__________________
Cancun, Q.Roo, México |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Mexico - Como crear sellos en FACTURA ELECTRONICA.. | pcicom | API de Windows | 12 | 10-11-2012 18:46:55 |
| Factura Electrónica | aig | Varios | 13 | 10-12-2010 17:12:44 |
| factura electronica | cmm07 | Varios | 4 | 02-04-2009 17:46:03 |
| factura electronica | spia | Varios | 2 | 22-02-2009 21:30:06 |
| Factura electronica AUNA | Aprendiz | Varios | 5 | 01-09-2005 10:44:15 |
|