Last active
August 4, 2018 15:17
-
-
Save Reflej0/e30bfd999bcde47e880327bd5c4d824d to your computer and use it in GitHub Desktop.
Validación de CAE/CAI mediante PHP utilizando el webservice de AFIP mediante Soapclient
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
public function validarComprobante($comprobante) | |
{ | |
/*No se incluyen los pasos previos de obtencion del WSAA*/ | |
$serviceUrl = "https://wswhomo.afip.gov.ar/WSCDC/service.asmx?WSDL"; // Homologación. | |
$_serviceUrl = "https://servicios1.afip.gov.ar/WSCDC/service.asmx?WSDL"; // Producción. | |
$client = new \Soapclient($serviceUrl); | |
//Lote de prueba. | |
$parametros = new \stdClass(); | |
$parametros->Auth = new \stdClass(); | |
$parametros->Auth->Token = (string)$WSAA->Token; | |
$parametros->Auth->Sign = (string)$WSAA->Sign; | |
$parametros->Auth->Cuit = intval("Cuit asociado al WSAA"); | |
$parametros->CmpReq = new \stdClass(); | |
$parametros->CmpReq->CbteModo = (string)"CAE"; | |
$parametros->CmpReq->CuitEmisor = intval("20267565393"); | |
$parametros->CmpReq->PtoVta = intval("4002"); | |
$parametros->CmpReq->CbteTipo = intval("1"); | |
$parametros->CmpReq->CbteNro = intval("109"); | |
$parametros->CmpReq->CbteFch = (string)"20131227"; | |
$parametros->CmpReq->ImpTotal = doubleval("121.0"); | |
$parametros->CmpReq->CodAutorizacion = (string)"63523178385550"; | |
$parametros->CmpReq->DocTipoReceptor = (string)"80"; | |
$parametros->CmpReq->DocNroReceptor = (string)"30628789661"; | |
$result = $client->ComprobanteConstatar($parametros); | |
$result = $client->ComprobanteConstatar($parametros); | |
//Comprender los numeros de errores https://www.sos-contador.com/2017/08/02/errores-habituales-al-pedir-cae-factura-electronica-afip/ | |
//Manual oficial para comprender entradas y salidas. https://www.afip.gob.ar/ws/WSCDCV1/ManualDelDesarrolladorWSCDCV1.pdf | |
//No-Oficial comprender los errores http://www.sistemasagiles.com.ar/trac/wiki/ManualPyAfipWs#ErroresFrecuentes | |
//Tratamiento de errores. | |
$resultado = array(); | |
$resultado["resultado"] = $result->ComprobanteConstatarResult->Resultado; | |
if(isset($result->ComprobanteConstatarResult->Errors->Err->Code)) | |
$resultado["error_nro"] = $result->ComprobanteConstatarResult->Errors->Err->Code; | |
if(isset($result->ComprobanteConstatarResult->Errors->Err->Msg)) | |
$resultado["error_msg"] = $result->ComprobanteConstatarResult->Errors->Err->Msg; | |
if(isset($result->ComprobanteConstatarResult->Observaciones->Obs->Code)) | |
$resultado["observacion_nro"] = $result->ComprobanteConstatarResult->Observaciones->Obs->Code; | |
if(isset($result->ComprobanteConstatarResult->Observaciones->Obs->Msg)) | |
$resultado["observacion_msg"] = $result->ComprobanteConstatarResult->Observaciones->Obs->Msg; | |
return $resultado; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment