Problemas con sepa

User avatar
informaticaeloy
Posts: 118
Joined: Fri Dec 20, 2013 10:39 am
Location: Zaragoza, España
Contact:

Problemas con sepa

Post by informaticaeloy »

Hola, buenos días. Quería preguntaros que tengo casi terminado el tema de los ficheros sepa en xml para el envío de remesas. He usado los ficheros de QuimFerrer y la verdad que vaya currada que me ha quitado, pero tengo un problema, y es que al enviar el fichero y validarlo me salta este error:

Code: Select all | Expand

El texto supera los caraceteres permitidos tiene 5 y solo dispone de 4 Elemento Cd en la línea 38


He revisado los fuentes y en esa parte no toqué nada:

Code: Select all | Expand

        DATA CtrlSum                                                 // Control de suma        DATA ServiceLevel              AS CHARACTER INIT "SEPA"      // Código Nivel de servicio (7)        DATA SeqTp                     AS CHARACTER INIT "RCUR"      // Tipo de secuencia (2)        DATA PurposeCd  


El fragmento del xml que da error en cuestión es este:

Code: Select all | Expand

<CtrlSum>1234.56</CtrlSum><PmtTpInf><SvcLvl><Cd>        /* esta es la línea 38. este comentario no está en el original */SEPA</Cd></SvcLvl><LclInstrm><Cd>B2B</Cd></LclInstrm> 


Ando un poco perdido. ¿Se os ocurre algo que pueda hacer? Gracias.
Windows 10 + FWH 20.08 + BCC 7.4 + Harbour 3.2.0 + PSPad 5.0.3
elvira
Posts: 516
Joined: Fri Jun 29, 2012 12:49 pm

Re: Problemas con sepa

Post by elvira »

Hola,

Por favor, ¿podrías poner el código?.

Muy agradecida
User avatar
RenOmaS
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Re: Problemas con sepa

Post by RenOmaS »

Code: Select all | Expand

<Cd>        /*revisa que aqui no tengas espacios */SEPA</Cd> 


mejor crear asi:

Code: Select all | Expand

<Cd>SEPA</Cd>
Saludos/regards
RenOmaS

skype: americo.balboa
User avatar
informaticaeloy
Posts: 118
Joined: Fri Dec 20, 2013 10:39 am
Location: Zaragoza, España
Contact:

Re: Problemas con sepa

Post by informaticaeloy »

Hola Elvira, si te refieres a todo el PRG, te lo adjunto, aunque lo he personalizado para que se enlace con mis bases de datos y los campos de las mismas:

