domingo, 19 de mayo de 2019

Desproteger archivos PDF en Linux (Qpdf)

Hace menos de un lustro no era tan habitual manejar archivos en formato pdf como lo es hoy en día. Ahora es común el uso de este formato de archivos en el correo electrónico y, con el problema de suplantación de identidad asociado a internet, es lugar común enviar y recibir estos archivos protegidos mediante contraseña.

Dentro del mundo Linx, Ubuntu (18.04) en mi caso, no he encontrado una forma que me facilite el desproteger estos archivos (estados de cuenta bancarios, constancias oficiales, etc.), deshabilitando del mismo archivo esta protección de contraseña para en un futuro poder abrirlos sin necesidad de ingresa nuevamente la contraseña.

Entonces me encontré con las opciones para deshabilitar esta protección mediante contraseña:

1.- La primera opción es directamente desde el Visor y aceptar "Recordar para siempre" cuando se escribe la contraseña. Esto implica problemas y errores futuros obvios (tales como actualización del sistema operativo, cambio de computadora, sustitución del disco duro, o algún otro) y tal vez la imposibilidad de recuperar estos archivos.

2.- La segunda opción es bien sencilla: una vez abierto el archivo simplemente se imprime a un archivo, o a una impresora virtual como CUPS-PDF-Printer.


3.- Una tercera opción, también sencilla, es arrastrar y soltar el archivo protegido en un navegador (en mi caso, en este momento, Opera versión 60.0.3255 ó Firefox versión 66.0.4) y, una vez desprotegido de su contraseña, imprimirlo (guardándolo como pdf o imprimirlo a pdf mediante una impresora virtual).


4.- Otra buena herramienta, esta vez para Linux, es usar Master-PDF-Editor. Este es un muy buen programa, para Linux. Lástima que a partir de su versión 5, actual, imprime una marca de agua en los archivos desbloqueados (no lo hacía así hasta su versión 4). Se puede registrar para que no lo haga, con un costo de usd$70.00

5.- Total, que aparentemente no hay una buena opción en Linux para desbloquear archivos pdf. Hasta que me topé con Qpdf. Esta es una herramienta para Linux en consola (aunque tiene un visor que no hace gran cosa: qpdfview).


Qpdf desbloquea perfectamente estos archivos (viene instalado por defecto en Ubuntu 18.04, o se puede instalar fácilmente); desbloquea el archivo y crea una copia desbloqueada:

Instalar Qpdf:

$ sudo apt-get install qpdf


Una vez instalado, para desproteger el pdf escribimos en la consola:

$ qpdf --password='password' --decrypt nombre_pdf_protegido.pdf nombre_pdf_desprotegido.pdf


El nombre “pdf-protegido” es el nombre del archivo que cambiará en función de los archivos que queramos desproteger o se encuentren protegidos.





Como mera nota: en Win2 con PDF-Xchange-Editor (antes Viewer) se puede hacer todo esto y más; la verdad es que es un muy buen programa, en Win2. En un momento consideré el montarlo en Ubuntu mediante Wine (lo he hecho en el pasado), pero como bien me aconsejó René jr ¿qué caso tiene usar un poderoso sistema operativo como lo es Linux si lo voy a llenar de chucherías de Win2?

sábado, 18 de mayo de 2019

Emisión de Facturas (CFDI) mayo 2019


El 22 de abril pasado fue publicada una modificación (Resolución Miscelánea Fiscal 2019 SAT/normatividad/versiones-anticipadas-de-las-RMF ) respecto de la emisión de CFDI (facturas):

Antes de esta modificación se podía emitir una factura (CFDI) con Método de pago PUE (Pago en una sola exhibición) si la misma era cobrada a más tardar el día 17 del mes inmediato siguiente a aquel en el cual se expidió la factura.

Ahora, a partir de este mes de mayo-2019, sólo se podrá emitir una factura con Método de pago PUE si la misma será cobrada a más tardar el último día del mes en el cual se expidió la factura.... En caso de que no sea cobrada, deberá cancelarse y emitirse una nueva factura, con Forma de pago 99 (por definir) y con Método de pago PPD, relacionando la nueva factura con la emitida originalmente como "Sustitución de los CFDI previos”.

