@@ -114,7 +114,7 @@ discard block |
||
114 | 114 | 'MntNeto' => 12135, |
115 | 115 | 'IVANoRec' => [ |
116 | 116 | 'CodIVANoRec' => 4, |
117 | - 'MntIVANoRec' => round(12135 * (\sasco\LibreDTE\Sii::getIVA()/100)), |
|
117 | + 'MntIVANoRec' => round(12135 * (\sasco\LibreDTE\Sii::getIVA() / 100)), |
|
118 | 118 | ], |
119 | 119 | ], |
120 | 120 | // COMPRA CON RETENCION TOTAL DEL IVA |
@@ -128,7 +128,7 @@ discard block |
||
128 | 128 | 'OtrosImp' => [ |
129 | 129 | 'CodImp' => 15, |
130 | 130 | 'TasaImp' => \sasco\LibreDTE\Sii::getIVA(), |
131 | - 'MntImp' => round(10632 * (\sasco\LibreDTE\Sii::getIVA()/100)), |
|
131 | + 'MntImp' => round(10632 * (\sasco\LibreDTE\Sii::getIVA() / 100)), |
|
132 | 132 | ], |
133 | 133 | ], |
134 | 134 | // NOTA DE CREDITO POR DESCUENTO FACTURA ELECTRONICA 32 |
@@ -160,4 +160,4 @@ discard block |
||
160 | 160 | |
161 | 161 | // si hubo errores mostrar |
162 | 162 | foreach (\sasco\LibreDTE\Log::readAll() as $error) |
163 | - echo $error,"\n"; |
|
163 | + echo $error, "\n"; |
@@ -65,5 +65,6 @@ |
||
65 | 65 | var_dump($track_id); |
66 | 66 | |
67 | 67 | // si hubo errores mostrar |
68 | -foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
68 | +foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
69 | 69 | echo $error,"\n"; |
70 | +} |
@@ -37,7 +37,7 @@ discard block |
||
37 | 37 | $token = \sasco\LibreDTE\Sii\Autenticacion::getToken($config['firma']); |
38 | 38 | if (!$token) { |
39 | 39 | foreach (\sasco\LibreDTE\Log::readAll() as $error) |
40 | - echo $error,"\n"; |
|
40 | + echo $error, "\n"; |
|
41 | 41 | exit; |
42 | 42 | } |
43 | 43 | |
@@ -58,4 +58,4 @@ discard block |
||
58 | 58 | |
59 | 59 | // mostrar error si hubo |
60 | 60 | foreach (\sasco\LibreDTE\Log::readAll() as $error) |
61 | - echo $error,"\n"; |
|
61 | + echo $error, "\n"; |
@@ -36,8 +36,9 @@ discard block |
||
36 | 36 | // solicitar token |
37 | 37 | $token = \sasco\LibreDTE\Sii\Autenticacion::getToken($config['firma']); |
38 | 38 | if (!$token) { |
39 | - foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
40 | - echo $error,"\n"; |
|
39 | + foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
40 | + echo $error,"\n"; |
|
41 | + } |
|
41 | 42 | exit; |
42 | 43 | } |
43 | 44 | |
@@ -57,5 +58,6 @@ discard block |
||
57 | 58 | } |
58 | 59 | |
59 | 60 | // mostrar error si hubo |
60 | -foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
61 | +foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
61 | 62 | echo $error,"\n"; |
63 | +} |
@@ -611,17 +611,20 @@ discard block |
||
611 | 611 | // Objetos de Firma, Folios y EnvioDTE |
612 | 612 | $Firma = new \sasco\LibreDTE\FirmaElectronica($config['firma']); |
613 | 613 | $Folios = []; |
614 | -foreach ($folios as $tipo => $cantidad) |
|
614 | +foreach ($folios as $tipo => $cantidad) { |
|
615 | 615 | $Folios[$tipo] = new \sasco\LibreDTE\Sii\Folios(file_get_contents('xml/folios/'.$tipo.'.xml')); |
616 | +} |
|
616 | 617 | $EnvioDTE = new \sasco\LibreDTE\Sii\EnvioDte(); |
617 | 618 | |
618 | 619 | // generar cada DTE, timbrar, firmar y agregar al sobre de EnvioDTE |
619 | 620 | foreach ($documentos as $documento) { |
620 | 621 | $DTE = new \sasco\LibreDTE\Sii\Dte($documento); |
621 | - if (!$DTE->timbrar($Folios[$DTE->getTipo()])) |
|
622 | - break; |
|
623 | - if (!$DTE->firmar($Firma)) |
|
624 | - break; |
|
622 | + if (!$DTE->timbrar($Folios[$DTE->getTipo()])) { |
|
623 | + break; |
|
624 | + } |
|
625 | + if (!$DTE->firmar($Firma)) { |
|
626 | + break; |
|
627 | + } |
|
625 | 628 | $EnvioDTE->agregar($DTE); |
626 | 629 | } |
627 | 630 | |
@@ -632,5 +635,6 @@ discard block |
||
632 | 635 | var_dump($track_id); |
633 | 636 | |
634 | 637 | // si hubo errores mostrar |
635 | -foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
638 | +foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
636 | 639 | echo $error,"\n"; |
640 | +} |
@@ -66,4 +66,4 @@ |
||
66 | 66 | |
67 | 67 | // si hubo errores mostrar |
68 | 68 | foreach (\sasco\LibreDTE\Log::readAll() as $error) |
69 | - echo $error,"\n"; |
|
69 | + echo $error, "\n"; |
@@ -107,4 +107,4 @@ |
||
107 | 107 | |
108 | 108 | // si hubo algún error se muestra |
109 | 109 | foreach (\sasco\LibreDTE\Log::readAll() as $log) |
110 | - echo $log,"\n"; |
|
110 | + echo $log, "\n"; |
@@ -106,5 +106,6 @@ |
||
106 | 106 | } |
107 | 107 | |
108 | 108 | // si hubo algún error se muestra |
109 | -foreach (\sasco\LibreDTE\Log::readAll() as $log) |
|
109 | +foreach (\sasco\LibreDTE\Log::readAll() as $log) { |
|
110 | 110 | echo $log,"\n"; |
111 | +} |
@@ -299,17 +299,20 @@ discard block |
||
299 | 299 | // Objetos de Firma y Folios |
300 | 300 | $Firma = new \sasco\LibreDTE\FirmaElectronica($config['firma']); |
301 | 301 | $Folios = []; |
302 | -foreach ($folios as $tipo => $cantidad) |
|
302 | +foreach ($folios as $tipo => $cantidad) { |
|
303 | 303 | $Folios[$tipo] = new \sasco\LibreDTE\Sii\Folios(file_get_contents('xml/folios/'.$tipo.'.xml')); |
304 | +} |
|
304 | 305 | |
305 | 306 | // generar cada DTE, timbrar, firmar y agregar al sobre de EnvioBOLETA |
306 | 307 | $EnvioDTE = new \sasco\LibreDTE\Sii\EnvioDte(); |
307 | 308 | foreach ($set_pruebas as $documento) { |
308 | 309 | $DTE = new \sasco\LibreDTE\Sii\Dte($documento); |
309 | - if (!$DTE->timbrar($Folios[$DTE->getTipo()])) |
|
310 | - break; |
|
311 | - if (!$DTE->firmar($Firma)) |
|
312 | - break; |
|
310 | + if (!$DTE->timbrar($Folios[$DTE->getTipo()])) { |
|
311 | + break; |
|
312 | + } |
|
313 | + if (!$DTE->firmar($Firma)) { |
|
314 | + break; |
|
315 | + } |
|
313 | 316 | $EnvioDTE->agregar($DTE); |
314 | 317 | } |
315 | 318 | $EnvioDTE->setFirma($Firma); |
@@ -320,5 +323,6 @@ discard block |
||
320 | 323 | } |
321 | 324 | |
322 | 325 | // si hubo errores mostrar |
323 | -foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
326 | +foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
324 | 327 | echo $error,"\n"; |
328 | +} |
@@ -66,4 +66,4 @@ |
||
66 | 66 | |
67 | 67 | // si hubo errores mostrar |
68 | 68 | foreach (\sasco\LibreDTE\Log::readAll() as $error) |
69 | - echo $error,"\n"; |
|
69 | + echo $error, "\n"; |
@@ -53,13 +53,13 @@ discard block |
||
53 | 53 | $Signatures->item($Signatures->length-1)->getElementsByTagName('Modulus')->item(0)->nodeValue, |
54 | 54 | $Signatures->item($Signatures->length-1)->getElementsByTagName('Exponent')->item(0)->nodeValue |
55 | 55 | );*/ |
56 | -$valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate) === 1 ? true : false; |
|
57 | -echo 'Verificando SetDTE:',"\n"; |
|
58 | -echo ' Digest SetDTE: ',base64_encode(sha1($SetDTE, true)),"\n"; |
|
59 | -echo ' Digest SignedInfo: ',base64_encode(sha1($SignedInfo->C14N(), true)),"\n"; |
|
60 | -echo ' Digest SignedInfo: ',bin2hex(sha1($SignedInfo->C14N(), true)),"\n"; |
|
61 | -echo ' Digest SetDTE valido: ',($DigestValue===base64_encode(sha1($SetDTE, true))?'si':'no'),"\n"; |
|
62 | -echo ' Digest SignedInfo valido: ',($valid?'si':'no'),"\n\n"; |
|
56 | +$valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate)===1 ? true : false; |
|
57 | +echo 'Verificando SetDTE:', "\n"; |
|
58 | +echo ' Digest SetDTE: ', base64_encode(sha1($SetDTE, true)), "\n"; |
|
59 | +echo ' Digest SignedInfo: ', base64_encode(sha1($SignedInfo->C14N(), true)), "\n"; |
|
60 | +echo ' Digest SignedInfo: ', bin2hex(sha1($SignedInfo->C14N(), true)), "\n"; |
|
61 | +echo ' Digest SetDTE valido: ', ($DigestValue===base64_encode(sha1($SetDTE, true)) ? 'si' : 'no'), "\n"; |
|
62 | +echo ' Digest SignedInfo valido: ', ($valid ? 'si' : 'no'), "\n\n"; |
|
63 | 63 | |
64 | 64 | // verificar firma de documentos |
65 | 65 | $i = 0; |
@@ -81,18 +81,18 @@ discard block |
||
81 | 81 | $Signatures->item($i)->getElementsByTagName('Modulus')->item(0)->nodeValue, |
82 | 82 | $Signatures->item($i)->getElementsByTagName('Exponent')->item(0)->nodeValue |
83 | 83 | );*/ |
84 | - $valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate) === 1 ? true : false; |
|
85 | - echo 'Verificando Documento:',"\n"; |
|
86 | - echo ' Digest Documento: ',base64_encode(sha1($Documento->C14N(), true)),"\n"; |
|
87 | - echo ' Digest SignedInfo: ',base64_encode(sha1($SignedInfo->C14N(), true)),"\n"; |
|
88 | - echo ' Digest Documento valido: ',($DigestValue===base64_encode(sha1($Documento->C14N(), true))?'si':'no'),"\n"; |
|
89 | - echo ' Digest SignedInfo valido: ',($valid?'si':'no'),"\n\n"; |
|
84 | + $valid = openssl_verify($SignedInfo->C14N(), base64_decode($SignatureValue), $X509Certificate)===1 ? true : false; |
|
85 | + echo 'Verificando Documento:', "\n"; |
|
86 | + echo ' Digest Documento: ', base64_encode(sha1($Documento->C14N(), true)), "\n"; |
|
87 | + echo ' Digest SignedInfo: ', base64_encode(sha1($SignedInfo->C14N(), true)), "\n"; |
|
88 | + echo ' Digest Documento valido: ', ($DigestValue===base64_encode(sha1($Documento->C14N(), true)) ? 'si' : 'no'), "\n"; |
|
89 | + echo ' Digest SignedInfo valido: ', ($valid ? 'si' : 'no'), "\n\n"; |
|
90 | 90 | $i++; |
91 | 91 | } |
92 | 92 | |
93 | 93 | // si hubo errores mostrar |
94 | 94 | foreach (\sasco\LibreDTE\Log::readAll() as $error) |
95 | - echo $error,"\n"; |
|
95 | + echo $error, "\n"; |
|
96 | 96 | |
97 | 97 | // para el XML de ejemplo del SII la clave pública obtenida desde el certificado |
98 | 98 | // no sirvió para validar las firmas del documento, se probó obteniendo la clave |
@@ -91,8 +91,9 @@ |
||
91 | 91 | } |
92 | 92 | |
93 | 93 | // si hubo errores mostrar |
94 | -foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
94 | +foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
95 | 95 | echo $error,"\n"; |
96 | +} |
|
96 | 97 | |
97 | 98 | // para el XML de ejemplo del SII la clave pública obtenida desde el certificado |
98 | 99 | // no sirvió para validar las firmas del documento, se probó obteniendo la clave |
@@ -411,17 +411,20 @@ discard block |
||
411 | 411 | // Objetos de Firma, Folios y EnvioDTE |
412 | 412 | $Firma = new \sasco\LibreDTE\FirmaElectronica($config['firma']); |
413 | 413 | $Folios = []; |
414 | -foreach ($folios as $tipo => $cantidad) |
|
414 | +foreach ($folios as $tipo => $cantidad) { |
|
415 | 415 | $Folios[$tipo] = new \sasco\LibreDTE\Sii\Folios(file_get_contents('xml/folios/'.$tipo.'.xml')); |
416 | +} |
|
416 | 417 | $EnvioDTE = new \sasco\LibreDTE\Sii\EnvioDte(); |
417 | 418 | |
418 | 419 | // generar cada DTE, timbrar, firmar y agregar al sobre de EnvioDTE |
419 | 420 | foreach ($set_pruebas as $documento) { |
420 | 421 | $DTE = new \sasco\LibreDTE\Sii\Dte($documento); |
421 | - if (!$DTE->timbrar($Folios[$DTE->getTipo()])) |
|
422 | - break; |
|
423 | - if (!$DTE->firmar($Firma)) |
|
424 | - break; |
|
422 | + if (!$DTE->timbrar($Folios[$DTE->getTipo()])) { |
|
423 | + break; |
|
424 | + } |
|
425 | + if (!$DTE->firmar($Firma)) { |
|
426 | + break; |
|
427 | + } |
|
425 | 428 | $EnvioDTE->agregar($DTE); |
426 | 429 | } |
427 | 430 | |
@@ -433,5 +436,6 @@ discard block |
||
433 | 436 | var_dump($track_id); |
434 | 437 | |
435 | 438 | // si hubo errores mostrar |
436 | -foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
439 | +foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
437 | 440 | echo $error,"\n"; |
441 | +} |
@@ -66,4 +66,4 @@ |
||
66 | 66 | |
67 | 67 | // si hubo errores mostrar |
68 | 68 | foreach (\sasco\LibreDTE\Log::readAll() as $error) |
69 | - echo $error,"\n"; |
|
69 | + echo $error, "\n"; |
@@ -82,5 +82,6 @@ |
||
82 | 82 | //echo $AEC->enviar(); |
83 | 83 | |
84 | 84 | // si hubo errores mostrar |
85 | -foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
85 | +foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
86 | 86 | echo $error, "\n"; |
87 | +} |
@@ -420,7 +420,7 @@ discard block |
||
420 | 420 | ], |
421 | 421 | 'Detalle' => [ |
422 | 422 | [ |
423 | - 'QtyItem' => $set_pruebas[6]['Detalle'][0]['QtyItem']*0.4, |
|
423 | + 'QtyItem' => $set_pruebas[6]['Detalle'][0]['QtyItem'] * 0.4, |
|
424 | 424 | ] |
425 | 425 | ], |
426 | 426 | 'Referencia' => [ |
@@ -447,7 +447,7 @@ discard block |
||
447 | 447 | ], |
448 | 448 | 'Detalle' => [ |
449 | 449 | [ |
450 | - 'QtyItem' => $set_pruebas[9]['Detalle'][0]['QtyItem']*0.4, |
|
450 | + 'QtyItem' => $set_pruebas[9]['Detalle'][0]['QtyItem'] * 0.4, |
|
451 | 451 | ] |
452 | 452 | ], |
453 | 453 | 'Referencia' => [ |
@@ -480,4 +480,4 @@ discard block |
||
480 | 480 | |
481 | 481 | // si hubo errores mostrar |
482 | 482 | foreach (\sasco\LibreDTE\Log::readAll() as $error) |
483 | - echo $error,"\n"; |
|
483 | + echo $error, "\n"; |
@@ -313,25 +313,30 @@ discard block |
||
313 | 313 | // Objetos de Firma y Folios |
314 | 314 | $Firma = new \sasco\LibreDTE\FirmaElectronica($config['firma']); |
315 | 315 | $Folios = []; |
316 | -foreach ($folios as $tipo => $cantidad) |
|
316 | +foreach ($folios as $tipo => $cantidad) { |
|
317 | 317 | $Folios[$tipo] = new \sasco\LibreDTE\Sii\Folios(file_get_contents('xml/folios/'.$tipo.'.xml')); |
318 | +} |
|
318 | 319 | |
319 | 320 | // generar cada DTE, timbrar, firmar y agregar al sobre de EnvioBOLETA |
320 | 321 | $EnvioDTE = new \sasco\LibreDTE\Sii\EnvioDte(); |
321 | 322 | foreach ($set_pruebas as $documento) { |
322 | 323 | $DTE = new \sasco\LibreDTE\Sii\Dte($documento); |
323 | - if (!$DTE->timbrar($Folios[$DTE->getTipo()])) |
|
324 | - break; |
|
325 | - if (!$DTE->firmar($Firma)) |
|
326 | - break; |
|
324 | + if (!$DTE->timbrar($Folios[$DTE->getTipo()])) { |
|
325 | + break; |
|
326 | + } |
|
327 | + if (!$DTE->firmar($Firma)) { |
|
328 | + break; |
|
329 | + } |
|
327 | 330 | $EnvioDTE->agregar($DTE); |
328 | 331 | } |
329 | 332 | $EnvioDTE->setFirma($Firma); |
330 | 333 | $EnvioDTE->setCaratula($caratula); |
331 | 334 | $EnvioDTE->generar(); |
332 | 335 | if ($EnvioDTE->schemaValidate()) { |
333 | - if (is_writable('xml/EnvioBOLETA.xml')) |
|
334 | - file_put_contents('xml/EnvioBOLETA.xml', $EnvioDTE->generar()); // guardar XML en sistema de archivos |
|
336 | + if (is_writable('xml/EnvioBOLETA.xml')) { |
|
337 | + file_put_contents('xml/EnvioBOLETA.xml', $EnvioDTE->generar()); |
|
338 | + } |
|
339 | + // guardar XML en sistema de archivos |
|
335 | 340 | echo $EnvioDTE->generar(); |
336 | 341 | } |
337 | 342 | |
@@ -463,21 +468,26 @@ discard block |
||
463 | 468 | $EnvioDTE = new \sasco\LibreDTE\Sii\EnvioDte(); |
464 | 469 | foreach ($notas_credito as $documento) { |
465 | 470 | $DTE = new \sasco\LibreDTE\Sii\Dte($documento); |
466 | - if (!$DTE->timbrar($Folios[$DTE->getTipo()])) |
|
467 | - break; |
|
468 | - if (!$DTE->firmar($Firma)) |
|
469 | - break; |
|
471 | + if (!$DTE->timbrar($Folios[$DTE->getTipo()])) { |
|
472 | + break; |
|
473 | + } |
|
474 | + if (!$DTE->firmar($Firma)) { |
|
475 | + break; |
|
476 | + } |
|
470 | 477 | $EnvioDTE->agregar($DTE); |
471 | 478 | } |
472 | 479 | $EnvioDTE->setFirma($Firma); |
473 | 480 | $EnvioDTE->setCaratula($caratula); |
474 | 481 | $EnvioDTE->generar(); |
475 | 482 | if ($EnvioDTE->schemaValidate()) { |
476 | - if (is_writable('xml/EnvioDTE.xml')) |
|
477 | - file_put_contents('xml/EnvioDTE.xml', $EnvioDTE->generar()); // guardar XML en sistema de archivos |
|
483 | + if (is_writable('xml/EnvioDTE.xml')) { |
|
484 | + file_put_contents('xml/EnvioDTE.xml', $EnvioDTE->generar()); |
|
485 | + } |
|
486 | + // guardar XML en sistema de archivos |
|
478 | 487 | echo $EnvioDTE->generar(); |
479 | 488 | } |
480 | 489 | |
481 | 490 | // si hubo errores mostrar |
482 | -foreach (\sasco\LibreDTE\Log::readAll() as $error) |
|
491 | +foreach (\sasco\LibreDTE\Log::readAll() as $error) { |
|
483 | 492 | echo $error,"\n"; |
493 | +} |