![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#2661
|
||||
|
||||
|
Sobre la falta de informacion sobre el comprobante WEB de la factura anulada, me dicen que lo van a consultar.
Informacion de la AEAT sobre presentar anulaciones sobre la misma factura: Cita:
Última edición por seccion_31 fecha: 04-10-2024 a las 10:59:42. |
|
#2662
|
||||
|
||||
|
Listado codigos de errror.
Han puesto en linea un listado d los codigos de error devueltos, https://prewww2.aeat.es/static_files...res.properties
Código PHP:
Última edición por bmfranky fecha: 04-10-2024 a las 11:38:09. |
|
#2663
|
|||
|
|||
|
Verifactu facturas B2C
Buenos días compañeros.
Tengo un cacao muy grande en la cabeza con respecto a si tengo que enviar todos los tiques que haga nuestra máquina o no. Nosotros hacemos balanzas de supermercado que son capaces de cobrarte, por lo tanto de emitir facturas simplificadas a particulares. Tengo entendido que las facturas B2C no tienen la obligación de ser presentadas en formato electrónico a hacienda. Pero por otro lado en el reglamento de Verifactu pone que se aplica a todas las facturas, pero Verifactu no deja de ser un sistema de factura electrónica.... ¿entonces las facturas B2C sí están obligadas o no están obligadas a presentarse por sistema Verifactu? Porque también te dicen que hay un sistema No Verifactu..... He lanzado la consulta a hacienda pero unos te dicen que no, otros te dicen que sí..... Muchas gracias |
|
#2664
|
|||
|
|||
|
Entonces si envio una factura y me devuelve un error , por ejemplo con el NIF del cliente, ¿puedo editar la factura, guardarla y volver a enviar ?
|
|
#2665
|
||||
|
||||
|
Si, pero has de volver a enviarla codificando alta por rechazo.
|
|
#2666
|
|||
|
|||
|
Cita:
Alguien piensa que NO se puede modificar una factura una vez salvada? Creia que era la base de la ley anti fraude pero a lo mejor me confundo. Por aquí venia mi duda en un post anterior que quedó sin respuesta: Cita:
MUCHAS GRACIAS ! |
|
#2667
|
||||
|
||||
|
Cita:
Cita:
|
|
#2668
|
|||
|
|||
|
Componente derivado de HTTRIO para facilitar los envíos a verifactu.
Os lo pongo , Por si le sirve a alguien como Idea o como ayuda.
El componente Requiere Delphi 12 , me baso en enviar XML preparados previamente almacenados con un certificado también almacenado en el software. Bàsicamente le cargamos el certificado , el password un XML y lo enviamos. Código:
unit VerifactuHTTPRIO;
interface
uses
System.SysUtils,
System.Classes,
Soap.Rio,
Dialogs,
Xml.XMLDoc,
Xml.XMLIntf,
Soap.SOAPHTTPClient,
Soap.SOAPHTTPTrans;
type
TBeforeExecuteEvent = procedure(const MethodName: string; SOAPRequest: TStream) of object;
TAfterExecuteEvent = procedure(const MethodName: string; SOAPResponse: TStream) of object;
TVerifactuHTTPRIO = class(THTTPRIO)
private
{ Private declarations }
FCertificate : TMemoryStream;
FCertPassword : String;
FXMLRequest : TStringList;
FXMLResponse : TStringList;
FOnAfterExecute : TAfterExecuteEvent;
FOnBeforeExecute: TBeforeExecuteEvent;
function StreamToString(aStream: TStream): string;
protected
{ Protected declarations }
procedure DoAfterExecute(const MethodName: string; Response: TStream); override;
procedure DoBeforeExecute(const MethodName: string; Request: TStream); override;
public
{ Public declarations }
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
{ Published declarations }
property OnAfterExecute: TAfterExecuteEvent read FOnAfterExecute write FOnAfterExecute;
property OnBeforeExecute: TBeforeExecuteEvent read FOnBeforeExecute write FOnBeforeExecute;
property Certificate : TMemoryStream read FCertificate write FCertificate;
property CertPassword : String read FCertPassword write FCertPassword;
property XMLRequest : TStringList read FXMLRequest write FXMLRequest;
property XMLResponse : TStringList read FXMLResponse write FXMLResponse;
end;
procedure Register;
implementation
constructor TVerifactuHTTPRIO.Create(AOwner: TComponent);
Begin
Inherited Create(Aowner);
FCertificate := TMemoryStream.Create;
FXMLRequest := TStringList.Create;
FXMLResponse := TStringList.Create;
End;
destructor TVerifactuHTTPRIO.Destroy;
begin
FCertificate.Free;
FXMLRequest.Free;
FXMLResponse.Free;
inherited;
end;
procedure TVerifactuHTTPRIO.DoBeforeExecute(const MethodName: string; Request: TStream);
begin
// Si hay XMLRequest la enviamos
if FXMLRequest.Count > 0 then
Begin
Request.Position := 0; // Importante
FXMLRequest.SaveToStream(Request);
End;
// Cetificado
HTTPWebNode.ClientCertificate.Stream := Certificate;
HTTPWebNode.ClientCertificate.Password := CertPassword;
if Assigned(FOnBeforeExecute) then
begin
FOnBeforeExecute(MethodName, Request);
Request.Position := 0;
end;
end;
procedure TVerifactuHTTPRIO.DoAfterExecute(const MethodName: string; Response: TStream);
var RespuestaXML : String;
begin
// Asignamos la respuesta y Maquillamos XML
RespuestaXML := StreamToString(Response);
RespuestaXML := Xml.XMLDoc.FormatXMLData(RespuestaXML);
FXMLResponse.Text := RespuestaXML;
if Assigned(FOnAfterExecute) then
begin
FOnAfterExecute(MethodName, Response);
Response.Position := 0;
end;
end;
function TVerifactuHTTPRIO.StreamToString(aStream: TStream): string;
var
SS: TStringStream;
begin
if aStream <> nil then
begin
SS := TStringStream.Create('');
try
SS.CopyFrom(aStream, 0);
Result := SS.DataString;
finally
SS.Free;
end;
end else
begin
Result := '';
end;
end;
procedure Register;
begin
RegisterComponents('Componentes Verifactu', [TVerifactuHTTPRIO]);
end;
end.
Como Usar: Código:
procedure TFormSoap.Button2Click(Sender: TObject);
var direccion_envio : String;
begin
direccion_envio := 'https://prewww1.aeat.es/wlpl/TIKE-CONT/ws/SistemaFacturacion/VerifactuSOAP';
// Cargar el certificado
VerifactuRIO.Certificate.LoadFromFile('MiCertificado.pfx');
VerifactuRIO.CertPassword := '1234';
// Cargar el XMl enviar , de fichero o de texto
VerifactuRIO.XMLRequest.LoadFromFile('XML_Envio_Verifactu.xml');
// Llamada
GetsfPortTypeVerifactu(False, direccion_envio, VerifactuRIO).RegFactuSistemaFacturacion(nil);
// Aquí tenemnos la respues
VerifactuRIO.XMLResponse.Text;
end;
Un Saludo |
|
#2669
|
||||
|
||||
|
Cita:
Gracias por compartirlo. Lo subo al FTP y actualizo el mensaje#2 con códigos y demás....
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#2670
|
|||
|
|||
|
Cita:
Cita:
|
|
#2671
|
|||
|
|||
|
Buenas a todos,
Tengo una duda muy básica... Voy a intentar la semana que viene hacer mi primera subida a pruebas y no tengo claro si en el xml la parte inicial que hace referencia al sopaenv es indiferente de si el fichero va al servidor de pruebas o al real. Esta parte concretamente: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd" xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"> <soapenv:Header/> <soapenv:Body> Tengo que sustituir ahí los www2.agenciatributaria.gob.es por prewww2.aeat.es dentro del xml según vaya a un lado u otro o el xml siempre es igual Gracias |
|
#2672
|
|||
|
|||
|
Cita:
Y la verdad es un alivio que siga así. La contrapartida vendrá más tarde: dado que no hay control de versión en las URL actuales, cuando Hacienda querrá hacer una nueva versión, deberán crear nuevas URL (posiblemente con un indicador de versión) y habilitarlas primero en entorno de test y más tarde en producción. Pero no estamos todavía allá. ![]() Última edición por antoine0 fecha: 04-10-2024 a las 18:43:32. Razón: Inserción de CR para lectura |
|
#2673
|
|||
|
|||
|
Cita:
Aclarado lo del fichero. Y en el comando que use para subir el xml ahí sí tengo que poner, hoy por hoy, las https://prewww...no? Gracias antoine0, |
|
#2674
|
||||
|
||||
|
Buenos días¡¡
Primero agradeceros a todos el gran esfuerzo. a alguien más le esta pasando esto ? Código:
Error al realizar el envío; (ESOAPHTTPException)-Service Unavailable (503) - 'https://prewww1.aeat.es/wlpl/TIKE-CONT/ws/SistemaFacturacion/VerifactuSOAP' ![]() ![]()
__________________
Inieeeesssstademiviiiiidaaaaa. |
|
#2675
|
|||
|
|||
|
Cita:
|
|
#2676
|
|||
|
|||
|
Cita:
![]() |
|
#2677
|
|||
|
|||
|
Prueba
Buenos días, aún me queda para llegar a la parte de los envíos, pero hay una cosa que me preocupa y pido que alguien por favor haga la prueba (cuando rehabiliten el servicio)
1-Emitir/enviar 1 factura simplificada 2-Emitir/enviar una factura sustitutiva/canje de la simplificada 3-Anular/enviar la sustitutiva 4-Emitir/enviar nueva sustitutiva/canje sobre la primera factura simplificada(que se supone se ha liberado) 5-¿Da ok o da ko(error)? 6-por otro lado(debería devolver error si se intenta mandar una sustitutiva que apunte a alguna simplificada que ya se ha emitido sustitutiva y no ha sido anulada(es así?) Gracias Última edición por ermendalenda fecha: 06-10-2024 a las 10:33:33. |
|
#2678
|
|||
|
|||
|
Dudas con algunos campos del XML
Hay algunos campos opcionales en el XML de "Registro Facturación Alta" que me gustaría corroborar por si me estoy equivocando...
- "FacturaSimplificadaArt7273": Entiendo que cuando se trate de facturas simplificadas siempre hay que poner (S)? No era más sencillo simplemente en TipoFactura poner F2 y punto? O es que el campo "FacturaSimplificadaArt7273" es para otra cosa? - "FacturaSinIdentifDestinatarioArt61d": Cuando no tengamos los datos del destinatario, Y no sea una simplificada (las simplificadas no requieren destinatario), hay que poner (S) aquí? Es que llamar a estos dos campos con el nombre del artículo (Art7273 y Art61d) me mosquea... Otros campos raros son: - "Macrodato" - "NumRegistroAcuerdoFacturacion": ni p___ idea - "IdAcuerdoSistemaInformatico": ni idea tampoco El último campo, "Signature", entiendo que es la firma del XML pero solo para cuando se trate de No-Verifactu. Del No-Verifactu aún no me he preocupado porque considero esto más importante, por ahora. |
|
#2679
|
|||
|
|||
|
Cita:
|
|
#2680
|
|||
|
|||
|
Cita:
FacturaSinIdentifDestinatarioArt61d, este campo es opcional, si lo pones a SÍ, significa que vas a emitir una Factura Simplificada con Identificación de Destinatario por que así te lo ha exigido éste. Macrodato si el importe de la factura excede del valor absoluto de 100.000.000,00 debes poner SÍ, básicamente controla que no te has equivocado con ese importe que has informado NumRegistroAcuerdoFacturacion cuando existe, tienen que ver con la posibilidad de emisión de facturas simplificadas por importes superiores a 3000€ IdAcuerdoSistemaInformatico tiene que ver con un software homologado por la administración tributaria para realizar una tarea específica |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Hijo de Informáticos | gluglu | Humor | 3 | 13-03-2007 11:05:35 |
| Adictos informaticos ... | Trigger | Humor | 2 | 11-10-2004 12:18:32 |
| Nosotros los Informáticos | Trigger | Humor | 1 | 10-10-2004 14:58:09 |
| Patrón de los Informáticos. | obiwuan | Varios | 20 | 10-09-2003 14:44:54 |
| Chistes Informaticos | jhonny | Humor | 2 | 11-08-2003 21:59:09 |
|