(Tratándose de los integrantes del sector financiero que apliquen la facilidad contenida en esta regla, podrán considerar para efectos de lo señalado en la fracción I de la misma, incluso los pagos que reciban a más tardar el día 17 del mes inmediato siguiente a aquel en que se emitió el CFDI).



A continuación copio esta nueva resolución, y enseguida la anterior resolución:


Opción para que en el CFDI se establezca como método de pago “Pago en una sola exhibición”

2.7.1.44. Para efectos de lo dispuesto por los artículos 29, párrafos primero, segundo, fracción VI y penúltimo, 29-A, primer párrafo, fracción VII, inciso b) del CFF, y las reglas 2.7.1.32., fracción II y 2.7.1.35., los contribuyentes que no reciban el pago del monto total del CFDI al momento de su expedición, podrán considerarlo como pagado en una sola exhibición para efectos de la facturación, siempre que:

I. Se haya pactado o se estime que el monto total que ampare el comprobante se recibirá a más tardar el último día del mes de calendario en el cual se expidió el CFDI.

II. Señalen en el CFDI como método de pago “PUE” (Pago en una sola exhibición) y cuál será la forma en que se recibirá dicho pago.

III. Se realice efectivamente el pago de la totalidad de la contraprestación a más tardar en el plazo señalado en la fracción I de esta regla.

En aquellos casos en que el pago se realice en una forma distinta a la que se señaló en el CFDI, el contribuyente cancelará el CFDI emitido por la operación y emitirá uno nuevo señalando como forma de pago la que efectivamente corresponda.

En el caso de que la totalidad del pago de la operación que ampara el CFDI no se realice a más tardar el último día del mes en que se expidió este comprobante, el contribuyente cancelará el CFDI emitido por la operación y emitirá uno nuevo señalando como forma de pago “99” por definir y como método de pago “PPD” pago en parcialidades o diferido, relacionando el nuevo CFDI con el emitido originalmente como “Sustitución de los CFDI previos”, debiendo adicionalmente emitir por el pago o los pagos que efectivamente le realicen, el CFDI con complemento para recepción de pagos que corresponda de conformidad con lo dispuesto por las reglas 2.7.1.32. y 2.7.1.35.

Tratándose de los integrantes del sector financiero que apliquen la facilidad contenida en esta regla, estos podrán considerar para efectos de lo señalado en la fracción I de la misma, incluso los pagos que reciban a más tardar el día 17 del mes inmediato siguiente a aquel en que se emitió el CFDI por el total de la operación, debiendo, en todo caso el receptor del CFDI realizar el acreditamiento del IVA e IEPS en el mes en que el impuesto trasladado haya sido efectivamente pagado.




(anterior) Resolución Miscélanea Fiscal, publicada en octubre 19 de 2018:


Regla 2.7.1.44 Opción para que en el CFDI se establezca como método de pago “Pago en una sola exhibición”.

Para efectos de lo dispuesto por los artículos 29, párrafos primero, segundo, fracción VI y penúltimo, 29-A, primer párrafo, fracción VII, inciso b) del CFF, y las reglas 2.7.1.32., fracción II y 2.7.1.35., los contribuyentes que no reciban el pago del monto total del CFDI al momento de su expedición, podrán considerarlas como pagadas en una sola exhibición para efectos de la facturación, siempre que:

I. Se haya pactado o se estime que el monto total que ampare el comprobante se recibirá a más tardar el día 17 del mes de calendario inmediato posterior a aquél en el cual se expidió el CFDI.

II. Señalen en el CFDI como método de pago “PUE” (Pago en una sola exhibición) y cuál será la forma en que se recibirá dicho pago.

III. Se realice efectivamente el pago de la totalidad de la contraprestación a más tardar en el plazo señalado en la fracción I de esta regla.

Cuando el pago del monto total que ampare el comprobante se efectué entre el día primero y el 17 del mes de calendario inmediato posterior a aquél en que se expidió el CFDI, el acreditamiento del IVA e IEPS, respectivamente, deberá realizarse por el receptor del CFDI en el mes en que el impuesto trasladado haya sido efectivamente pagado.

