Saltar a contenido

Inicio Rapido

Antes de emitir su primer CFDI desde el webservice de CSPlug, recomendamos leer los primeros pasos de la emisión en CSFacturación..

Timbrar una remisión

Facture una remisión mediante el webservice de CSPlug. CSPlug transforma el archivo TXT o XML en un CFDI

Remisión TXT

Para facturar una remisión TXT considere que la estructura debe seguir estrictamente las especificaciones de los layouts de CSFacturacion.

Remisión XML

Para facturar una remisión XML considere que la estructura debe seguir las especificaciones XSD publicadas por el SAT.

  1. Elige el tipo de remisión a utilizar: TXT o XML.
  2. Seleccione algunos de los ejemplos disponibles:
  3. Desarrolle o implemente un cliente SOAP en su lenguaje de programación.

    <?php /** @noinspection PhpUndefinedMethodInspection */
    
    /** @var stdClass $soapclient */
    $soapclient = new SoapClient('https://csplug.csfacturacion.com/soap/service?wsdl', ['soap_version' => SOAP_1_2]);
    //Use the functions of the client, the params of the function are in
    //the associative array
    
    $params = array('password' => 'password01', 'txt' => $remision);
    try {
        $response = $soapclient->timbrarTxt($params);
        $result = $response->timbrarTxtResult;
        if (!$result->exito) {
            die("Remision no timbrada: {$result->mensaje}");
        }
        // more logic
        // ...
    }catch (SoapFault $e) {
        die("ERROR no considerado");
    }
    
    // Utilice JAX-WS para generar automaticamente el cliente SOAP correspondiente: 
    // wsimport -keep -p com.foobar.csplug.client https://csplug.csfacturacion.com/soap/service?wsdl
    
    // Utilice WCF - Web Service Reference para generar automaticamente el cliente SOAP:
    // https://learn.microsoft.com/en-us/dotnet/core/additional-tools/wcf-web-service-reference-guide
    
    cat request.xml
    <Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
    <Body>
        <timbrarTxt xmlns="https://csplug.csfacturacion.com/soap/demo">
            <password xmlns="">[string]</password>
            <txt xmlns="">[string]</txt>
        </timbrarTxt>
    </Body>
    </Envelope>
    
    curl --header "Content-Type: text/xml;charset=UTF-8" -d @request.xml -o response.xml https://csplug.csfacturacion.com/soap/demo?wsdl
    
  4. Construya el payload SOAP para el timbrado de la remisión TXT.

    1. Identifique su contraseña de contratación.
    2. Codifique su ejemplo en base64
      <Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
      <Body>
          <timbrarTxt xmlns="https://csplug.csfacturacion.com/soap/demo">
              <password xmlns="">${pass}</password>
              <txt xmlns="">${txt_base64}</txt>
          </timbrarTxt>
      </Body>
      </Envelope>
      

Interpretando la respuesta

La respuesta para los procesos de timbrado contiene diferentes campos que le permite al desarrollador identificar si el proceso de timbrado fue exitoso o no, asi como los productos de este proceso, como el archivo XML y la representación impresa PDF del CFDI. Por ello es importante que sepa interpretar las respuestas para una correcta integración de su sistema.

Usted puede determinar que la remisión fue timbrada correctamente si el campo éxito es igual a true y el campo pdf no es vació o null en caso contrario evalué el valor del campo código y obtenga la descripción del campo mensaje, para más información consulte la referencia del servicio web.