Code: Select all | Expand

 /* v.1.0 31/12/2013 * SEPA ISO 20022 http://http://www.iso20022.org/ * pain.008.001.02 Direct Debit Core y B2B  * pain.001.001.03 Credit Transfer  * * Para lenguaje Harbour - http://harbour-project.org * (c) Joaquim Ferrer Godoy <quim_ferrer@yahoo.es> * * Características : * Generacion de formato XML * Control de errores en campos requeridos * Verifica importes y numero total de efectos *  * Reglas de uso locales AEB: * (1) TRUE = Un apunte en cuenta por la suma de los importes de todas las operaciones del mensaje. *           FALSE= Un apunte en cuenta por cada una de las operaciones incluidas en el mensaje. * (2) FNAL=Último adeudo de una serie de adeudos recurrentes. *     FRST=Primer adeudo de una serie de adeudos recurrentes. *           OOFF=Adeudo correspondiente a una operación con un único pago(*). *           RCUR=Adeudo de una serie de adeudos recurrentes, cuando no se trata ni del primero ni del último. *                (*) Para este tipo de operaciones el mandato y su referencia deben ser únicos y no pueden utilizarse para operaciones  *                puntuales posteriores. Si siempre se factura a los mismos clientes, aunque varie el importe de los adeudos y la periodicidad *                de los mismos, es necesario utilizar el tipo de adeudo recurrente si se utiliza la misma referencia, creando para cada  *                cliente deudor un solo mandato que ampare todos los adeudos que se emitan.  *                El primer adeudo deberá ser FRST y los siguientes RCUR. * (3) Esta etiqueta sólo debe usarse cuando un mismo número de cuenta cubra diferentes divisas y el presentador  *            necesite identificar en cuál de estas divisas debe realizarse el asiento sobre su cuenta. * (4) Regla de uso: Solamente se admite el código ‘SLEV’ * (5) La etiqueta ‘Cláusula de gastos’ puede aparecer, bien en el nodo ‘Información del pago’ (2.0), bien en el  *            nodo ‘Información de la operación de adeudo directo’ (2.28), pero solamente en uno de ellos.  *            Se recomienda que se recoja en el bloque ‘Información del pago’ (2.0). * (6) Regla de uso: Para el sistema de adeudos SEPA se utilizará exclusivamente la etiqueta 'Otra' estructurada  *           según lo definido en el epígrafe 'Identificador del presentador' de la sección 3.3 del cuaderno. * (7) Regla de uso: Solamente se admite el código 'SEPA' */#include "hbclass.ch"#include "hbmxml.ch"#define SEPA_DIRECT_DEBIT            0#define SEPA_CREDIT_TRANSFER         1#define SEPA_SCHEME_CORE             0#define SEPA_SCHEME_COR1             1#define SEPA_SCHEME_B2B              2#define ENTIDAD_JURIDICA             0#define ENTIDAD_FISICA               1#define ENTIDAD_OTRA                 2//--------------------------------------------------------------------------------------//// --> ejemplo de uso :FUNCTION PRESEPAXML(OP,MCODIGO)         PUBLIC aDATOSREM, aRECIBO, aCABREM, aLOSRECIBOS         // OP==1 -> CORE BÁSICO XML         // OP==2 -> B2B XML         if op==1            cFitx:=cGetFile32( "Rem"+MCODIGO+"CORE.xml", "Seleccione un nombre para el fichero ...", , ".",.t. )         else            cFitx:=cGetFile32( "Rem"+MCODIGO+"B2B.xml", "Seleccione un nombre para el fichero ...", , ".",.t. )         endif         SELECT 1         aCABREM:={}         FOR N=1 TO FCOUNT()             AADD(aCABREM,FIELDGET(N))         NEXT                  SELECT 2         USE RECIBOS INDEX CODREC,NOMREC,REMREC,FECREC SHARED                  SELECT 8         USE CLIENTES INDEX CODCLIEN,NOMCLIEN,COMCLIEN, TELCLIEN, DNICLIEN, POBCLIEN SHARED                  SELECT 9         USE DATOSREM SHARED         aDATOSREM:={}         FOR N=1 TO FCOUNT()             AADD(aDATOSREM,(FIELDGET(N)))         NEXT         SELECT 4         SEEK MCODIGO         aLOSRECIBOS:={}         aTEMP:={}         DO WHILE !EOF() .AND. CODIGO==MCODIGO            FOR N=1 TO FCOUNT()                AADD(aTEMP,FIELDGET(N))            NEXT                     AADD(aLOSRECIBOS,aTEMP)            SKIP         ENDDO         SELECT 1                   SEPAENXML(OP,MCODIGO)         select 1         if file(cFitx)            MsgInfo("El fichero se creó correctamente, "+alltrim(str(FSize(cFitx)))+" bytes escritos","Información")         else            MsgStop("Ocurrió un error al crear el fichero o el proceso ha sido cancelado","Error!!!")         endifRETURN NILfunction SEPAENXML(TIPOSEPA,MCODIGO)        local n                IF TIPOSEPA==1           oDoc  := SepaXml():New( SEPA_DIRECT_DEBIT, SEPA_SCHEME_CORE, cFitx )        ELSE           oDoc  := SepaXml():New( SEPA_DIRECT_DEBIT, SEPA_SCHEME_B2B, cFitx )        endif   // Documento----------------------------------------------------------------        WITH OBJECT oDoc          :MsgId        := alltrim(id_File('Rem'+MCODIGO+'CORE'))         // Identificación del mensaje          :NbOfTxs      := 0                                     // Número de operaciones           :CtrlSum      := 0                                     // Control de suma total importes        /* Idea ! NbOfTxs y CtrlSum deberan ser informadas, contrastar con variables calculadas en Activate() */        ENDWITH   // Presentador--------------------------------------------------------------        WITH OBJECT oDoc:oInitPart          :nEntity  := ENTIDAD_JURIDICA          :Nm       := aDATOSREM[1]          :BICOrBEI := aCABREM[12]          :id       := aDATOSREM[2]        ENDWITH   // Acreedor-----------------------------------------------------------------        WITH OBJECT oDoc:oCreditor          :nEntity  := ENTIDAD_JURIDICA          :Nm       := aDATOSREM[1]          :BICOrBEI := aCABREM[12]          :id       := aDATOSREM[2]        ENDWITH        /* Si el Acreedor es tambien el presentador, especificar asi :         * oDoc:oCreditor := __objClone( oDoc:oInitPart )          */   // Deudor/es----------------------------------------------------------------        for n := 1 to LEN(aLOSRECIBOS)                oDebtor := SepaDebitActor():New()                SELECT 2                GO TOP                SEEK aLOSRECIBOS[N,2]                aRECIBO:={}                FOR i=1 TO FCOUNT()                    AADD(aRECIBO,FIELDGET(i))                NEXT                                SELECT 8                GO TOP                SEEK aRECIBO[4]                cCLIDNI:=FIELDGET(6)                WITH OBJECT oDebtor                  :Nm           := aRECIBO[5]                   :nEntity      := ENTIDAD_OTRA                  :id           := cCLIDNI                  :InstdAmt     := aRECIBO[9]                        // Importe                  :ReqdColltnDt := aRECIBO[8]                        // Fecha de cobro (Vencimiento)                  :IBAN         := aRECIBO[6]                  :BICOrBEI     := aRECIBO[12]                  :MndtId       := hb_md5(oDoc:oCreditor:Id + :id)   // Identificación del mandato, idea: Utilizar NIF                                                                     // Acreedor + NIF Deudor                   :DtOfSgntr    := ctod("31-10-2009")                // Fecha de firma                 ENDWITH                oDoc:DebtorAdd( oDebtor )        next        oDoc :NbOfTxs         := LEN(aLOSRECIBOS)                // Número de operaciones         oDoc :CtrlSum         := aCABREM[6]                      // Control de suma total importes        oDoc:Activate()return NIL// <-- ejemplo de uso ://--------------------------------------------------------------------------------------//CLASS SepaXml          DATA hXmlDoc        DATA FinancialMsg                                 DATA SchmeNm                                         DATA DocType                                         DATA cFileOut                                           DATA lMinified               AS LOGICAL    INIT .f.        // Documento compactado o con espacios y tabuladores          DATA aErrors                 AS ARRAY      INIT {}         // Control de errores          DATA ErrorMessages           AS ARRAY      INIT {=>}       // Hash mensajes de error multilenguaje          DATA aDebtors                AS ARRAY      INIT {}         // Lista de deudores        DATA MsgId                                                   // Identificación del mensaje        DATA CreDtTm                                                 // Fecha y hora de creación        DATA NbOfTxs                                                 // Número de operaciones         DATA CtrlSum                                                 // Control de suma        DATA ServiceLevel              AS CHARACTER INIT "SEPA"      // Código Nivel de servicio (7)        DATA SeqTp                     AS CHARACTER INIT "RCUR"      // Tipo de secuencia (2)        DATA PurposeCd                                               // Código categoria proposito        DATA PurposePrtry                                            // Propietario categoria proposito        DATA oInitPart        DATA oCreditor        DATA oUltimateCreditor                   /*  */        DATA oDebtor        DATA oUltimateDebtor          METHOD New()          METHOD DebtorAdd(oDebtor)                INLINE aadd(::aDebtors, oDebtor)        METHOD GroupHeader()        METHOD InfoPayment()        METHOD DirectDebit()        METHOD SetActor()        METHOD TypePayment()        METHOD IdPayment()        METHOD Creditor()        METHOD IdCreditor()        METHOD SetLanguage()          METHOD Activate()          METHOD End()                                        INLINE mxmlDelete( ::hXmlDoc )ENDCLASS//--------------------------------------------------------------------------------------//METHOD New( nFinanMsg, nScheme, cFileOut ) CLASS SepaXml         ::cFileOut         := cFileOut        ::CreDtTm         := IsoDateTime()  // Fecha y hora de creación         switch nFinanMsg                 case SEPA_DIRECT_DEBIT                         ::FinancialMsg         := "CstmrDrctDbtInitn"                         ::DocType                 := "pain.008.001.02"                         EXIT                 case SEPA_CREDIT_TRANSFER                          ::FinancialMsg         := "CstmrCdtTrfInitn"                          ::DocType                 := "pain.001.001.03"          end          switch nScheme                 case SEPA_SCHEME_CORE ; ::SchmeNm := "CORE" ; EXIT                 case SEPA_SCHEME_COR1 ; ::SchmeNm := "COR1" ; EXIT                 case SEPA_SCHEME_B2B  ; ::SchmeNm := "B2B"         ; EXIT                 otherwise ;                         ::SchmeNm := "SEPA"         end        ::oInitPart               := SepaDebitActor():New()                        ::oCreditor               := SepaDebitActor():New()        ::oUltimateCreditor       := SepaDebitActor():New()        ::oDebtor                 := SepaDebitActor():New()        ::oUltimateDebtor         := SepaDebitActor():New()return Self//--------------------------------------------------------------------------------------//METHOD GroupHeader( hParent ) CLASS SepaXml local hItem        if ::MsgId != NIL .or. ::CreDtTm != NIL .or. ::NbOfTxs != NIL .or. ::CtrlSum != NIL                hItem := ItemNew(hParent, "GrpHdr")                 // Cabecera                ItemNew(hItem, "MsgId",   35, ::MsgId)              // Identificación del mensaje                ItemNew(hItem, "CreDtTm", 19, ::CreDtTm)            // Fecha y hora de creación                ItemNew(hItem, "NbOfTxs", 15, str(::NbOfTxs, 0))    // Número de operaciones                 ItemNew(hItem, "CtrlSum", 18, ::CtrlSum)            // Control de suma                                if ::oInitPart:Nm != NIL                            // Opcional o Requerido ?                        ::SetActor(hItem, "InitgPty", ::oInitPart ) // Parte iniciadora (6)                else                        // Error                endif        endif return NIL//--------------------------------------------------------------------------------------//METHOD InfoPayment( hParent ) CLASS SepaXml/*Regla de uso: Las etiquetas ‘Último acreedor’, ‘Cláusula de gastos’ e ‘Identificación del acreedor’ pueden aparecer, bien en el nodo ‘Información del pago’ (2.0), bien en el nodo ‘Información de la operación de adeudo directo’ (2.28), pero solamente en uno de ellos. Se recomienda que se recojan en el bloque ‘Información del pago’ (2.0).*/ local hItem        if ::oDebtor:PmtInfId != NIL .or. ::oDebtor:PmtMtd != NIL .or. ;           ::oDebtor:BtchBookg != NIL .or. ::oDebtor:NbOfTxs != NIL .or. ;           ::oDebtor:CtrlSum != NIL .or. ::oDebtor:ReqdColltnDt != NIL .or. ::oDebtor:ChrgBr != NIL                hItem := ItemNew(hParent, "PmtInf")                                         // Información del pago                 ::IdPayment(hItem)                                                                                 // Identificación de la información del pago                 ::TypePayment(hItem)                                                                        // Información del tipo de pago                 ItemNew(hItem, "ReqdColltnDt", 8, ;                                         // Fecha de cobro (Vencimiento)                                ::oDebtor:ReqdColltnDt)                                                                ::Creditor(hItem)                                                                                // Datos Acreedor, Cuenta, Entidad                if ::oUltimateCreditor:Nm != NIL                                                 // Opcional, Último acreedor (6)                   ::SetActor(hItem, "UltmtCdtr", ::oUltimateCreditor)                        endif                                                                                                          // No produce error, es opcional                ItemNew(hItem, "ChrgBr", 4, ::oDebtor:ChrgBr)                         // Cláusula de gastos (5)                ::IdCreditor(hItem)                                                                         // Identificación del acreedor        endifreturn hItem//--------------------------------------------------------------------------------------//METHOD DirectDebit( hParent ) CLASS SepaXml local hItem, hChild        if ::oDebtor:InstdAmt > 0                hItem := ItemNew(hParent, "DrctDbtTxInf")                                                         // Información de la operación de adeudo directo                if ::oDebtor:InstrId != NIL .or. ::oDebtor:EndToEndId != NIL                                hChild := ItemNew(hItem, "PmtId")                                                                 // Identificación del pago                          ItemNew(hChild, "InstrId", 35, ::oDebtor:InstrId)                                 // Identificación de la instrucción                        ItemNew(hChild, "EndToEndId", 35, ::oDebtor:EndToEndId)                 // Identificación de extremo a extremo                 endif                ItemNew(hItem, "InstdAmt", 12, ::oDebtor:InstdAmt, .t.)                         // Importe ordenado                 if ::oDebtor:MndtId != NIL .or. ::oDebtor:DtOfSgntr != NIL                         hChild := ItemNew(hItem, "DrctDbtTx")                                                         // Operación de adeudo directo                         hChild := ItemNew(hChild, "MndtRltdInf")                                                 // Información del mandato                         ItemNew(hChild, "MndtId", 35, ::oDebtor:MndtId)                                 // Identificación del mandato                         ItemNew(hChild, "DtOfSgntr", 8, ::oDebtor:DtOfSgntr)                         // Fecha de firma                                                 if ::oDebtor:AmdmntInd != NIL .and. ::oDebtor:OrgnlMndtId != NIL                                ItemNew(hChild, "AmdmntInd", 5, ::oDebtor:AmdmntInd)                 // Indicador de modificación                                 hChild := ItemNew(hChild, "AmdmntInfDtls")                                         // Detalles de la modificación                                 ItemNew(hChild, "OrgnlMndtId", 35, ::oDebtor:OrgnlMndtId)         // Identificación del mandato original                         endif                endif                //CreditItem(7, "OrgnlCdtrSchmeId")                                                // Identificación del acreedor original                  /*                REVISAR !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!                ItemNew(7, "OrgnlDbtrAcct")                                                         // Cuenta del deudor original                 ItemNew(8, "Id")                                                                                 // Identificación                 ItemNew(9, "IBAN", 34, aData["DebtorIban"])                         // IBAN                ItemNew(7, "OrgnlDbtrAgt")                                                                 // Entidad del deudor original                ItemNew(8, "FinInstnId")                                                                 // Identificación de la entidad                 ItemNew(9, "Othr")                                                                                 // Otra                 ItemNew(10,"Id", 35, aData["DebtorAgent"])                                 // Identificación                ItemNew(6, "ElctrncSgntr", 1025, aData["ElctrncSgntr"]) // Firma electrónica                CreditItem(5, "CdtrSchmeId", aCreditor)                                 // Identificación del acreedor                 FieldNew(4, "UltmtCdtr")                                                                 // Último acreedor (6)                */                          if ::oDebtor:BICOrBEI != NIL                         hChild := ItemNew(hItem, "DbtrAgt")                         // Entidad del deudor                         hChild := ItemNew(hChild, "FinInstnId")                 // Identificación de la entidad                         ItemNew(hChild, "BIC", 11, ::oDebtor:BICOrBEI)        // BIC                 else                        aadd( ::aErrors, ::ErrorMessages['SEPA_DEBTOR_AGENT'] )                endif                if ::oDebtor:Nm != NIL                                                                 // Requerido                        ::SetActor(hItem, "Dbtr", ::oDebtor )                         // Deudor (6)                else                        aadd( ::aErrors, ::ErrorMessages['SEPA_DEBTOR_NAME'] )                endif                if ::oDebtor:IBAN != NIL                         hChild := ItemNew(hItem, "DbtrAcct")                         // Cuenta del deudor                        hChild := ItemNew(hChild, "Id")                                 // Identificación                        ItemNew(hChild, "IBAN", 34, ::oDebtor:IBAN)         // IBAN                else                        aadd( ::aErrors, ::ErrorMessages['SEPA_DEBTOR_ACCOUNT'] )                endif                if ::oUltimateDebtor:Nm != NIL                                                 // Opcional o Requerido ?                        ::SetActor(hItem, "UltmtDbtr", ::oUltimateDebtor)                 // Último deudor (6)                endif                if ::PurposeCd != NIL                        hChild := ItemNew(hItem, "Purp")                                                 // Propósito                         ItemNew(hChild, "Cd", 4, ::PurposeCd)                                         // Código                endif                /* Bloque solo a efectos estadisticos, para obligados en Balanza de Pagos                REVISAR !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!                ItemNew(4, "RgltryRptg")                                                                 // Información regulatoria                ItemNew(5, "DbtCdtRptgInd", 4, aData["DbtCdtRptgInd"])        // Alcance de la información                ItemNew(5, "Dtls")                                                                                 // Detalles                ItemNew(6, "Cd", 3, aData["DtlsCode"])                                         // Código                ItemNew(6, "Amt", 21, aData["Amt"], .t.)                                 // Importe                ItemNew(6, "Inf", 35, aData["Inf"])                                                // Información                */                if ::oDebtor:Info != NIL                        hChild := ItemNew(hItem, "RmtInf")                                                 // Concepto                        ItemNew(hChild, "Ustrd", 140, ::oDebtor:Info)                         // No estructurado                endif                /* Bloque para informacion estructurada                REVISAR !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!                ItemNew(5, "Strd")                                                                                 // Estructurado                ItemNew(6, "CdtrRefInf")                                                                // Referencia facilitada por el acreedor                ItemNew(7, "Tp")                                                                                 // Tipo de referencia                ItemNew(8, "CdOrPrtry")                                                                 // Código o propietario                ItemNew(9, "Cd", 4, aData["RefInf"])                                         // Código                ItemNew(8, "Issr", 35, aData["Issr"])                                         // Emisor                ItemNew(7, "Ref", 35, aData["Ref"])                                                 // Referencia                */        else                // Error        endifreturn NIL//--------------------------------------------------------------------------------------//METHOD SetActor( hParent, cLabel, oActor ) CLASS SepaXml        local hItem := ItemNew(hParent, cLabel)                                                                         // Actor        ItemNew(hItem, "Nm", 70, oActor:Nm)                                                                                // Nombre         if oActor:BICOrBEI != NIL .or. oActor:BirthDt != NIL .or. oActor:PrvcOfBirth != NIL .or. ;           oActor:CityOfBirth != NIL .or. oActor:CtryOfBirth .or. oActor:Id != NIL .or. oActor:Issr        != NIL                hItem := ItemNew(hItem, "Id")                                                                                 // Identificación                 if oActor:nEntity == ENTIDAD_JURIDICA                        hItem := ItemNew(hItem, "OrgId")                                                                 // Persona jurídica                elseif oActor:nEntity == ENTIDAD_FISICA                                hItem := ItemNew(hItem, "PrvtId")                                                                 // Persona física                 else                        // Error, no se ha especificado un tipo de identificador valido                        // Solo existen 2 opciones : Fisica o Juridica                endif                switch oActor:nEntity                        case ENTIDAD_JURIDICA                                if oActor:BICOrBEI != NIL                                        ItemNew(hItem, "BICOrBEI", 11, oActor:BICOrBEI)                 // BIC o BEI                                 else                                        // Error                                endif                                EXIT                         case ENTIDAD_FISICA                                if oActor:BirthDt != NIL .or. oActor:PrvcOfBirth != NIL .or. ;                                   oActor:CityOfBirth != NIL .or. oActor:CtryOfBirth != NIL                                        hItem := ItemNew(hItem, "DtAndPlcOfBirth")                                 // Fecha y lugar de nacimiento                                         ItemNew(hItem, "BirthDt", 8, oActor:BirthDt)                         // Fecha de nacimiento                                         ItemNew(hItem, "PrvcOfBirth", 35, oActor:PrvcOfBirth)         // Provincia de nacimiento                                        ItemNew(hItem, "CityOfBirth", 35, oActor:CityOfBirth)         // Ciudad de nacimiento                                         ItemNew(hItem, "CtryOfBirth", 2, oActor:CtryOfBirth)         // País de nacimiento                                else                                        // Error                                endif                                EXIT                         otherwise                                if oActor:Id != NIL .or. oActor:Cd != NIL .or. oActor:Prtry != NIL .or. oActor:Issr != NIL                                        hItem := ItemNew(hItem, "Othr")                                                 // Otra                                         ItemNew(hItem, "Id", 35, oActor:Id)                                         // Identificación                                         if oActor:Cd != NIL .or. oActor:Prtry != NIL                                                hChild := ItemNew(hItem, "SchmeNm")                                 // Nombre del esquema                                                 ItemNew(hChild +5, "Cd", 4, oActor:Cd)                                 // Código                                                 ItemNew(hChild +5, "Prtry", 35, oActor:Prtry)                 // Propietario                                        endif                                        ItemNew(hItem, "Issr", 35, oActor:Issr)                                 // Emisor                                else                                        // Error                                endif                end        else                // Error        endifreturn NIL//--------------------------------------------------------------------------------------//METHOD IdPayment( hItem ) CLASS SepaXml        /* Generar identificador de pago, a partir del mensaje */        ::oDebtor:PmtInfId := alltrim(::MsgId)// +"-"+ strzero(::oDebtor:NbOfTxs, 3)        ItemNew(hItem, "PmtInfId", 35, ::oDebtor:PmtInfId)                        // Identificación de la información del pago         ItemNew(hItem, "PmtMtd", 2, ::oDebtor:PmtMtd)                                 // Método de pago        ItemNew(hItem, "BtchBookg", 5, ::oDebtor:BtchBookg)                 // Indicador de apunte en cuenta        ItemNew(hItem, "NbOfTxs", 15, str(::oDebtor:NbOfTxs, 0))         // Número de operaciones         ItemNew(hItem, "CtrlSum", 18, ::oDebtor:CtrlSum)                         // Control de suma return NIL//--------------------------------------------------------------------------------------//METHOD TypePayment( hParent ) CLASS SepaXml local hItem, hChild         hItem := ItemNew(hParent, "PmtTpInf")                                                 // Información del tipo de pago         hChild := ItemNew(hItem, "SvcLvl")                                                         // Nivel de servicio         ItemNew(hChild, "Cd", 4, ::ServiceLevel)                                         // Código Nivel de servicio        hChild := ItemNew(hItem, "LclInstrm")                                                 // Instrumento local          ItemNew(hChild, "Cd", 35, ::SchmeNm)                                                // Código Instrumento local        ItemNew(hItem, "SeqTp", 4, ::SeqTp)                                                 // Tipo de secuencia        /* Lista de códigos recogidos en la norma ISO 20022            Ex: CASH=CashManagementTransfer (Transaction is a general cash management instruction) */        if ::PurposeCd != NIL                hChild := ItemNew(hItem, "CtgyPurp")                                         // Categoría del propósito                 ItemNew(hChild, "Cd", 4, ::PurposeCd)                                         // Código                 ItemNew(hChild, "Prtry", 35, ::PurposePrtry)                         // Propietario        endifreturn NIL//--------------------------------------------------------------------------------------//METHOD Creditor( hParent ) CLASS SepaXml local hItem        if ::oCreditor:Nm != NIL                hItem := ItemNew(hParent, "Cdtr")                                                         // Acreedor                 ItemNew(hItem, "Nm", 70, ::oCreditor:Nm)                                         // Nombre                 if ::oCreditor:Ctry != NIL .or. ::oCreditor:AdrLine1 != NIL                        hItem := ItemNew(hItem, "PstlAdr")                                                 // Dirección postal                        ItemNew(hItem, "Ctry", 2, ::oCreditor:Ctry)                         // País                        ItemNew(hItem, "AdrLine", 70, ::oCreditor:AdrLine1)         // Dirección en texto libre                        ItemNew(hItem, "AdrLine", 70, ::oCreditor:AdrLine2)         // Dirección en texto libre                else                        // Error                        //aadd( ::aErrors, ::aMessages['creditor_does_not_exist'] )                endif        else                // Error        endif        if ::oCreditor:IBAN != NIL                hItem := ItemNew(hParent, "CdtrAcct")                                                 // Cuenta del acreedor        //        ItemNew(hItem, "Ccy", 3, aData["Ccy"])                                                 // Moneda                 hItem := ItemNew(hItem, "Id")                                                                 // Identificación                ItemNew(hItem, "IBAN", 34, ::oCreditor:IBAN)                                 // IBAN        else                // Error        endif        if ::oCreditor:BIC != NIL                hItem := ItemNew(hParent, "CdtrAgt")                                                 // Entidad del acreedor                hItem := ItemNew(hItem, "FinInstnId")                                                 // Identificación de la entidad                 ItemNew(hItem, "BIC", 11, ::oCreditor:BIC)                                         // BIC        else                // Error        endif return NIL//--------------------------------------------------------------------------------------//METHOD IdCreditor( hParent ) CLASS SepaXml        if ::oCreditor:Id != NIL                hItem := ItemNew(hParent, "CdtrSchmeId")                                         // Identificación del acreedor                 hItem := ItemNew(hItem, "Id")                                                                 // Identificación                  hItem := ItemNew(hItem, "PrvtId")                                                         // Identificación privada                  hItem := ItemNew(hItem, "Othr")                                                         // Otra                 ItemNew(hItem, "Id", 35, ::oCreditor:Id)                                        // Identificación                 if ::oCreditor:Prtry != NIL                        hItem := ItemNew(hItem +4, "SchmeNm")                                         // Nombre del esquema                         ItemNew(hItem, "Prtry", 35, ::oCreditor:Prtry)                        // Propietario                 endif        else                // Error        endifreturn NIL//--------------------------------------------------------------------------------------//METHOD SetLanguage() CLASS SepaXml        ::ErrorMessages['SEPA_DEBTOR_AGENT']         := "La entidad del cliente no existe"        ::ErrorMessages['SEPA_DEBTOR_NAME']                 := "El nombre del deudor no existe"        ::ErrorMessages['SEPA_DEBTOR_ACCOUNT']         := "La cuenta del deudor no existe"return NIL//--------------------------------------------------------------------------------------//METHOD Activate() CLASS SepaXml local hItem, oDebtor        ::SetLanguage()        // Comprobar numero de operaciones y suma total de importes        for each oDebtor in ::aDebtors                ::oDebtor:NbOfTxs += 1                ::oDebtor:CtrlSum += oDebtor:InstdAmt        next        if ::NbOfTxs != ::oDebtor:NbOfTxs                 outstd( 'Existen errores, no es posible continuar' )                return(NIL)        endif        if ::CtrlSum != ::oDebtor:CtrlSum                outstd( 'Existen errores, no es posible continuar' )                return(NIL)        endif        ::hXmlDoc          := mxmlNewXML()          hItem                  := mxmlNewElement(::hXmlDoc, "Document")        mxmlElementSetAttr( hItem, "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance" )        mxmlElementSetAttr( hItem, "xmlns","urn:iso:std:iso:20022:tech:xsd:"+ ::DocType )        hItem := ItemNew(hItem, ::FinancialMsg)                                                // Raíz del mensaje         ::GroupHeader(hItem)                                                                                 // Cabecera        /* La informacion del pago puede incluir varios adeudos por fecha de cobro         * Aqui se asume fecha de cobro distinta para cada adeudo, no realizando agrupacion.         */        for each oDebtor in ::aDebtors                ::oDebtor:= __objClone(oDebtor)                ::oDebtor:NbOfTxs := 1                ::oDebtor:CtrlSum := oDebtor:InstdAmt                hChild          := ::InfoPayment(hItem)                                                 // Informacion del pago                ::DirectDebit(hChild)                                                                        // Adeudo individual        next        if len( ::aErrors ) > 0        aeval( ::aErrors, {|err| outstd( err + hb_eol() ) } )        else                if ::lMinified                        mxmlSaveFile( ::hXmlDoc, ::cFileOut, MXML_NO_CALLBACK )                else                        mxmlSaveFile( ::hXmlDoc, ::cFileOut, @WhiteSpace() )                endif        endif        ::End()return NIL//--------------------------------------------------------------------------------------//CLASS SepaDebitActor        DATA nEntity        DATA Nm                                                                                                 // Nombre        DATA Ctry                                                                                                 // Pais        DATA AdrLine1                                                                                         // Dirección en texto libre        DATA AdrLine2                                                                                         // Se permiten 2 etiquetas para direccion        DATA IBAN                                                                                                // IBAN        DATA BIC                                                                                                // BIC        DATA BICOrBEI                                                                                         // BIC o BEI         DATA BirthDt                                                                                        // Fecha de nacimiento         DATA PrvcOfBirth                                                                                 // Provincia de nacimiento        DATA CityOfBirth                                                                                // Ciudad de nacimiento         DATA CtryOfBirth                                                                                 // País de nacimiento        DATA Id                                                                                                        // Identificación         DATA Issr                                                                                                // Emisor         DATA Cd                                                                                                 // Codigo        DATA Prtry                                                                                                 // Propietario        DATA PmtInfId                                                                                          // Identificación de la información del pago         DATA BtchBookg                 AS CHARACTER INIT "TRUE"                        // Indicador de apunte en cuenta (1)        DATA ReqdColltnDt                                                                                 // Fecha de cobro (Vencimiento)        DATA Info                                                                                                 // Informacion no estructurada, p.e., concepto del cobro        DATA NbOfTxs                AS NUMERIC INIT 0                                        // Número de operaciones         DATA CtrlSum                 AS NUMERIC INIT 0.00                                 // Control de suma         DATA PmtMtd                 AS CHARACTER INIT "DD"          READONLY         // Método de pago Regla de uso: Solamente se admite el código ‘DD’        DATA ChrgBr                 AS CHARACTER INIT "SLEV" READONLY         // Cláusula de gastos (4)        DATA InstrId                                                                                         // Identificación de la instrucción        DATA EndToEndId                                                                                 // Identificación de extremo a extremo         DATA InstdAmt                 AS NUMERIC INIT 0.00                                 // Importe ordenado         DATA MndtId                                                                                                // Identificación del mandato         DATA DtOfSgntr                                                                                        // Fecha de firma         DATA AmdmntInd                                                                                          // Indicador de modificación         DATA OrgnlMndtId                                                                                 // Identificación del mandato original         METHOD New()         ENDCLASS//--------------------------------------------------------------------------------------//METHOD New() CLASS SepaDebitActorreturn Self//--------------------------------------------------------------------------------------//static function ItemNew(hParent, cLabel, nLen, xValue, lCurrency) local hItem, cType         if nLen != NIL                 if xValue != NIL                        hItem := mxmlNewElement( hParent, cLabel )                        cType := valtype(xValue)                        if cType == "N"                                xValue := ltrim( str(xValue, nLen, 2) )                        elseif cType == "D"                                xValue := sDate(xValue)                        endif                        mxmlNewText( hItem, 0, xValue )                        //mxmlNewText( hItem, 0, padR(xValue, nLen) )                endif        else                hItem := mxmlNewElement( hParent, cLabel )        endif        if hItem != NIL .and. lCurrency != NIL           mxmlElementSetAttr( hItem, "Ccy", "EUR" )        endifreturn hItem//--------------------------------------------------------------------//static function WhiteSpace( hNode, nWhere )  return If(nWhere == MXML_WS_AFTER_OPEN .or. nWhere == MXML_WS_AFTER_CLOSE, hb_eol(), NIL)//--------------------------------------------------------------------//
