Permite recuperar CFDI´s emitidos y recibidos a través de una estructura XML que contendrá los criterios de filtrado que se desea, sólo buscará en un año.
Para recuperar vía ASP los CFDI emitidos en un período de tiempo determinado, hay que invocar mediante Web Services el método "SEARCH_BASIC" junto con los demás parámetros como País, Entity, Requestor, etc.
Deben tener los mismos valores que hoy se utilizan para cualquier otra transacción.
Para esta transacción en específico, hay que pasar en Data1 (Data2 y Data3 deben ir vacíos), una estructura XML encerrada en CDATA que le indique al motor o capa de servicio de MYSuite, el criterio de filtrado que se desea.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://www.fact.com.mx/schema/ws">
<soapenv:Header/>
<soapenv:Body>
<ws:RequestTransaction>
<ws:Requestor>0c320b03-d4f1-47bc-9fb4-77995f9bf33e</ws:Requestor>
<ws:Transaction>SEARCH_BASIC</ws:Transaction>
<ws:Country>MX</ws:Country>
<ws:Entity>JES900109Q90</ws:Entity>
<ws:User>0c320b03-d4f1-47bc-9fb4-77995f9bf33e</ws:User>
<ws:UserName>MX.JES900109Q90.jacinto</ws:UserName>
<ws:Data1>ESTRUCTURA XML CDATA</ws:Data1>
<ws:Data2></ws:Data2>
<ws:Data3></ws:Data3>
</ws:RequestTransaction>
</soapenv:Body>
</soapenv:Envelope>A continuación un ejemplo de como debe ser el XML que se debe especificar en Data1 (en este caso se están filtrando los primeros 50 documentos que fueron emitidos desde el 1 de Julio 2019 hasta el 31 de Julio 2019).
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<SearchCriteria xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ApplySearchCriteria>true</ApplySearchCriteria>
<SCountryCode>MX</SCountryCode>
<STaxIdOrName>JES900109Q90</STaxIdOrName>
<Branch>ABB</Branch>
<CurrencyCode/>
<RCountryCode/>
<RTaxIdOrName/>
<SKind>127</SKind>
<ReturnBatchAsLike>false</ReturnBatchAsLike>
<Batch/>
<UseSerialFrom>false</UseSerialFrom>
<UseSerialTo>false</UseSerialTo>
<SerialFrom>1</SerialFrom> //BUSCAR POR FOLIO
<SerialTo>1</SerialTo>
<UseInternalIDFrom>false</UseInternalIDFrom>
<UseInternalIDTo>false</UseInternalIDTo>
<InternalIDFrom>0</InternalIDFrom>
<InternalIDTo>0</InternalIDTo>
<UseDateFrom>true</UseDateFrom>
<UseDateTo>true</UseDateTo>
<DateFrom>2019-07-01T00:00:00</DateFrom>
<DateTo>2019-07-31T23:59:59</DateTo>
<UseAmountFrom>false</UseAmountFrom>
<UseAmountTo>false</UseAmountTo>
<AmountFrom>0</AmountFrom>
<AmountTo>0</AmountTo>
<Paid>2</Paid>
<Cancelled>2</Cancelled>
<Distributed>2</Distributed>
<QueryTop>50</QueryTop>
<OrderBy>33</OrderBy>
<Descending>true</Descending>
</SearchCriteria>]]>
Si la transacción es exitosa (Result = true) entonces el Web Service devuelve un objeto DataSet en ResponseData.ResponseDataSet que tiene todos los registros que cumplieron la condición.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<RequestTransactionResponse xmlns="http://www.fact.com.mx/schema/ws">
<RequestTransactionResult>
<Request>
<Requestor>00000000-0000-0000-0000-000000000000</Requestor>
<RequestorActive>true</RequestorActive>
<Transaction>SEARCH_BASIC</Transaction>
<Country>MX</Country>
<Entity>JES900109Q90</Entity>
<User>00000000-0000-0000-0000-000000000000</User>
<UserName>MX.AAA010101AAA.jacinto</UserName>
<Id>8a3dce50-d9b5-475f-8f3c-cca5c90c7ce0</Id>
<TimeStamp>2019-08-29T17:05:36.9493768-05:00</TimeStamp>
</Request>
<Response>
<Result>true</Result>
<TimeStamp>2019-08-29T17:05:37.0429769-05:00</TimeStamp>
<LastResult/>
<Code>1</Code>
<Description/>
<Hint/>
<Data>Se encontraron 2 documentos. La búsqueda fue limitada a máximo 50 resultados. El filtro fue aplicado. 1448 8a3dce50-d9b5-475f-8f3c-cca5c90c7ce0</Data>
<Processor>TEST-BACK01</Processor>
</Response>
<ResponseData>
<ResponseData1>2</ResponseData1>
<ResponseData2>50</ResponseData2>
<ResponseData3/>
<ResponseDataSet>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="B">
<xs:complexType>
<xs:sequence>
<xs:element name="A" type="xs:string" minOccurs="0"/>
<xs:element name="W" type="xs:string" minOccurs="0"/>
<xs:element name="B" type="xs:string" minOccurs="0"/>
<xs:element name="C" type="xs:string" minOccurs="0"/>
<xs:element name="X" type="xs:string" minOccurs="0"/>
<xs:element name="Y" type="xs:string" minOccurs="0"/>
<xs:element name="Z" type="xs:string" minOccurs="0"/>
<xs:element name="D" type="xs:string" minOccurs="0"/>
<xs:element name="E" type="xs:string" minOccurs="0"/>
<xs:element name="S" type="xs:string" minOccurs="0"/>
<xs:element name="F" type="xs:string" minOccurs="0"/>
<xs:element name="G" type="xs:decimal" minOccurs="0"/>
<xs:element name="H" type="xs:string" minOccurs="0"/>
<xs:element name="PaidTimeStamp" type="xs:dateTime" minOccurs="0"/>
<xs:element name="I" type="xs:string" minOccurs="0"/>
<xs:element name="J" type="xs:string" minOccurs="0"/>
<xs:element name="DG" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0"/>
<xs:element name="IntID" type="xs:string" minOccurs="0"/>
<xs:element name="M" type="xs:string" minOccurs="0"/>
<xs:element name="YE" type="xs:string" minOccurs="0"/>
<xs:element name="C_FE" type="xs:dateTime" minOccurs="0"/>
<xs:element name="C_ESC" type="xs:string" minOccurs="0"/>
<xs:element name="C_E" type="xs:string" minOccurs="0"/>
<xs:element name="C_EC" type="xs:string" minOccurs="0"/>
<xs:element name="ACR_ID" type="xs:int" minOccurs="0"/>
<xs:element name="ACR_UUID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0"/>
<xs:element name="DCF" type="xs:decimal" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<B diffgr:id="B1" msdata:rowOrder="0">
<A>Nota de credito</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>AREZZO SA</C>
<X>MX</X>
<Y>JES900109Q90</Y>
<Z>AAA DIVISION</Z>
<D>ABB</D>
<E>691</E>
<S>ABB</S>
<F>2019/07/17 13:34:47</F>
<G>100.000000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>9e6e26c7-2f54-4b66-ba45-34263ad926ee</DG>
<IntID/>
<M>MXN</M>
<YE>2019</YE>
<DCF>1.000000</DCF>
</B>
<B diffgr:id="B2" msdata:rowOrder="1">
<A>Factura</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>Jan Martínez Directa</C>
<X>MX</X>
<Y>JES900109Q90</Y>
<Z>AAA DIVISION</Z>
<D>ABB</D>
<E>690</E>
<S>ABB</S>
<F>2019/07/17 12:11:41</F>
<G>100.000000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>1fded0a6-f690-4cdb-883d-734821d4cbb7</DG>
<IntID/>
<M>MXN</M>
<YE>2019</YE>
<DCF>1.000000</DCF>
</B>
</NewDataSet>
</diffgr:diffgram>
</ResponseDataSet>
</ResponseData>
</RequestTransactionResult>
</RequestTransactionResponse>
</soap:Body>
</soap:Envelope>Solicitud (Comprobantes Recibidos)
Para esta transacción en específico, hay que pasar en Data1 una estructura XML encerrada en CDATA que le indique al motor o capa de servicio de MYSuite, el criterio de filtrado que se desea y en Data2 debe especificarse “RECEIVED“.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://www.fact.com.mx/schema/ws">
<soapenv:Header/>
<soapenv:Body>
<ws:RequestTransaction>
<ws:Requestor>0c320b03-d4f1-47bc-9fb4-77995f9bf33e</ws:Requestor>
<ws:Transaction>SEARCH_BASIC</ws:Transaction>
<ws:Country>MX</ws:Country>
<ws:Entity>JES900109Q90</ws:Entity>
<ws:User>0c320b03-d4f1-47bc-9fb4-77995f9bf33e</ws:User>
<ws:UserName>MX.JES900109Q90.jacinto</ws:UserName>
<ws:Data1>ESTRUCTURA XML CDATA</ws:Data1>
<ws:Data2>RECEIVED</ws:Data2>
<ws:Data3></ws:Data3>
</ws:RequestTransaction>
</soapenv:Body>
</soapenv:Envelope>
Debe especificar RECEIVED en Data2. Este valor no puede ser cambiado, le dice a MYSuite que debe buscar en documentos recibidos, si se pasa valor vacío quiere decir que se buscará en documentos emitidos (por ese motivo es obligatorio especificarlo con este valor para el caso en que se quieren recuperar documentos recibidos de una empresa en particular).A continuación un ejemplo de como debe ser el XML que se debe especificar en Data1 (en este caso se están filtrando los primeros 500 documentos que fueron recibidos desde el 1 de Abril 2019 hasta el 30 de Abril 2019).
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<SearchCriteria xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ApplySearchCriteria>true</ApplySearchCriteria>
<SCountryCode/>
<STaxIdOrName/>
<Branch/>
<CurrencyCode/>
<RCountryCode>MX</RCountryCode>
<RTaxIdOrName>JES900109Q90</RTaxIdOrName>
<SKind>127</SKind>
<ReturnBatchAsLike>false</ReturnBatchAsLike>
<Batch/>
<UseSerialFrom>false</UseSerialFrom>
<UseSerialTo>false</UseSerialTo>
<SerialFrom>1</SerialFrom>
<SerialTo>1</SerialTo>
<UseInternalIDFrom>false</UseInternalIDFrom>
<UseInternalIDTo>false</UseInternalIDTo>
<InternalIDFrom>0</InternalIDFrom>
<InternalIDTo>0</InternalIDTo>
<UseDateFrom>true</UseDateFrom>
<UseDateTo>true</UseDateTo>
<DateFrom>2019-04-01T00:00:00</DateFrom>
<DateTo>2019-04-30T23:59:59</DateTo>
<UseAmountFrom>false</UseAmountFrom>
<UseAmountTo>false</UseAmountTo>
<AmountFrom>0</AmountFrom>
<AmountTo>0</AmountTo>
<Paid>2</Paid>
<Cancelled>2</Cancelled>
<Distributed>2</Distributed>
<QueryTop>500</QueryTop>
<OrderBy>33</OrderBy>
<Descending>true</Descending>
</SearchCriteria>
]]>
Respuesta (Comprobantes Recibidos)
Si la transacción es exitosa (Result = true) entonces el Web Service devuelve un objeto DataSet en ResponseData.ResponseDataSet que tiene todos los registros que cumplieron la condición.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<RequestTransactionResponse xmlns="http://www.fact.com.mx/schema/ws">
<RequestTransactionResult>
<Request>
<Requestor>00000000-0000-0000-0000-000000000000</Requestor>
<RequestorActive>true</RequestorActive>
<Transaction>SEARCH_BASIC</Transaction>
<Country>MX</Country>
<Entity>JES900109Q90</Entity>
<User>00000000-0000-0000-0000-000000000000</User>
<UserName>MX.JES900109Q90.jacinto</UserName>
<Id>65b0af4e-58be-4f3f-81e3-9c2c7e18eb73</Id>
<TimeStamp>2019-08-29T17:25:14.2834447-05:00</TimeStamp>
</Request>
<Response>
<Result>true</Result>
<TimeStamp>2019-08-29T17:25:14.3146447-05:00</TimeStamp>
<LastResult/>
<Code>1</Code>
<Description/>
<Hint/>
<Data>Se encontraron 7 documentos. La búsqueda fue limitata a máximo 500 resultados. El filtro fue aplicado. 1777 65b0af4e-58be-4f3f-81e3-9c2c7e18eb73</Data>
<Processor>TEST-BACK01</Processor>
</Response>
<ResponseData>
<ResponseData1>7</ResponseData1>
<ResponseData2>500</ResponseData2>
<ResponseData3/>
<ResponseDataSet>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="B">
<xs:complexType>
<xs:sequence>
<xs:element name="A" type="xs:int" minOccurs="0"/>
<xs:element name="W" type="xs:string" minOccurs="0"/>
<xs:element name="B" type="xs:string" minOccurs="0"/>
<xs:element name="C" type="xs:string" minOccurs="0"/>
<xs:element name="X" type="xs:string" minOccurs="0"/>
<xs:element name="Y" type="xs:string" minOccurs="0"/>
<xs:element name="Z" type="xs:string" minOccurs="0"/>
<xs:element name="D" type="xs:string" minOccurs="0"/>
<xs:element name="E" type="xs:string" minOccurs="0"/>
<xs:element name="S" type="xs:string" minOccurs="0"/>
<xs:element name="F" type="xs:string" minOccurs="0"/>
<xs:element name="G" type="xs:decimal" minOccurs="0"/>
<xs:element name="H" type="xs:string" minOccurs="0"/>
<xs:element name="PaidTimeStamp" type="xs:dateTime" minOccurs="0"/>
<xs:element name="I" type="xs:string" minOccurs="0"/>
<xs:element name="J" type="xs:string" minOccurs="0"/>
<xs:element name="DG" type="xs:string" minOccurs="0"/>
<xs:element name="IntID" type="xs:string" minOccurs="0"/>
<xs:element name="M" type="xs:string" minOccurs="0"/>
<xs:element name="Id" type="xs:int" minOccurs="0"/>
<xs:element name="EC" type="xs:byte" minOccurs="0"/>
<xs:element name="DT" type="xs:dateTime" minOccurs="0"/>
<xs:element name="ETS" type="xs:string" minOccurs="0"/>
<xs:element name="C_FE" type="xs:dateTime" minOccurs="0"/>
<xs:element name="C_ESC" type="xs:string" minOccurs="0"/>
<xs:element name="C_E" type="xs:string" minOccurs="0"/>
<xs:element name="C_EC" type="xs:string" minOccurs="0"/>
<xs:element name="R" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
<NewDataSet xmlns="">
<B diffgr:id="B1" msdata:rowOrder="0">
<A>1</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>PRUEBAS"</C>
<X>MX</X>
<Y>LOS890124159</Y>
<Z>AAA DIVISION</Z>
<D>JAN</D>
<E>6350</E>
<S/>
<F>2019/04/05 19:27:23</F>
<G>83.520000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>cb488d61-b666-49a2-8fcb-a4b1c781cb70</DG>
<M>MXN</M>
<Id>1542</Id>
<EC>1</EC>
<ETS>2019/04/05 19:27:24</ETS>
<C_FE>2019-08-08T12:41:11-05:00</C_FE>
<C_ESC/>
<C_E>No Encontrado</C_E>
<C_EC/>
</B>
<B diffgr:id="B2" msdata:rowOrder="1">
<A>1</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>PRUEBAS"</C>
<X>MX</X>
<Y>LOS890124159</Y>
<Z>AAA DIVISION</Z>
<D>JAN</D>
<E>6349</E>
<S/>
<F>2019/04/05 19:04:42</F>
<G>83.520000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>1bb5306a-128b-4dab-a4cc-ab4bd1e36b92</DG>
<M>MXN</M>
<Id>1541</Id>
<EC>1</EC>
<ETS>2019/04/05 19:04:43</ETS>
<C_FE>2019-08-08T12:41:11-05:00</C_FE>
<C_ESC/>
<C_E>No Encontrado</C_E>
<C_EC/>
</B>
<B diffgr:id="B3" msdata:rowOrder="2">
<A>1</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>PRUEBAS"</C>
<X>MX</X>
<Y>LOS890124159</Y>
<Z>AAA DIVISION</Z>
<D>JAN</D>
<E>6348</E>
<S/>
<F>2019/04/05 19:03:54</F>
<G>83.520000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>9e844e16-3af3-4ffd-b6db-d93370d78f37</DG>
<M>MXN</M>
<Id>1540</Id>
<EC>1</EC>
<ETS>2019/04/05 19:03:56</ETS>
<C_FE>2019-08-08T12:41:11-05:00</C_FE>
<C_ESC/>
<C_E>No Encontrado</C_E>
<C_EC/>
</B>
<B diffgr:id="B4" msdata:rowOrder="3">
<A>1</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>PRUEBAS"</C>
<X>MX</X>
<Y>JES900109Q90</Y>
<Z>AAA DIVISION</Z>
<D>JAN</D>
<E>6347</E>
<S/>
<F>2019/04/05 18:33:21</F>
<G>83.520000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>551232d0-2881-4d97-baaa-aabf762a7d07</DG>
<M>MXN</M>
<Id>1539</Id>
<EC>1</EC>
<ETS>2019/04/05 18:33:22</ETS>
<C_FE>2019-08-08T12:40:57-05:00</C_FE>
<C_ESC>Cancelable sin aceptación</C_ESC>
<C_E>Vigente</C_E>
<C_EC/>
</B>
<B diffgr:id="B5" msdata:rowOrder="4">
<A>1</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>PRUEBAS"</C>
<X>MX</X>
<Y>JES900109Q90</Y>
<Z>AAA DIVISION</Z>
<D>JAN</D>
<E>6346</E>
<S/>
<F>2019/04/05 18:24:54</F>
<G>83.520000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>5b3f11cf-7796-4efd-b7ad-0a1de7bfafd8</DG>
<M>MXN</M>
<Id>1538</Id>
<EC>1</EC>
<ETS>2019/04/05 18:24:55</ETS>
<C_FE>2019-08-08T12:40:57-05:00</C_FE>
<C_ESC>Cancelable sin aceptación</C_ESC>
<C_E>Vigente</C_E>
<C_EC/>
</B>
<B diffgr:id="B6" msdata:rowOrder="5">
<A>1</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>PRUEBAS"</C>
<X>MX</X>
<Y>JES900109Q90</Y>
<Z>AAA DIVISION</Z>
<D>JAN</D>
<E>6345</E>
<S/>
<F>2019/04/05 18:14:31</F>
<G>83.520000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>1a321b6f-d5a9-4c15-802f-49a8ae0faba9</DG>
<M>MXN</M>
<Id>1537</Id>
<EC>1</EC>
<ETS>2019/04/05 18:14:32</ETS>
<C_FE>2019-08-08T12:40:57-05:00</C_FE>
<C_ESC>Cancelable sin aceptación</C_ESC>
<C_E>Vigente</C_E>
<C_EC/>
</B>
<B diffgr:id="B7" msdata:rowOrder="6">
<A>1</A>
<W>MX</W>
<B>JES900109Q90</B>
<C>PRUEBAS"</C>
<X>MX</X>
<Y>JES900109Q90</Y>
<Z>AAA DIVISION</Z>
<D>JAN</D>
<E>6344</E>
<S/>
<F>2019/04/05 18:13:11</F>
<G>83.520000</G>
<H>No</H>
<I>No</I>
<J>No</J>
<DG>688ed526-42cb-4c8d-a770-db71d4f58332</DG>
<M>MXN</M>
<Id>1536</Id>
<EC>1</EC>
<ETS>2019/04/05 18:13:14</ETS>
<C_FE>2019-08-08T12:40:57-05:00</C_FE>
<C_ESC>Cancelable sin aceptación</C_ESC>
<C_E>Vigente</C_E>
<C_EC/>
</B>
</NewDataSet>
</diffgr:diffgram>
</ResponseDataSet>
</ResponseData>
</RequestTransactionResult>
</RequestTransactionResponse>
</soap:Body>
</soap:Envelope>
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
y
]]>
Si no se especifica fecha_desde ni fecha_hasta, se toma el año en que se recibe la solicitud (año actual).
Si sólo se especifica fecha_desde, se toma el año de la fecha especificada.
Si sólo se especifica fecha_hasta, se toma el año de la fecha especificada.
Si se especifican ambas fechas, se toma el año de la fecha especificada en fecha_desde; ya que se exige que ambas fechas pertenezcan al mismo año.
Se resalta en rojo los valores a cambiar en una transacción específica:
<RTaxIdOrName>JES900109Q90</RTaxIdOrName>
Especifica el RFC de la empresa que recibe los documentos (se especifica RFC de receptor, no de Emisor); siempre tendrá que coincidir (en el caso de haber especificado el valor RECEIVED en al parámetro Data2), con el valor del parámetro Entity de la transacción SEARCH_BASIC (una empresa no puede solicitar documentos recibidos de otra, es un tema de seguridad).
<DateFrom>2019-10-31T00:00:00</DateFrom>
Especifica el día desde para la búsqueda de los documentos (la hora no se tiene en cuenta, aunque hay que especificarla; se recomienda que sea 00:00:00). La T es una constante, siempre debes indicarse entre la fecha y la hora. El formato de la fecha con este ejemplo es (yyyy-MM-dd).
<DateTo>2019-11-15T23:59:59</DateTo>
Especifica el día hasta para la búsqueda de los documentos.
<QueryTop>500</QueryTop>
Especifica la cantidad de documentos máximos que serán recuperados por la transacción; especificar valor 1000000 para garantizar recuperar todos los existentes en el rango de fecha indicado.
Nota (importante): Si se especifica un valor mayor de 500 la búsqueda tendrá que ser indicada para un único día, de lo contrario la transacción siempre fallará indicando este motivo. Esto se hace para no cargar la red. Al especificar más de 500 documentos la búsqueda hay que hacerla de día en día.
<Descending>true</Descending>
Los documentos encontrados se devuelven con orden RFCEmisor y después Fecha de Emisión (esto está indicado en el valor 160 del nodo anterior a este, "OrderBy"; este es el orden ideal para recuperar las facturas recibidas). Este nodo (Descending) indica si el ordenamiento de los documentos encontrados será descendente o ascendente (true o false respectivamente).
<Skind>127</Skind>
Estos son los valores posibles para el filtro SKind:
FACTURA = 1,
NOTA_DE_CREDITO = 2,
NOTA_DE_CARGO = 4,
CARTA_PORTE = 8,
RECIBO_DE_HONORARIOS = 16,
RECIBO_DE_ARRENDAMIENTO = 32,
RECIBO_DE_DONATIVOS = 64,
RECIBO_DE_PAGO_DE_PRIMAS = 128,
COMPROBANTE_DE_PAGO_A_PLAZOS = 256,
BOLETA_DE_EMPENO = 512,
RECIBO_DE_NOMINA = 1024,
RECIBO = 2048,
PAGO = 4096,
TRASLADO = 8192

Si se busca en mismo día, se devuelve la cantidad total (acotada al número que se indique) de facturas. Por eso sugerimos que hagan búsquedas por un día y colocar un número suficientemente grande (en QueryTop) para garantice que obtendrá la cantidad total de documentos del día.