Factura Electrónica – Como obtener el UUID

Uno de los requisitos indispensables para generar el Timbre Fiscal Digital es contar con el UUID, que es una cadena de números generada por el estándar RFC 4122 con la versión 4 (random plus sha1).

Y esta cadena tiene la estructura

xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx

Y para generarlo solamente necesitas esta ejecutar esta función en PHP

function gen_uuid() {
$uuid = array(
‘time_low’  => 0,
‘time_mid’  => 0,
‘time_hi’  => 0,
‘clock_seq_hi’ => 0,
‘clock_seq_low’ => 0,
‘node’   => array()
);

$uuid['time_low'] = mt_rand(0, 0xffff) + (mt_rand(0, 0xffff) << 16);
$uuid['time_mid'] = mt_rand(0, 0xffff);
$uuid['time_hi'] = (4 << 12) | (mt_rand(0, 0×1000));
$uuid['clock_seq_hi'] = (1 << 7) | (mt_rand(0, 128));
$uuid['clock_seq_low'] = mt_rand(0, 255);

for ($i = 0; $i < 6; $i++) {
$uuid['node'][$i] = mt_rand(0, 255);
}

$uuid = sprintf(‘%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x’,
$uuid['time_low'],
$uuid['time_mid'],
$uuid['time_hi'],
$uuid['clock_seq_hi'],
$uuid['clock_seq_low'],
$uuid['node'][0],
$uuid['node'][1],
$uuid['node'][2],
$uuid['node'][3],
$uuid['node'][4],
$uuid['node'][5]
);

return $uuid;
}

Otros usuarios también llegaron aquí buscando:

 que es el uuid (4), c# como usar cfdv2 xsd (2), rfc 4122 versión 4 (random plus sha1) (2), utf-8 VB net facturacion electronica (1), tengo un sistema echo en visual basic 6 y nesesito facturar electronicamente por cfdi (1)

Temas relacionados

Tags , , ,

2 Comentarios en “Factura Electrónica – Como obtener el UUID

  1. lalito dice:
    yo llevaba semanas buscando como hacerlo… y hoy con esto me salvaron la vida. tal ves este en otros lugares pero ahora es mas facil como encontrar el UUID desde google
  2. Novato dice:
    Chale!, me encontre exactamente el mismo código en la siguiente página:
    http://stackoverflow.com/questions/2040240/php-function-to-generate-v4-uuid

    y fue publicado antes que este aporte que haces… qué fue lo novedoso que aportas?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>