En aquellos casos en que el pago se realice en una forma distinta a la que se señaló en el CFDI, el contribuyente cancelará el CFDI emitido por la operación y emitirá uno nuevo señalando como forma de pago la que efectivamente corresponda.

En el caso de que la totalidad del pago de la operación que ampara el CFDI no se realice a más tardar el día 17 del mes de calendario inmediato posterior a aquél en el cual se expidió el CFDI, el contribuyente cancelará el CFDI emitido por la operación y emitirá uno nuevo señalando como forma de pago “99” por definir y como método de pago “PPD” pago en parcialidades o diferido, relacionando el nuevo CFDI con el emitido originalmente como “Sustitución de los CFDI previos”, debiendo adicionalmente emitir por el pago o los pagos que efectivamente le realicen, el CFDI con complemento para recepción de pagos que corresponda de conformidad con lo dispuesto por las reglas 2.7.1.32. y 2.7.1.35.

sábado, 9 de marzo de 2019

Historia (Sapiens) Ferrocarriles.. y aeropuertos

¡Destryuyamos el NAIM!

¡Sigamos viéndonos el ombligo!

¡Sigamos viviendo de nuestras “tradiciones”!

(por si alguien va de despistado, las tres frases son meramente ironía)



“¿Por qué el complejo militar-industrial-científico floreció en Europa y no en la India? Cuando Gran Bretaña dio el gran salto adelante, ¿por qué Francia, Alemania y Estados Unidos la siguieron rápidamente, mientras que China quedaba rezagada? Cuando la brecha entre las naciones industriales y las no industriales se convirtió en un factor económico y político evidente, ¿por qué Rusia, Italia y Austria consiguieron salvarla, mientras que Persia, Egipto y el Imperio otomano fracasaron? Después de todo, la tecnología de la primera oleada industrial era relativamente simple. ¿Tan difícil era para los chinos o los otomanos diseñar máquinas de vapor, fabricar ametralladoras y tender vías férreas?

El primer ferrocarril comercial se inauguró con fines comerciales en 1830 en Gran Bretaña. En 1850, las naciones europeas estaban recorridas por casi 40.000 kilómetros de vías férreas, pero en todo el conjunto de Asia, África y América Latina solo había 4.000 kilómetros de vías. En 1880, Occidente se jactaba de tener más de 350.000 kilómetros de vías férreas, mientras que en el resto del mundo no había más de 35.000 kilómetros de líneas de tren (y la mayoría de ellas las tendieron los ingleses en la India). La primera vía férrea en China no se inauguró hasta 1876. Tenía 25 kilómetros de longitud y la construyeron europeos; el gobierno chino la destruyó al año siguiente. En 1880, el Imperio chino no tenía ni un solo ferrocarril. La primera vía férrea en Persia se construyó en 1888, y conectaba Teherán con un lugar sagrado musulmán situado a unos 10 kilómetros al sur de la capital. La construyó y la gestionaba una compañía belga. En 1950, la red de ferrocarriles de Persia era solo de unos escasos 2.500 kilómetros, en un país cuyo tamaño es siete veces el de Gran Bretaña.”

SAPIENS
Yuval Noah Harari

viernes, 25 de enero de 2019

Venezuela, entre la legítima Asamblea Nacional y el ilegítimo Maduro



En estos días que Venezuela se ha convulsionado con la autoproclamación del Presidente de la Asamblea Nacional, Juan Guaidó, existen claroscuros.

Si bien es execrable el comportamiento del Nicolás Maduro, y el respaldo que le otorgan Bolivia (que con Evo Morales comparte la figura de "reelección indefinida"), Nicaragua (Ortega), Cuba (Raúl Castro), China, Rusia, etc. Todas estas naciones, dictaduras con maquillaje democrático; si bien todos estos regímenes son despreciables, no por ello, considero, debe salir a apoyarse a bote pronto a quien que se autoproclama Presidente por más que sea loable esta autoproclamación.

¿Y si Nicolás Maduro hubiere dejado de lado la burla de elecciones amañadas y saliese a autoproclamarse Presidente? ¿Y si lo mismo hubiera hecho Bolsonaro? ¿Y si lo hubiera hecho AMLO hace una década? ¿Y si lo hiciera Putin?