Windows 10 + FWH 20.08 + BCC 7.4 + Harbour 3.2.0 + PSPad 5.0.3
User avatar
informaticaeloy
Posts: 118
Joined: Fri Dec 20, 2013 10:39 am
Location: Zaragoza, España
Contact:

Re: Problemas con sepa

Post by informaticaeloy »

RenOmaS, efectivamente, si modifico el fichero de salida XML y en vez de esto:

Code: Select all | Expand

<Cd>SEPA</Cd>


pongo esto:

Code: Select all | Expand

<Cd>SEPA</Cd>


la validación es correcta. Ahora tengo que revisar 2 cosas, una el como hacerlo, ya que el código de QuimFerrer se me queda un poco grande, y otra que hay veces que no se genera el fichero xml, da todo el proceso OK, pero cuando voy a buscarlo donde se debería haber guardado no está

Gracias. Saludos!
Windows 10 + FWH 20.08 + BCC 7.4 + Harbour 3.2.0 + PSPad 5.0.3
elvira
Posts: 516
Joined: Fri Jun 29, 2012 12:49 pm

Re: Problemas con sepa

Post by elvira »

Eloy,

Muchas gracias. Igual te ayuda esto:

Code: Select all | Expand

fichero := "PRUEBA.xml" nHandle:= FCreate( fichero ) // RAIZ DEL MENSAJE cadena := "<?xml version=" + CHR(34) + "1.0" + CHR(34) + " encoding=" + CHR(34) + "utf-8" + CHR(34) + "?>" FWriteLn( nHandle , cadena ) cadena := "<Document xmlns=" + CHR(34) + "urn:iso:std:iso:20022:tech:xsd:pain.008.001.02" + CHR(34) + " xmlns:xsi=" + CHR(34) + "http://www.w3.org/2001/XMLSchema-instance" + CHR(34) + ">" FWriteLn( nHandle , cadena ) cadena := "<CstmrDrctDbtInitn>" FWriteLn( nHandle , cadena ) // CABECERA cadena := "<GrpHdr>" FWriteLn( nHandle , cadena ) cadena := "<MsgId>" + "PRE" + Str( Year( date() ), 4 ) + Padl( Month( date() ), 2, "0" ) + Padl( Day( date() ), 2, "0" ) + Padr( cTime, 11, "0" ) + Padr( oDatos[ ( dbGesBanco )->( fieldpos( "Codigo" ) ) ], 13, "0" ) + "</MsgId>" FWriteLn( nHandle , cadena ) cadena := "<CreDtTm>" + Str( Year( date() ), 4 ) + "-" + Padl( Month( date() ), 2, "0" ) + "-" + Padl( Day( date() ), 2, "0" ) + "T" + time() + "</CreDtTm>" FWriteLn( nHandle , cadena ) cadena := "<NbOfTxs>" + AllTrim( Str( nCont ) ) + "</NbOfTxs>" FWriteLn( nHandle , cadena ) cadena := "<CtrlSum>" + AllTrim( Transform( nTotImp, cPictImpSEPA(.F.) ) ) + "</CtrlSum>" FWriteLn( nHandle , cadena ) cadena := "<InitgPty>" FWriteLn( nHandle , cadena ) cadena := "<Nm>" + AllTrim( Padr( ArreglaNombre( oDatos[ ( dbGesBanco )->( fieldpos( "NOMBRE" ) ) ] ), 70, " " ) ) + "</Nm>" FWriteLn( nHandle , cadena ) cadena := "<Id>" FWriteLn( nHandle , cadena ) cadena := "<OrgId>" FWriteLn( nHandle , cadena ) cadena := "<Othr>" FWriteLn( nHandle , cadena ) cadena := "<Id>" + AllTrim( "ES" + cGetDigitIDSEPA( AllTrim( oDatos[ ( dbGesBanco )->( fieldpos( "NIF" ) ) ] ), "ES" ) + oDatos[ ( dbGesBanco )->( fieldpos( "Sufijo" ) ) ] + Padr( oDatos[ ( dbGesBanco )->( fieldpos( "NIF" ) ) ], 28, " " ) ) + "</Id>" FWriteLn( nHandle , cadena ) cadena := "</Othr>" FWriteLn( nHandle , cadena ) cadena := "</OrgId>" FWriteLn( nHandle , cadena ) cadena := "</Id>" FWriteLn( nHandle , cadena ) cadena := "</InitgPty>" FWriteLn( nHandle , cadena ) cadena := "</GrpHdr>" FWriteLn( nHandle , cadena ) // INFORMACION DEL PAGO cadena := "<PmtInf>" FWriteLn( nHandle , cadena ) cadena := "<PmtInfId>" + Str( Year( date() ), 4 ) + Padl( Month( date() ), 2, "0" ) + Padl( Day( date() ), 2, "0" ) + Padr( cTime, 11, "0" ) + Padr( oDatos[ ( dbGesBanco )->( fieldpos( "Codigo" ) ) ], 13, "0" ) + "</PmtInfId>" FWriteLn( nHandle , cadena ) cadena := "<PmtMtd>DD</PmtMtd>" FWriteLn( nHandle , cadena ) cadena := "<PmtTpInf>" FWriteLn( nHandle , cadena ) cadena := "<SvcLvl>" FWriteLn( nHandle , cadena ) cadena := "<Cd>SEPA</Cd>" FWriteLn( nHandle , cadena ) cadena := "</SvcLvl>" FWriteLn( nHandle , cadena ) cadena := "<LclInstrm>" FWriteLn( nHandle , cadena ) cadena := "<Cd>CORE</Cd>" FWriteLn( nHandle , cadena ) cadena := "</LclInstrm>" FWriteLn( nHandle , cadena ) cadena := "<SeqTp>RCUR</SeqTp>" FWriteLn( nHandle , cadena ) cadena := "</PmtTpInf>" FWriteLn( nHandle , cadena ) cadena := "<ReqdColltnDt>" + Str( Year( dFecha ), 4 ) + "-" + Padl( Month( dFecha ), 2, "0" ) + "-" + Padl( Day( dFecha ), 2, "0" ) + "</ReqdColltnDt>" FWriteLn( nHandle , cadena ) cadena := "<Cdtr>" FWriteLn( nHandle , cadena ) cadena := "<Nm>" + AllTrim( Padr( ArreglaNombre( oDatos[ ( dbGesBanco )->( fieldpos( "NOMBRE" ) ) ] ), 70, " " ) ) + "</Nm>" FWriteLn( nHandle , cadena ) cadena := "</Cdtr>" FWriteLn( nHandle , cadena ) cadena := "<CdtrAcct>" FWriteLn( nHandle , cadena ) cadena := "<Id>" FWriteLn( nHandle , cadena ) cadena := "<IBAN>" + AllTrim( Padr( oDatos[ ( dbGesBanco )->( fieldpos( "CCCABONO" ) ) ], 34, " " ) ) + "</IBAN>" FWriteLn( nHandle , cadena ) cadena := "</Id>" FWriteLn( nHandle , cadena ) cadena := "</CdtrAcct>" FWriteLn( nHandle , cadena ) cadena := "<CdtrAgt>" FWriteLn( nHandle , cadena ) cadena := "<FinInstnId>" FWriteLn( nHandle , cadena ) cadena := "</FinInstnId>" FWriteLn( nHandle , cadena ) cadena := "</CdtrAgt>" FWriteLn( nHandle , cadena ) cadena := "<CdtrSchmeId>" FWriteLn( nHandle , cadena ) cadena := "<Id>" FWriteLn( nHandle , cadena ) cadena := "<PrvtId>" FWriteLn( nHandle , cadena ) cadena := "<Othr>" FWriteLn( nHandle , cadena ) cadena := "<Id>" + AllTrim( "ES" + cGetDigitIDSEPA( AllTrim( oDatos[ ( dbGesBanco )->( fieldpos( "NIF" ) ) ] ), "ES" ) + oDatos[ ( dbGesBanco )->( fieldpos( "Sufijo" ) ) ] + Padr( oDatos[ ( dbGesBanco )->( fieldpos( "NIF" ) ) ], 28, " " ) ) + "</Id>" FWriteLn( nHandle , cadena ) cadena := "<SchmeNm>" FWriteLn( nHandle , cadena ) cadena := "<Prtry>SEPA</Prtry>" FWriteLn( nHandle , cadena ) cadena := "</SchmeNm>" FWriteLn( nHandle , cadena ) cadena := "</Othr>" FWriteLn( nHandle , cadena ) cadena := "</PrvtId>" FWriteLn( nHandle , cadena ) cadena := "</Id>" FWriteLn( nHandle , cadena ) cadena := "</CdtrSchmeId>" FWriteLn( nHandle , cadena ) // INFORMACION DEL ADEUDO DIRECTO ( cDbTmp )->( DbGoTop() ) nCont := 0 nTotImp := 0 nContReg := 0 While ( cDbTmp )->( !Eof() ) If ( cDbTmp )->LSELECT .and. ( cDBTmp )->IMPORTE > 0 nCont ++ nTotImp += ( cDbTmp )->IMPORTE cadena := "<DrctDbtTxInf>" FWriteLn( nHandle , cadena ) cadena := "<PmtId>" FWriteLn( nHandle , cadena ) cadena := "<EndToEndId>" + Padr( "REMESA HERMANDAD REF. "+oDatos[ ( dbGesBanco )->( fieldpos( "Codigo" ) ) ]+( cDbTmp )->CODIGO, 35, " " ) + "</EndToEndId>" FWriteLn( nHandle , cadena ) cadena := "</PmtId>" FWriteLn( nHandle , cadena ) cadena := "<InstdAmt Ccy=" + CHR(34) + "EUR" + CHR(34) + ">" + AllTrim( Transform( ( cDbTmp )->IMPORTE, cPictImpSEPA(.F.) ) ) + "</InstdAmt>" FWriteLn( nHandle , cadena ) cadena := "<DrctDbtTx>" FWriteLn( nHandle , cadena ) cadena := "<MndtRltdInf>" FWriteLn( nHandle , cadena ) cadena := "<MndtId>" + Padr( ( cDbTmp )->REFBANCO, 35, " " ) + "</MndtId>" FWriteLn( nHandle , cadena ) cadena := "<DtOfSgntr>" + Str( Year( ( cDbTmp )->MANDATO ), 4 ) + "-" + Padl( Month( ( cDbTmp )->MANDATO ), 2, "0" ) + "-" + Padl( Day( ( cDbTmp )->MANDATO ), 2, "0" ) + "</DtOfSgntr>" FWriteLn( nHandle , cadena ) cadena := "</MndtRltdInf>" FWriteLn( nHandle , cadena ) cadena := "</DrctDbtTx>" FWriteLn( nHandle , cadena ) cadena := "<DbtrAgt>" FWriteLn( nHandle , cadena ) cadena := "<FinInstnId>" FWriteLn( nHandle , cadena ) cadena := "</FinInstnId>" FWriteLn( nHandle , cadena ) cadena := "</DbtrAgt>" FWriteLn( nHandle , cadena ) cadena := "<Dbtr>" FWriteLn( nHandle , cadena ) cadena := "<Nm>" + AllTrim( Padr( ArreglaNombre( AllTrim( ( cDbTmp )->NOMBRE ) + " " + AllTrim( ( cDbTmp )->APELLIDOS ) ), 70, " " ) ) + "</Nm>" FWriteLn( nHandle , cadena ) cadena := "</Dbtr>" FWriteLn( nHandle , cadena ) cadena := "<DbtrAcct>" FWriteLn( nHandle , cadena ) cadena := "<Id>" FWriteLn( nHandle , cadena ) cadena := "<IBAN>" + AllTrim( Padr( "ES" + DCIdentificador( ( cDbTmp )->CBANCO + ( cDbTmp )->COFICINA + ( cDbTmp )->CCUENTA + "ES00" ) + ( cDbTmp )->CBANCO + ( cDbTmp )->COFICINA + ( cDbTmp )->CCUENTA, 34, " " ) ) + "</IBAN>" FWriteLn( nHandle , cadena ) cadena := "</Id>" FWriteLn( nHandle , cadena ) cadena := "</DbtrAcct>" FWriteLn( nHandle , cadena ) cadena := "<RmtInf>" FWriteLn( nHandle , cadena ) cadena := "<Ustrd>" + AllTrim( Padr( ArreglaNombre( AllTrim( ( cDbTmp )->OBSERV ) ), 140, " " ) ) + "</Ustrd>" FWriteLn( nHandle , cadena ) cadena := "</RmtInf>" FWriteLn( nHandle , cadena ) cadena := "</DrctDbtTxInf>" FWriteLn( nHandle , cadena ) end if ( cDbTmp )->( DbSkip() ) end while cadena := "</PmtInf>" FWriteLn( nHandle , cadena ) cadena := "</CstmrDrctDbtInitn>" FWriteLn( nHandle , cadena ) cadena := "</Document>" FWriteLn( nHandle , cadena ) FClose(nHandle)andaretor    Posts: 2Joined: Thu Nov 27, 2014 11:58 am  
elvira
Posts: 516
Joined: Fri Jun 29, 2012 12:49 pm

Re: Problemas con sepa

Post by elvira »

Eloy,

Muchas gracias. Igual te ayuda esto:

Code: Select all | Expand

fichero := "PRUEBA.xml" nHandle:= FCreate( fichero ) // RAIZ DEL MENSAJE cadena := "<?xml version=" + CHR(34) + "1.0" + CHR(34) + " encoding=" + CHR(34) + "utf-8" + CHR(34) + "?>" FWriteLn( nHandle , cadena ) cadena := "<Document xmlns=" + CHR(34) + "urn:iso:std:iso:20022:tech:xsd:pain.008.001.02" + CHR(34) + " xmlns:xsi=" + CHR(34) + "http://www.w3.org/2001/XMLSchema-instance" + CHR(34) + ">" FWriteLn( nHandle , cadena ) cadena := "<CstmrDrctDbtInitn>" FWriteLn( nHandle , cadena ) // CABECERA cadena := "<GrpHdr>" FWriteLn( nHandle , cadena ) cadena := "<MsgId>" + "PRE" + Str( Year( date() ), 4 ) + Padl( Month( date() ), 2, "0" ) + Padl( Day( date() ), 2, "0" ) + Padr( cTime, 11, "0" ) + Padr( oDatos[ ( dbGesBanco )->( fieldpos( "Codigo" ) ) ], 13, "0" ) + "</MsgId>" FWriteLn( nHandle , cadena ) cadena := "<CreDtTm>" + Str( Year( date() ), 4 ) + "-" + Padl( Month( date() ), 2, "0" ) + "-" + Padl( Day( date() ), 2, "0" ) + "T" + time() + "</CreDtTm>" FWriteLn( nHandle , cadena ) cadena := "<NbOfTxs>" + AllTrim( Str( nCont ) ) + "</NbOfTxs>" FWriteLn( nHandle , cadena ) cadena := "<CtrlSum>" + AllTrim( Transform( nTotImp, cPictImpSEPA(.F.) ) ) + "</CtrlSum>" FWriteLn( nHandle , cadena ) cadena := "<InitgPty>" FWriteLn( nHandle , cadena ) cadena := "<Nm>" + AllTrim( Padr( ArreglaNombre( oDatos[ ( dbGesBanco )->( fieldpos( "NOMBRE" ) ) ] ), 70, " " ) ) + "</Nm>" FWriteLn( nHandle , cadena ) cadena := "<Id>" FWriteLn( nHandle , cadena ) cadena := "<OrgId>" FWriteLn( nHandle , cadena ) cadena := "<Othr>" FWriteLn( nHandle , cadena ) cadena := "<Id>" + AllTrim( "ES" + cGetDigitIDSEPA( AllTrim( oDatos[ ( dbGesBanco )->( fieldpos( "NIF" ) ) ] ), "ES" ) + oDatos[ ( dbGesBanco )->( fieldpos( "Sufijo" ) ) ] + Padr( oDatos[ ( dbGesBanco )->( fieldpos( "NIF" ) ) ], 28, " " ) ) + "</Id>" FWriteLn( nHandle , cadena ) cadena := "</Othr>" FWriteLn( nHandle , cadena ) cadena := "</OrgId>" FWriteLn( nHandle , cadena ) cadena := "</Id>" FWriteLn( nHandle , cadena ) cadena := "</InitgPty>" FWriteLn( nHandle , cadena ) cadena := "</GrpHdr>" FWriteLn( nHandle , cadena ) // INFORMACION DEL PAGO cadena := "<PmtInf>" FWriteLn( nHandle , cadena ) cadena := "<PmtInfId>" + Str( Year( date() ), 4 ) + Padl( Month( date() ), 2, "0" ) + Padl( Day( date() ), 2, "0" ) + Padr( cTime, 11, "0" ) + Padr( oDatos[ ( dbGesBanco )->( fieldpos( "Codigo" ) ) ], 13, "0" ) + "</PmtInfId>" FWriteLn( nHandle , cadena ) cadena := "<PmtMtd>DD</PmtMtd>" FWriteLn( nHandle , cadena ) cadena := "<PmtTpInf>" FWriteLn( nHandle , cadena ) cadena := "<SvcLvl>" FWriteLn( nHandle , cadena ) cadena := "<Cd>SEPA</Cd>" FWriteLn( nHandle , cadena ) cadena := "</SvcLvl>" FWriteLn( nHandle , cadena ) cadena := "<LclInstrm>" FWriteLn( nHandle , cadena ) cadena := "<Cd>CORE</Cd>" FWriteLn( nHandle , cadena ) cadena := "</LclInstrm>" FWriteLn( nHandle , cadena ) cadena := "<SeqTp>RCUR</SeqTp>" FWriteLn( nHandle , cadena ) cadena := "</PmtTpInf>" FWriteLn( nHandle , cadena ) cadena := "<ReqdColltnDt>" + Str( Year( dFecha ), 4 ) + "-" + Padl( Month( dFecha ), 2, "0" ) + "-" + Padl( Day( dFecha ), 2, "0" ) + "</ReqdColltnDt>" FWriteLn( nHandle , cadena ) cadena := "<Cdtr>" FWriteLn( nHandle , cadena ) cadena := "<Nm>" + AllTrim( Padr( ArreglaNombre( oDatos[ ( dbGesBanco )->( fieldpos( "NOMBRE" ) ) ] ), 70, " " ) ) + "</Nm>" FWriteLn( nHandle , cadena ) cadena := "</Cdtr>" FWriteLn( nHandle , cadena ) cadena := "<CdtrAcct>" FWriteLn( nHandle , cadena ) cadena := "<Id>" FWriteLn( nHandle , cadena ) cadena := "<IBAN>" + AllTrim( Padr( oDatos[ ( dbGesBanco )->( fieldpos( "CCCABONO" ) ) ], 34, " " ) ) + "</IBAN>" FWriteLn( nHandle , cadena ) cadena := "</Id>" FWriteLn( nHandle , cadena ) cadena := "</CdtrAcct>" FWriteLn( nHandle , cadena ) cadena := "<CdtrAgt>" FWriteLn( nHandle , cadena ) cadena := "<FinInstnId>" FWriteLn( nHandle , cadena ) cadena := "</FinInstnId>" FWriteLn( nHandle , cadena ) cadena := "</CdtrAgt>" FWriteLn( nHandle , cadena ) cadena := "<CdtrSchmeId>" FWriteLn( nHandle , cadena ) cadena := "<Id>" FWriteLn( nHandle , cadena ) cadena := "<PrvtId>" FWriteLn( nHandle , cadena ) cadena := "<Othr>" FWriteLn( nHandle , cadena ) cadena := "<Id>" + AllTrim( "ES" + cGetDigitIDSEPA( AllTrim( oDatos[ ( dbGesBanco )->( fieldpos( "NIF" ) ) ] ), "ES" ) + oDatos[ ( dbGesBanco )->( fieldpos( "Sufijo" ) ) ] + Padr( oDatos[ ( dbGesBanco )->( fieldpos( "NIF" ) ) ], 28, " " ) ) + "</Id>" FWriteLn( nHandle , cadena ) cadena := "<SchmeNm>" FWriteLn( nHandle , cadena ) cadena := "<Prtry>SEPA</Prtry>" FWriteLn( nHandle , cadena ) cadena := "</SchmeNm>" FWriteLn( nHandle , cadena ) cadena := "</Othr>" FWriteLn( nHandle , cadena ) cadena := "</PrvtId>" FWriteLn( nHandle , cadena ) cadena := "</Id>" FWriteLn( nHandle , cadena ) cadena := "</CdtrSchmeId>" FWriteLn( nHandle , cadena ) // INFORMACION DEL ADEUDO DIRECTO ( cDbTmp )->( DbGoTop() ) nCont := 0 nTotImp := 0 nContReg := 0 While ( cDbTmp )->( !Eof() ) If ( cDbTmp )->LSELECT .and. ( cDBTmp )->IMPORTE > 0 nCont ++ nTotImp += ( cDbTmp )->IMPORTE cadena := "<DrctDbtTxInf>" FWriteLn( nHandle , cadena ) cadena := "<PmtId>" FWriteLn( nHandle , cadena ) cadena := "<EndToEndId>" + Padr( "REMESA HERMANDAD REF. "+oDatos[ ( dbGesBanco )->( fieldpos( "Codigo" ) ) ]+( cDbTmp )->CODIGO, 35, " " ) + "</EndToEndId>" FWriteLn( nHandle , cadena ) cadena := "</PmtId>" FWriteLn( nHandle , cadena ) cadena := "<InstdAmt Ccy=" + CHR(34) + "EUR" + CHR(34) + ">" + AllTrim( Transform( ( cDbTmp )->IMPORTE, cPictImpSEPA(.F.) ) ) + "</InstdAmt>" FWriteLn( nHandle , cadena ) cadena := "<DrctDbtTx>" FWriteLn( nHandle , cadena ) cadena := "<MndtRltdInf>" FWriteLn( nHandle , cadena ) cadena := "<MndtId>" + Padr( ( cDbTmp )->REFBANCO, 35, " " ) + "</MndtId>" FWriteLn( nHandle , cadena ) cadena := "<DtOfSgntr>" + Str( Year( ( cDbTmp )->MANDATO ), 4 ) + "-" + Padl( Month( ( cDbTmp )->MANDATO ), 2, "0" ) + "-" + Padl( Day( ( cDbTmp )->MANDATO ), 2, "0" ) + "</DtOfSgntr>" FWriteLn( nHandle , cadena ) cadena := "</MndtRltdInf>" FWriteLn( nHandle , cadena ) cadena := "</DrctDbtTx>" FWriteLn( nHandle , cadena ) cadena := "<DbtrAgt>" FWriteLn( nHandle , cadena ) cadena := "<FinInstnId>" FWriteLn( nHandle , cadena ) cadena := "</FinInstnId>" FWriteLn( nHandle , cadena ) cadena := "</DbtrAgt>" FWriteLn( nHandle , cadena ) cadena := "<Dbtr>" FWriteLn( nHandle , cadena ) cadena := "<Nm>" + AllTrim( Padr( ArreglaNombre( AllTrim( ( cDbTmp )->NOMBRE ) + " " + AllTrim( ( cDbTmp )->APELLIDOS ) ), 70, " " ) ) + "</Nm>" FWriteLn( nHandle , cadena ) cadena := "</Dbtr>" FWriteLn( nHandle , cadena ) cadena := "<DbtrAcct>" FWriteLn( nHandle , cadena ) cadena := "<Id>" FWriteLn( nHandle , cadena ) cadena := "<IBAN>" + AllTrim( Padr( "ES" + DCIdentificador( ( cDbTmp )->CBANCO + ( cDbTmp )->COFICINA + ( cDbTmp )->CCUENTA + "ES00" ) + ( cDbTmp )->CBANCO + ( cDbTmp )->COFICINA + ( cDbTmp )->CCUENTA, 34, " " ) ) + "</IBAN>" FWriteLn( nHandle , cadena ) cadena := "</Id>" FWriteLn( nHandle , cadena ) cadena := "</DbtrAcct>" FWriteLn( nHandle , cadena ) cadena := "<RmtInf>" FWriteLn( nHandle , cadena ) cadena := "<Ustrd>" + AllTrim( Padr( ArreglaNombre( AllTrim( ( cDbTmp )->OBSERV ) ), 140, " " ) ) + "</Ustrd>" FWriteLn( nHandle , cadena ) cadena := "</RmtInf>" FWriteLn( nHandle , cadena ) cadena := "</DrctDbtTxInf>" FWriteLn( nHandle , cadena ) end if ( cDbTmp )->( DbSkip() ) end while cadena := "</PmtInf>" FWriteLn( nHandle , cadena ) cadena := "</CstmrDrctDbtInitn>" FWriteLn( nHandle , cadena ) cadena := "</Document>" FWriteLn( nHandle , cadena ) FClose(nHandle) 
User avatar
informaticaeloy
Posts: 118
Joined: Fri Dec 20, 2013 10:39 am
Location: Zaragoza, España
Contact:

Re: Problemas con sepa

Post by informaticaeloy »

OK, gracias Elvira. Más o menos ya lo tengo. ¿Alguien podría postear un fichero XML que funcione (sin datos reales evidentemente) y así podría orientarme para las últimas pruebas?

Muchas gracias.
Windows 10 + FWH 20.08 + BCC 7.4 + Harbour 3.2.0 + PSPad 5.0.3
elvira
Posts: 516
Joined: Fri Jun 29, 2012 12:49 pm

Re: Problemas con sepa

Post by elvira »

Hola Eloy,

¿Cómo lo has solucionado?.

Muy agradecida ;)
elvira
Posts: 516
Joined: Fri Jun 29, 2012 12:49 pm

Re: Problemas con sepa

Post by elvira »

Hola,

Cuando tengo recibos, no se genera el XML.

Pero si no tengo recibos, sí se genera.

Pero no da ningún error.

¿Sabes por favor cuál es el problema?.

Muchas gracias.
Verhoven
Posts: 522
Joined: Sun Oct 09, 2005 7:23 pm

Re: Problemas con sepa

Post by Verhoven »

Usando la clase de Joaquín Ferrer he tenido que modificar alguna línea.
Por ejemplo el chequeo de que el importe total de la remesa sea igual a la suma de cada recibo individual según se van procesando por algún motivo da error y hay que hacer un round a dos decimales, en caso contrario el código falla y no genera el recibo.
Si no se pone el BIC (que algunos bancos no lo exigen porque lo calculan ellos) también da error.

El fichero a modificar de Joaquín es el llamado sepaxml.prg:

Copio la modificación comentada:

Code: Select all | Expand

    if ::NbOfTxs != ::oDebtor:NbOfTxs         //outstd( 'Existen errores, no es posible continuar' )        msgstop('Número de recibos erroneo: NbOfTxs='+alltrim(str(::oDebtor:NbOfTxs)))        return(NIL)    endif    // 31/01/2016: Si no se hace round falla    if round(::CtrlSum,2) != round(::oDebtor:CtrlSum,2)          //outstd( 'Existen errores, no es posible continuar' )        msgstop('Importe total erroneo: ::oDebtor:CtrlSum='+alltrim(str(::oDebtor:CtrlSum)))        msgstop('Importe total erroneo: ::CtrlSum='+alltrim(str(::CtrlSum)))        return(NIL)    endif


También he modificado las líneas correspondientes al grabado de la variable número total de recibos para que no ponga espacios delate en el xml:

Code: Select all | Expand

        //31/01/2016 ItemNew(hItem, "NbOfTxs", 15, str(::NbOfTxs, 0))   // Número de operaciones         ItemNew(hItem, "NbOfTxs", 15, ::NbOfTxs)    // Número de operaciones  


y

Code: Select all | Expand

    // 31/01/2016 ItemNew(hItem, "NbOfTxs", 15, str(::oDebtor:NbOfTxs, 0))  // Número de operaciones     ItemNew(hItem, "NbOfTxs", 15, ::oDebtor:NbOfTxs)    // Número de operaciones  