El reconocimiento de la autoproclamación es un arma de dos filos ¿con qué razón reconocer unas sí y otras no?

La autoproclamación debió darse, al menos, frente a la Asamblea Nacional (que es legítima sin duda) que le respalda, no meramente frente a una multitud callejera que, con más que justas razones, quiere la salida de Maduro a costa de lo que sea.

Otra cosa es la postura de México que con la justificación “no nos metemos en asuntos de otras naciones (porque no queremos que otras naciones se metan en nuestros asuntos)” es cuestionable.

La defensa de los derechos humanos está, dentro de nuestra Constitución, por encima de cualquier otra consideración política.


Sí al reconocimiento de la Asamblea Nacional de Venezuela como gobierno legítimo.


No al reconocimiento de Nicolás Maduro como Presidente de Venezuela.


domingo, 16 de septiembre de 2018

Cancela CFDI 3.3 septiembre-2018

Como iniciando el mes les comenté, el SAT (Servicio de Administración Trributaria), instruyó un nuevo procedimiento para cancelar facturas, CFDI, a partir del 1o del presente mes de septiembre-2018.


El SAT ha justificado el regular la cancelación de facturas a partir del día del sábado 1o, ya que ha detectado que algunos contribuyentes emisores de facturas las cancelaban sin conocimiento de aquel a quien habían sido expedidas y sin mediar justificación; por lo que ha regulado que las facturas sólo puedan cancelarse cuando así lo acepte la persona a la cual se le expidió dicha factura.

Ahora, para cancelar una factura, el emisor deberá solicitar al receptor la cancelación por medio de portal del SAT o de un proveedor de certificación. El receptor recibirá un mensaje en su buzón tributario informándole de esta solicitud; dentro de los 3 días siguientes deberá aceptar o rechazar la cancelación de la factura por medio del portal del SAT o de un proveedor de certificación.

Si transcurrido el plazo de los 3 días el receptor no realiza manifestación alguna se considerará que acepta la cancelación de la factura.


Entonces el proceso para cancelar una factura, CFDI, bajo este esquema y cuando se requiera de autorización del receptor es:

1. El emisor deberá enviar la solicitud de cancelación de la factura a través del Portal del SAT o mediante un proveedor de certificación.

2. Cuando se requiera la aceptación para la cancelación, el receptor de la factura, recibirá un mensaje en su Buzón Tributario, informándole que existe una solicitud de cancelación.

3. El receptor deberá manifestar la aceptación o rechazo de la cancelación a través del Portal del SAT o mediante un proveedor de certificación dentro de los tres días hábiles siguientes contados a partir de la recepción de la solicitud. De no emitir respuesta, se considera como una positiva ficta y la factura será cancelada.

4. En caso de que la solicitud de cancelación no requiera aceptación por parte del receptor, la factura se cancelará de manera inmediata.


Algunas facturas podrán cancelarse sin requerir la aceptación del receptor; la cancelación de estas CFDI procede:

Para los efectos de los artículos 29-A, los contribuyentes podrán cancelar un CFDI sin que se requiera la aceptación del receptor en los siguientes supuestos:

a) Que amparen ingresos por un monto de hasta $5,000.00 (cinco mil pesos 00/100 M.N).

b) Por concepto de nómina.

c) Por concepto de egresos.

d) Por concepto de traslado.

e) Por concepto de ingresos expedidos a contribuyentes del RIF.

f) Emitidos a través de la herramienta electrónica de "Mis cuentas" en el aplicativo "Factura fácil".

g) Que amparen retenciones e información de pagos.

h) Expedidos en operaciones realizadas con el público en general de conformidad con la regla 2.7.1.24.

i) Emitidos a residentes en el extranjero para efectos fiscales conforme a la regla 2.7.1.26.

j) Cuando la cancelación se realice dentro de los tres días siguientes a su expedición.

k) Por concepto de ingresos, expedidos por contribuyentes que enajenen bienes, usen o gocen temporalmente bienes inmuebles, otorguen el uso, goce o afectación de un terreno, bien o derecho, incluyendo derechos reales, ejidales o comunales a que se refiere la regla 2.4.3., fracciones I a VIII, así como los contribuyentes que se dediquen exclusivamente a actividades agrícolas, silvícolas, ganaderas o pesqueras en términos de la regla 2.7.4.1., y que para su expedición hagan uso de los servicios de un proveedor de certificación de expedición de CFDI o expidan CFDI a través de la persona moral que cuente con autorización para operar como proveedor de certificación y generación de CFDI para el sector primario.

l) Emitidos por los integrantes del sistema financiero.

https://www.sat.gob.mx/articulo/62770/regla-2.7.1.39



Actualización:

La entrada en vigor del nuevo esquema para la cancelación de facturas mediante el que se requiere la autorización del receptor (cliente), el SAT lo ha diferido para el 1o de noviembre-2018.

No obstante lo anterior, les sugiero que en todos los emails (o en una nota en la factura) en los que envíen las facturas a sus clientes incluyan una redacción como:

"En caso de discrepar con esta factura agradeceremos que nos sea avisado de inmediato para proceder a su cancelación y substitución.
Conforme las nuevas reglas emitidas por el SAT de cancelación de facturas, de no darnos aviso de inmediato no podremos cancelar las mismas."



ñ y acentos (tildes) en teclado bluetooth en Android

Para poner ñ Ñ y acentos (tildes) en teclado bluetooth en Android:


El uso del teclado virtual en Android no reviste mayor complicación una vez se configura con el idioma deseado, en mi caso español latino.

En las tabletas, y teléfonos celulares, configurados en idioma inglés, se re-configura el teclado para que pueda mostrar caracteres latinos, de la forma:

Dentro de Configuración, Language & Input, se modifica el teclado (Current Keyboard) dentro del menú Keyboard & Input methods.

Deshabilitando la opción pre-seleccionada (English – Android Keyboard AOSP), y seleccionando el teclado deseado, en mi caso Spanish (Latin America) (Android Keyboard AOSP).


El problema se presenta cuando se conecta un teclado bluetooth, que son teclados fabricados para el inglés, que no incluyen tildes ni ñ (minúscula o mayúscula).

Si bien existen las formas de re-configurar nuevamente estos teclados para que operen estos caracteres (a nivel de sistema con más aplicaciones añadidas) y que ciertamente no significan mayor problema, me parece a mí la mejor opción simplemente el utilizar el mismo teclado bluetooth con las opciones que reviste para poder introducir en el texto las letras acentuadas (con tilde) y las ñ.

Para lo anterior sencillamente se presionan en el teclado las combinaciones:

Alt derecho + n pone el "gorrito (~)" de la ñ, después teclear la n
Alt derecho + n después teclear n = ñ
Alt derecho + n después teclear shift + n = Ñ

Alt derecho + e pone la "tilde (´)" después teclear la letra a acentuar:
Alt derecho + e después teclear a e i o u = á é í ó ú
Alt derecho + e después teclear shift + a e i o u = Á É Í Ó Ú


Esto es algo muy parecido a cómo operan los teclados usb o bluetooth bajo el sistema Windows (caracteres ASCII) (sean teclados para inglés o español) , de la forma:

Alt derecha + 160 = á
Alt derecha + 130 = é
Alt derecha + 161 = í
Alt derecha + 162 = ó
Alt derecha + 163 = ú
Alt derecha + 164 = ñ
Alt derecha + 165 = Ñ
Alt derecha + 181 = Á
Alt derecha + 144 = É
Alt derecha + 214 = Í
Alt derecha + 224 = Ó
Alt derecha + 233 = Ú


Una lista completa de los caracteres ASCII la pueden encontrar en:
https://elcodigoascii.com.ar/


Yo uso una tableta NUVISION TM800 con sistema Android 6.0 configurado en inglés, de la mano de un teclado Case Logic CL-KB-100, y un teléfono celular ZTE Blade L2 Plus con sistema Android 4.4 también en inglés.



Scooter T4B Honey Whale

El mes pasado compré un scooter eléctrico de la marca Honey Whale, modelo T4B. Entiendo que es de fabricación china (en específico ni idea d...