No obstante debo de avisar de que aún no he podido probar el envío real de ficheros SEPA al banco para ver si todo va bien.
Verhoven
Posts: 522
Joined: Sun Oct 09, 2005 7:23 pm

Re: Problemas con sepa

Post by Verhoven »

Disculpas. Las dos últimas modificaciones comentadas en el post anterior son:

Code: Select all | Expand

        //31/01/2016 ItemNew(hItem, "NbOfTxs", 15, str(::NbOfTxs, 0))   // Número de operaciones         ItemNew(hItem, "NbOfTxs", 15, ltrim(str(::NbOfTxs,0,0)))    // Número de operaciones 


y

Code: Select all | Expand

    // 31/01/2016 ItemNew(hItem, "NbOfTxs", 15, str(::oDebtor:NbOfTxs, 0))  // Número de operaciones     ItemNew(hItem, "NbOfTxs", 15, ltrim(str(::oDebtor:NbOfTxs,0)))  // Número de operaciones  
Verhoven
Posts: 522
Joined: Sun Oct 09, 2005 7:23 pm

Re: Problemas con sepa

Post by Verhoven »

Hoy hemos probado a remitir la primera remesa de recibos usando el formato xml SEPA usando la clase de Joaquín Ferrer con LA CAIXA y ha fallado.
En la oficina bancaria lo único que reporta el programa de la entidad es:
"Atención: El formato del fichero ... .xml no corresponde al del tipo de envío seleccionado ADEUDOS DOMICILIADOS SEPA. Modificar el fichero seleccionado o el tipo de envío, según corresponda"

¿Alguien tiene una idea de como resolverlo? El de la oficina bancaria creo que está más perdido que nosostros.

Hemos validado el fichero en una web gratuita de inet y ha dicho que está bien formateado.
Verhoven
Posts: 522
Joined: Sun Oct 09, 2005 7:23 pm

Re: Problemas con sepa

Post by Verhoven »

Sin embargo en otra web arroja los siguientes errores:
web para la prueba de validación: http://www.sepa-info.es/main/node/3

Code: Select all | Expand

=== SEPA TEST TOOL ====== SEPA BANK SIMULATOR ===Se han producido errores en la verificación sintáctica de las etiquetas XML de pain.008.001.02:Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CreDtTm': ' 2016-01-31T13:48:07' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODateTime'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 8Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 15' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 10Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 15' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 10Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BICOrBEI': [facet 'pattern'] The value ' BBVAESMMXXX' is not accepted by the pattern '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 19Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BICOrBEI': ' BBVAESMMXXX' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}AnyBICIdentifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 19Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 26Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 26Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 28Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 28Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 30Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 32Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 32Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 38Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 38Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 45Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 45Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 48Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 56Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 56Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 60Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 112Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 112Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 114Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 114Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 116Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 118Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 118Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 124Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 124Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 131Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 131Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 134Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 142Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 142Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 146Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 198Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 198Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 200Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 200Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 202Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 204Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 204Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 210Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 210Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 217Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 217Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 220Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 228Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 228Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 232Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 284Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 284Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 286Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 286Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 288Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 290Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 290Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 296Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 296Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 303Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 303Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 306Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 314Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 314Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 318Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 370Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 370Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 372Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 372Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 374Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 376Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 376Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 382Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 382Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 389Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 389Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 392Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 400Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 400Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 404Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 456Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 456Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 458Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 458Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 460Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 462Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 462Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 468Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 468Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 475Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 475Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 478Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 486Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 486Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 490Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 542Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 542Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 544Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 544Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 546Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 548Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 548Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 554Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 554Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 561Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 561Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 564Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 572Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 572Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 576Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 628Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 628Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 630Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 630Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 632Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 634Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 634Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 640Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 640Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 647Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 647Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 650Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 658Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 658Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 662Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 714Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 714Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 716Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 716Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 718Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 720Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 720Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 726Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 726Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 733Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 733Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 736Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 744Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 744Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 748Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 800Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 800Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 802Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 802Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 804Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 806Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 806Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 812Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 812Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 819Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 819Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 822Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 830Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 830Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 834Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 886Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 886Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 888Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 888Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 890Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 892Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 892Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 898Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 898Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 905Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': ' RCUR' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SequenceType1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 905Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ReqdColltnDt': ' 2016-02-04' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ISODate'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 908Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 916Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 916Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 920Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': [facet 'maxLength'] The value has a length of '40'; this exceeds the allowed maximum length of '35'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 972Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtInfId': ' PRE2016013113480749688REMESA01.xml-0001' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max35Text'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 972Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': [facet 'enumeration'] The value ' DD' is not an element of the set {'DD'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 974Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PmtMtd': ' DD' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}PaymentMethod2Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 974Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BtchBookg': ' TRUE' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}BatchBookingIndicator'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 976Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': [facet 'pattern'] The value ' 1' is not accepted by the pattern '[0-9]{1,15}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 978Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}NbOfTxs': ' 1' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Max15NumericText'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 978Error 1832: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': [facet 'maxLength'] The value has a length of '5'; this exceeds the allowed maximum length of '4'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 984Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}Cd': ' SEPA' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ExternalServiceLevel1Code'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 984Error 1840: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}SeqTp': [facet 'enumeration'] The value ' RCUR' is not an element of the set {'FRST', 'RCUR', 'FNAL', 'OOFF'}. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 991Error 1839: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': [facet 'pattern'] The value ' ES2601822419530201524327' is not accepted by the pattern '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 1260Error 1824: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN': ' ES2601822419530201524327' is not a valid value of the atomic type '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}IBAN2007Identifier'. in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 1260Error 1871: Element '{urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}ChrgBr': This element is not expected. Expected is ( {urn:iso:std:iso:20022:tech:xsd:pain.008.001.02}CdtrAgt ). in /var/www/vhosts/sepa-info.es/httpdocs/sepa/tmp/PRE2016013113480749688REMESA01.xml on line 1264
User avatar
Manuel Aranda
Posts: 605
Joined: Wed Oct 19, 2005 8:20 pm
Location: España

Re: Problemas con sepa

Post by Manuel Aranda »

Desde esta dirección web te puedes descargar un programa para validar el xml que te dirá la linea en la que tienes el error

https://www.cajamar.es/es/empresas/prod ... agos/sepa/
Un saludo,
Manuel

xH 1.2.3, FWH 23.07 32 bits, BC++ 7.4, xVerce CW 1.0, PellesC
Post Reply