Web Service CFDi Guía de Usuario
WSCFDI EDICOM
Título del documento:
WSCFDI EDICOM
Nombre del fichero:
ES WebService CFDi Guía de uuario!odt
"eri#n:
$!%
Etado:
&E"IS'DO
Fecha:
()*$+*+($)
'utor:
Ocar'lbert'rca
Revisión, Aprobación &eviado,or:
Ocar'lbert'rca
',robado,or:
Francico-eldaEcamilla
Fecha:$%*$(*+($$ Fecha:$%*$(*+($$
Historial de cambios Versión
Fecha
Descripcióndelaacción
Páginas
$!(
+$*($*+($$
"eri#ninicialWSCFDi
Toda
$!$
$.*(+*+($$
Corre/idoreferencia e0uivoca a CFDen al decri,ci#n de la funcione!
)1 21.!1$21$.
$!+
$3*(4*+($$
El 5 ,ermite ahora enviar 6I7o 8M9 enel ,armetro file
21 .1 $21 $.
$!4
$+*(3*+($$
Correcci#n!Se modifica el e;em,lode la re,ueta SO'7 de /etTimbreCfdi
%1$(
$!)
$(*(.*+($$
Nueva funcione/et<
+1 >1 +4?+.1 4(
$!2
$%*$(*+($$
Nueva funcione C ancelaCFDIS/ined1 /etCFDI'c@ = /etCFDIFrom<
+3?4+
$!>
(.*$(*+($4
Nueva conideracione de la funcione /etCfdiTet1 /etTimbreCfdiTet1 /et<
$.1 +$1 +) = +>
$!3
$$*(+*+($)
Nueva conideracione de funcionamiento = c#di/o de errore de la funcione cancelaCfdi = cancelaCfdiSi/ned
$)1 $31 $.1 4+1 4)1 42 = 4>
$!.
()*$+*+($)
Serviciode timbradode com,robante de retencione electr#nica
>1 43?)%1 2+?>%
$!%
$(*(+*+($2
Servicio de cancelaci#n de com,robante de retencione electr#nica
>1 )%?2.1 >$?.$
WSCFDI EDICOM A | 2
WSCFDI EDICOM
Índice de contenido $!5ebervice CFDi de EDICOM!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!! > $! $! In tr od uc ci #n !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! > <&9 de acceo al ervicio!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!! !!!!! > Funcione Del Webervice CFDi de Edicom!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !! >
+!Funcione!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! . +!$!Generaci#n del CFDi !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !. 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !! . 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! . &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!! . E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! % +!+ !Ge ner aci #n del tim bre del CFD i !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! $$ 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! $$ 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! $$ &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! $$ E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! $+ +!4!Cancelar CFDi !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!! $4 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! $4 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! $) &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! $) E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! $) Conideracione im,ortante!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!! !!!! $> +!) !Ca mbi ar ,a 5o rd de acc eo al er vic io de CFD i !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!! $. 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! $. 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! $. &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! $. E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! $. +! 2! Ge ne ra ci #n de l CF Di en TE ST !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!! +( 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! +( 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! +( &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! +$ E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! +$ +!> !Ge ner aci #n del tim bre del CFD i en TES T !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +4 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! +4 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! +4 &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! +4 E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! +) +!3 !Co m,r ob aci #n del tim bra do CFD i !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +2 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! +> 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! +> &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! +> E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! +> +!. !Co m,r ob aci #n del tim bra do CFD i en tet !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +. 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! +. 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! +.
WSCFDI EDICOM A | 3
WSCFDI EDICOM &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! +. E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! +% +! %! Ca nc el ar CF Di Fi rm ad o !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!! !!! 4( 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 4$ 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! 4$ &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! 4$ E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 4$ Conideracione im,ortante!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!! !!!! 44 +!$ (!O bten ci# n del 'CB ac ue del tim bra do !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 42 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 42 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! 42 &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! 42 E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 42 +!$ $!O bten ci# n del tim bre a ,ar tir del << ID! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 43 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 43 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! 43 &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! 43 E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 4. +!$ +!G ene rac i#n del CFD i de rete nci on e ele ctr #ni ca !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 4% 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 4% 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! 4% &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! )( E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! )( +!$ 4!G ene rac i#n del tim bre del CFD i de r eten cio ne elec tr# nic a !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! )4 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! )4 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! )4 &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! )4 E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! )) +!$ )!G ene rac i#n del C FDi de re ten cio ne e lec tr# nic a en TES T !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! )2 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! )> 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! )> &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! )> E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! )> +!$ 2!G ene rac i#n d el tim bre de l CFD i de rete nci one elec tr# nic a en TE ST !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ). 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! )% 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! )% &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! )% E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! )% +!$ >!C anc ela r c om, rob ante d e re tenc ion e e lec tr# nic a !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2$ 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 2$ 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! 2$ &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! 2+ E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 2+ Conideracione im,ortante!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!! !!!! 2) +!$ 3!C anc ela r com, rob ante de retenc ion e elec tr# nic a Fi rma do !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!! 2> 9lamada:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 2>
WSCFDI EDICOM A | 4
WSCFDI EDICOM 7armetro:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!!! 2> &e,ueta:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! 2> E;em,lo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! 23 Conideracione im,ortante!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!! !!!! 2%
4!9ita de C#di/o de Error!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! >$ 4! $! In tr od uc ci #n !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! >$ C#di/o definido ,or el S'T!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! !!!! >$ C#di/o definido ,or Edicom!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! !!!!!!! ! >+ E;em,lo de una re,ueta de error!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!! !!!!!! >+
)!'neo: WSD9!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!! >4 )!$!WSD9 WE-SE&"ICE CFDi
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!! !!!!!!! >4
WSCFDI EDICOM A | 5
WSCFDI EDICOM
1. !"#!RV$%! %FD$ D! !D$%&' 1.1. $()R&D*%%$+( CFDi e la ,lataforma 5ebervice de EDICOM ,ara /enerar lo Com,robante Ficale Di/itale a trav de Internet! Eta ,lataforma acredita a EDICOM como 7roveedor 'utoriado de CFD ,or el Servicio de 'dminitraci#n Tributaria1 convirtindoe aí en 7roveedor de Servicio de E,edici#n de Com,robante Fical Di/ital a trav 7SECFDI1 conforme a lo nuevo re0uerimiento e,ecificado ,ara realia toda la validacione dede loInternet CFDi ei/ida ,or el S'T! Cuando un cliente contrata el ervicio de E,edici#n de CFDi de Edicom obtiene: 9a <&9 del ervicio = la documentaci#n necearia ,ara er utiliada! Su <uario de acceo al ervicio coincide con u &FC Su 7a5ord de acceo al ervicio Hnico ,ara l Ete documento ofrece la WSD9 del ervicio = la informaci#n necearia ,ara 0ue ,ara interactuar con el ervicio CFDi = dearrollar a,licacione com,atible con el ervicio CFDi! 9a elaboraci#n de lo 5ebervice 0ue a0uí e ,reentan et baada en la i/uiente norma oficiale : $J &eoluci#n Micelnea Fical ,ara +($(1 ,ublicada en el Diario Oficial de la Federaci#n DOF el $$ de Kunio de +($(1 = u ,oteriore modificacione a la reoluci#n = aneo1 en concreto el 'neo +( htt,:**555!at!/ob!m*itioLinternet*informacionLfical*le/ilacion*2+L$..($!html!
*R D! A%%!#& A #!RV$%$& 9a <&9 de acceo al 5ebervice CFDi de edicom e la i/uiente: htt,:**cfdi5!edeb+b!com*Edi5inWS*ervice*CFDi5dl 9a im,lementaci#n del ervicio e realia a trav del ,rotocolo htt,! De eta forma1 e utilia un canal de comunicacione e/uro con el 7roveedor de Servicio de Emii#n de CFDI 7SECFDI!
F*(%$&(!# D! !"#!RV$%! %FD$ D! !D$%&' -nción
Descripción
getCfdi
/eneración de %FD$! 7ermite realiar el timbrado del com,robante firmado ,or el $!(
ver.
cliente = devuelve el com,robante timbrado!
getTimbreCfdi
/eneración de timbre de %FD$. 7ermite realiar eltimbrado del com,robante
$!(
firmado ,or el cliente = devuelve el timbre del com,robante timbrado!
cancelaCFDi
%ancelación de %FD$.7 ermite cancelarcom,robante timbrado!
changePassword
%ambio de pass0ord de acceso al #ervicio %FD$. 7ermite al uuario cambiar el
$!( $!(
,a5ord de acceo al ervicio CFDi
getCfdiTest
/eneración de %FD$ en test. 7ermite realiar el timbrado del com,robante
$!(
firmado ,or el cliente en modo de ,rueba = devuelve el com,robante timbrado!
getTimbreCfdiTest
/eneración de timbre de %FD$ en test.7ermite realiar eltimbrado del
$!(
com,robante firmado ,or el cliente en modo de ,rueba = devuelve el timbre del com,robante timbrado!
getUUID
%omprobación de la generación de timbres %FD$. 7ermite com,robar i un
WSCFDI EDICOM A $!5ebervice CFDide EDICOM| 6
$!(
WSCFDI EDICOM com,robante ha ido timbrado en nuetro itema!
getUUIDTest
%omprobación de la generación de timbres %FD$ en test.7ermite com,robar i
$!(
un com,robante ha ido timbrado en modo de ,rueba de nuetro itema!
cancelaCfdiSigned
%ancelación de %FD$ -irmada. 7ermite cancelar com,robante timbrado a ,artir $!( de la ,etici#n de cancelaci#n del cliente ,reviamente firmada!
getCfdiAck
&btención de Ac de timbrado.7e rmite obtener el acue del timbrado del S'T
$!(
getCfdiFromUUID
&btención del %FDi timbrado.7ermite obtener un du,licado de lo CFDi
$!(
/enerado anteriormente!
getCfdiRetenciones
/eneración de Retenciones de %FD$! 7ermite realiar el timbrado del
com,robante de retencione electr#nica firmado ,or el cliente = devuelve el com,robante timbrado!
$!(
getTimbreCfdiRetencio /eneración de timbre de Retenciones de %FD$.7ermite realiar eltimbrado del nes com,robante de retencione electr#nica firmado ,or el cliente = devuelve el timbre del com,robante timbrado!
$!(
getCfdiRetencionesTes /eneración de Retenciones de %FDi en test.7ermite realiar el timbrado del t com,robante de retencione electr#nica firmado ,or el cliente en modo de ,rueba = devuelve el com,robante de retencione electr#nica timbrado!
$!(
getTimbreCfdiRetencio /eneración de timbre de Retenciones de %FD$ en test.7ermite realiar el nesTest timbrado del com,robante de retencione electr#nica firmado ,or el cliente en modo de ,rueba = devuelve el timbre del com,robante de retencione electr#nica timbrado!
$!(
cancelaCFDiRetencione %ancelación de Retenciones de %FD$.7ermite cancelar com,robante de s retencione electr#nica timbrado!
$!(
cancelaCfdiRetencione %ancelación de Retenciones de %FD$ -irmada.7ermite cancelar com,robante de $!( sSigned retencione electr#nica timbrado a ,artir de la ,etici#n de cancelaci#n del cliente ,reviamente firmada!
WSCFDI EDICOM A $!5ebervice CFDide EDICOM| 7
WSCFDI EDICOM
2. F*(%$&(!# 2.1. /!(!RA%$+( D! %FD$ getCfdi 7ermite realiar el timbrado del com,robante firmado ,or el cliente = devuelve el com,robante timbrado! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio de CFDi = e,ecificar cuale on lo dato del com,robante ,ara ,oder /enerar aí la firma di/ital! En cada llamada e ,uede /enerar un CFDI!
A'ADA3 public bte!" getCfdi#String user$ String password$ bte!" file%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n!
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n!
•
-ile: Fichero con lo dato del com,robante firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J! 7uede enviare tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 El com,robante 0ue e enviar al 5ebervice e un 8M9 0ue contiene la informaci#n de la factura1 e inte/ra el certificado del contribu=ente e,edido ,or el S'T1 em,leado en la contrucci#n del Sello Di/ital del Com,robanteP 1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J ! Edicom1 como 7SECFDI recibe a trav del 5ebervice el Com,robante del contribu=ente ,ara realiar toda la validacione ei/ida ,or el S'T = ometerlo ,oteriormente al ,roceo de certificaci#n final! "alidacione 0ue contiene el ervicio: "erifica 0ue el ,eríodo de tiem,o entre la fecha de envío del documento = la de rece,ci#n del documento ,ara u certificaci#n no eceda de 3+ hora! "erifica i/ualmente 0ue el documento no ha=a ido certificado ,reviamente1 0ue el Certificado de Sello Di/ital CSD del contribu=ente et vi/ente en la fecha de /eneraci#n del com,robante1 = 0ue efectivamente corre,onda dicho CSD al contribu=ente 0ue emite el documento! Finalmentea la contata 0ueMicelnea la etructura del documento cum,lemodificacione! con la e,ecificacione tcnica conforme &eoluci#n Fical ,ara +($( = uceiva Si el CFDI cum,le con la validacione e,ecificada anteriormente1 e dar re,ueta al contribu=ente incor,orando un com,lemento obre el documento e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J! Ete com,lemento inclu=e el nHmero de folio ai/nado ,or el S'T1 fecha = hora de certificaci#n = ello di/ital del CFDI! Se adhiere i/ualmente como ,arte del com,lemento el nHmero de erie del certificado di/ital del S'T con el 0ue e reali# del certificaci#n del CFDI1 = el ello del S'T! 5
Respesta satis-actoria3 En cao de 0ue e ha=a realiado la firma di/ital1 el ervicio devolver un documento com,rimido en formato 6I7 con el CFDI con todo lo dato /enerado! WSCFDI EDICOM A +!Funcione | 8
WSCFDI EDICOM 5
Respesta con errores3 En cao de 0ue ha=a al/Hn error en el ,roceo de firma di/ital del CFDI1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI1 o 0ue el CFDI enviado no e correcto intcticamente e/Hn el e0uema del S'T!
!6!'P %ódigo del cliente3 public bte!" getCfdi#String user$ String pass$ bte!" file% ' tr ' cfdiSer(ice)getCfdi#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getCfdi7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hE/ /EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM8
ogkmG@UUem6T@G+mm=nFe>Gfl?hLCL+DGd !)))" C@;N,h8s?H8L:@Rf+(OSu(B/3:A;IUC,;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAAAAAAA+AIA AAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de un env7o de %FD$ satis-actorio! 01,ml (ersion2-3)4- encoding2-UTF56-17
WSCFDI EDICOM A +!Funcione | 9
WSCFDI EDICOM
0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getCfdiResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getCfdiReturn7U+sD::;ACAAIA<,tfO4AAAAAAAAAAAAAAAATAAAAU4l9TlQa=tGPS36,lhETE 3@LJr:FdHT8gdCD,;tsbS@u@LCk;+oU+ArS6Mm:(biRP+Bmt938incefnn8MHh8@Bgle@C; !)))" mn(?t<9AQ
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l documento lt&S+B7 no est codificado en UTF5608faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4308ns3.cod7 0ns3.te,t7+l documento lt&referencia7 no est codificado en UTF5 608ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
(ota: En este ejemplo concreto se presenta un error "!"indicando que el documento no est# codificado en $%&'(.
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
WSCFDI EDICOM A +!Funcione | 10
WSCFDI EDICOM
2.2. /!(!RA%$+( D! )$'"R! D! %FD$ getTimbreCfdi 7ermite realiar el timbrado del com,robante firmado ,or el cliente = devuelve el timbre del com,robante timbrado! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio de CFDi = e,ecificar cuale on lo dato del com,robante ,ara ,oder /enerar aí la firma di/ital! En cada llamada e ,uede /enerar un CFDI!
A'ADA3 public bte!" getTimbreCfdi#String user$ String password$ bte!" file%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n
•
-ile: Fichero con lo dato del com,robante firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J! 7uede enviare tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 El com,robante 0ue e enviar al 5ebervice e un 8M9 0ue contiene la informaci#n de la factura1 e inte/ra el certificado del contribu=ente e,edido ,or el S'T1 em,leado en la contrucci#n del Sello Di/ital del Com,robanteP e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J ! Edicom1 como 7SECFDI recibe a trav del 5ebervice el Com,robante del contribu=ente ,ara realiar toda la validacione ei/ida ,or el S'T = ometerlo ,oteriormente al ,roceo de certificaci#n final! "alidacione 0ue contiene el ervicio: "erifica 0ue el ,eríodo de tiem,o entre la fecha de envío del documento = la de rece,ci#n del documento ,ara u certificaci#n no eceda de 3+ hora! "erifica i/ualmente 0ue el documento no ha=a ido certificado ,reviamente1 0ue el Certificado de Sello Di/ital CSD del contribu=ente et vi/ente en la fecha de /eneraci#n del com,robante1 = 0ue efectivamente corre,onda dicho CSD al contribu=ente 0ue emite el documento! Finalmente contata 0ue la etructura del documento cum,le con la e,ecificacione tcnica conforme a la &eoluci#n Micelnea Fical ,ara +($( = uceiva modificacione! Si el CFDI cum,le con la validacione e,ecificada anteriormente1 e dar re,ueta al contribu=ente con el timbre de la firma di/ital e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J! Ete timbre inclu=e el nHmero de folio ai/nado ,or el S'T1 fecha = hora de certificaci#n = ello di/ital del CFDI! Se adhiere i/ualmente como ,arte del com,lemento el nHmero de erie del certificado di/ital del S'T con el 0ue e reali# del certificaci#n del CFDI1 = el ello del S'T! 5
Respesta satis-actoria3 En cao de 0ue e ha=a realiado la firma di/ital1 el ervicio devolver un documento com,rimido en formato 6I7 con el timbre del CFDI firmado con todo lo dato /enerado!
5
Respesta con errores3 En cao de 0ue ha=a al/Hn error en el ,roceo de firma di/ital del CFDI1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a
WSCFDI EDICOM A +!Funcione | 11
WSCFDI EDICOM
autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI1 o 0ue el CFDI enviado no e correcto intcticamente e/Hn el e0uema del S'T!
!6!'P %ódigo del cliente3 public bte!" getTimbreCfdi#String user$ String pass$ bte!" file% ' tr ' cfdiSer(ice)getTimbreCfdi#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getTimbreCfdi7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hE/ /EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM8ogkmG@UUem6T@G+mm=nFe>Gfl?hLCL+DGd !)))" C@;N,h8s?H8L:@Rf+(OSu(B/3:A;IUC,;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAAAAAAA+AIA AAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de generación de timbre satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7
WSCFDI EDICOM A +!Funcione | 12
WSCFDI EDICOM
0soapen(.:od7 0getTimbreCfdiResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getTimbreCfdiReturn7U+sD::;ACAAIA<,tfO4AAAAAAAAAAAAAAAATAAAAU4l9TlQa=tGPS36, lhETE3@LJr:FdHT8gdCD,;tsbS@u@LCk;+oU+ArS6Mm:(biRP+Bmt938incefnn8MHh8@Bgle@C; !)))" mn(?t<9AQ
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l documento lt&S+B7 no est codificado en UTF5608faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4308ns3.cod7 0ns3.te,t7+l documento lt&S+B7 no est codificado en UTF5 608ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
2.8. %A(%!AR %FD$ cancelaCFDi
7ermite cancelar com,robante timbrado! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio CFDi = e,ecificar cuale on lo CFDI 0ue 0uiere cancelar mediante lo <
A'ADA3 WSCFDI EDICOM A +!Funcione | 13
WSCFDI EDICOM
public CancelaResponse cancelaCFDi#String user$ String password$ String rfc$ String!" uuid$ bte!" pf,$ String pf,Password%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n
•
r-c: &FC del uuario 0ue et cancelando lo CFDI
•
•
id: 9ita de uuid 0ue identifican lo CFDI 0ue 0uiere cancelar el uuario! p-9: Certificado del cliente 0ue 0uiere cancelar lo CFDI! Dentro del mena;e SO'71 e enviarn lo dato del fichero ,f codificado en -ae>) dentro del obre de la llamada SO'7!
•
P9-Pass0ord: 7a5ord del certificado ,ara ,oder reali ar la firma de la ,etici#n con el certificado del uuario!
R!#P*!#)A3 Respesta satis-actoria3 En cao de 0ue e ha=a realiado la cancelaci#n Satifactoria de lo com,robante1 el ervicio devolver un litado de dato derivado de la cancelaci#n:
ids: 9itado de CFDI 0ue e han cancelado en la ,etici#n! ac: Confirmaci#n 0ue devuelve el ervicio del S'T como 0ue la ,etici#n e ha realiado! Et codificado en bae >) = contiene el acue de recibo e,edido ,or el S'T ,ara la cancelaci#n!
Respesta con errores: En cao de 0ue ha=a al/Hn error en el ,roceo de cancelaci#n de lo CFDI1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el certificado del uuario! 7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
!6!'P %ódigo del cliente3 public CancelaResponse cancelaCFDi#String user$ String pass$ String rfc$ String!" uuid$ bte!" pf,$ Strind pf,Password% ' CancelaResponse cancelaResponse 2 null& tr ' cancelaResponse 2 cfdiSer(ice)cancelaCFDi#user$ pass$ rfc$ uuid$ pf,$ pf,Password%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%&
WSCFDI EDICOM A +!Funcione | 14
WSCFDI EDICOM
Sstem)out)println#-+,ception. - / e)toString#%%& *return cancelaResponse& *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.cancelaCFDi7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.rfc7RFC08cfdi.rfc7 0cfdi.uuid7UUID308cfdi.uuid7 0cfdi.pf,7>II=u;I:ACCC6QCS?QSIbBD;+9AaCCCA+ggls>II=aDCC::6QCS?QSIbBD;+9:?CC::A wgg;>Ag+A>II+:;=JoLIh(cEA;c:>:wQCi?QSIbBD;+>A;wDg;IkI4:w;Tf+;CAggAgIID@DPn9d< AHQean9oCuRit(C==ec+:Sk?(g6ohliMIiGp6?FBag(UEaNh<,NCi:@?Ag8tG>D;PN6Pfa=ilI8Em6c(A;I+wRug>SUwIw=JoLIh(cEA;kG>R+F:lCugPO@K/>@9JsKTpe@=mg C>D+wITA=:gUrDg>CQgUA::S6MuToCAggA08cfdi.pf,7 0cfdi.pf,Password7?wertuio08cfdi.pf,Password7 08cfdi.cancelaCFDi7 08soapen(.:od7 08soapen(.+n(elope7
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 E;em,lo de una re,ueta de cancelación de %FD$ satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0cancelaCFDiResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0cancelaCFDiReturn7 0ack7PDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS:Hb,ucp PS=od9RwK;mkeTH6;@Fu@Gs UEQRF=lcB:(bnElI9htbQNPS=od9Rw/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEF blbBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElb QFDRkRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08ack7 0te,t73cNN4ddM5@@45HcHN5acdf 5b6KbKcfBM@BePDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS: Hb,ucpPS=od9RwK;mkeTH; !)))"
WSCFDI EDICOM A +!Funcione | 15
WSCFDI EDICOM
h/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEFbl bBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElbQFDR kRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08te,t7 0uuids7 0uuids73cNN4ddM5@@45HcHN5acdf5b6KbKcfBM@Be08uuids7 08uuids7 08cancelaCFDiReturn7 08cancelaCFDiResponse7 08soapen(.:od7 08soapen(.+n(elope7
E;em,lo de una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido cancelar los UUIDs especificados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 [email protected] 0ns3.te,t7Eo se ha podido cancelar los UUIDs especificados)08ns3.te,t7 08ns3.fault7 0ns@. ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
%&(#$D!RA%$&(!# $'P&R)A()!# )imeot de la llamada de esta -nción Qa= 0ue tener en cuenta 0ue el ,roceo de timbrado de,ende directamente del ,roceo de cancelaci#n del S'T! 7or tanto1 el tiem,o de re,ueta de eta funci#n no de,ende del ervicio de cancelaci#n de EDICOM1 ino 0ue de,ende directamente del tiem,o de ,roceo de lo ervidore del S'T! Ete ,roceo no e tan inmediato como e tiem,o de /eneraci#n del timbrado1 ,or lo 0ue e neceario 0ue e utilice un timeout coniderable ,ara eta ,eticione de cancelaci#n! 7or defecto1 lo cliente de 5ebervice uelen tener un timeout de 4( e/undo1 0ue ,uede lle/ar a er inuficiente ,ara la correcta e;ecuci#n de eta funci#n! Se recomienda utiliar ,ara eta llamada un timeout no inferior a + minuto ,ara evitar 0ue vena la llamada ,or timeout = e ,ierda la re,ueta de la ,etici#n del ervicio!
WSCFDI EDICOM A +!Funcione | 16
WSCFDI EDICOM
/estión de errores. En la e;ecuci#n de eta llamada ha= 0ue ditin/uir correctamente lo c#di/o de error 0ue /enera el ervicio de cancelaci#n de EDICOM = lo c#di/o de validaci#n 0ue devuelve el S'T en el acue de recibo! 9a re,ueta err#nea del ervicio de EDICOM1 como e ,uede ver en el e;em,lo anterior1 devuelve un ob;eto oa,env:Fault en la re,ueta del ervicio! Ete ob;eto contiene un ob;eto n$:cod con el c#di/o de error 0ue ,ro,orciona EDICOM ,ara la e;ecuci#n del ervicio!
!:emplo de na respesta de error del servicio de !D$%&'. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido cancelar los UUIDs especificados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 201 0ns3.te,t7Eo se ha podido cancelar los UUIDs especificados)08ns3.te,t7 08ns3.fault7 0ns@. ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
9a re,ueta 0ue devuelve el S'T et contenida dentro de la re,ueta correcta del ervicio de EDICOM! M concretamente en el ob;eto ac@ dentro del cancelaCFDi&eturn! Dentro de ete acue de recibo e encuentran lo c#di/o de e;ecuci#n de la cancelaci#n del com,robante ,or ,arte del S'T! Eto c#di/o de e;ecuci#n del S'T etn contem,lado en el 'neo +(!
!:emplo de na respesta de cancelación de %FD$ satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0cancelaCFDiResponse,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0cancelaCFDiReturn7 0ack7PDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS:Hb,ucp PS=od9RwK;mkeTH6;@Fu@Gs UEQRF=lcB:(bnElI9htbQNPS=od9Rw/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEF blbBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElb QFDRkRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08ack7
WSCFDI EDICOM A +!Funcione | 17
WSCFDI EDICOM
0te,t73cNN4ddM5@@45HcHN5acdf 5b6KbKcfBM@BePDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS: Hb,ucpPS=od9RwK;mkeTH; !)))" h/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEFbl bBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElbQFDR kRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08te,t7 0uuids7 0uuids73cNN4ddM5@@45HcHN5acdf5b6KbKcfBM@Be08uuids7 08uuids7 08cancelaCFDiReturn7 08cancelaCFDiResponse7 08soapen(.:od7 08soapen(.+n(elope7
'mbo c#di/o on totalmente inde,endiente1 = no deben confundire =a 0ue corre,onden a c#di/o de EDICOM = del S'T re,ectivamente!
2.;. %A'"$AR PA##&RD D! A%%!#& A #!RV$%$& D! %FD$ cange!ass"ord 7ermite al uuario cambiar el ,a5ord de acceo al ervicio CFDi! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio CFDi e indicar el nuevo ,a5ord ,ara hacer el cambio!
A'ADA3 public boolean cange!ass"ord#String user$ String password$ String newPassword%
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n!
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n!
•
ne0Pass0ord: Nueva contraea 0ue 0uiere utiliar el uuario ,ara realiar la coneione al ervicio!
R!#P*!#)A3 5
Respesta satis-actoria: En cao de 0ue e ha=a realiado el cambio correctamente1 el ervicio devolver un reultado correcto true!
5
Respesta de error: En cao de 0ue ha=a al/Hn error en el ,roceo de cambio de error 1 el ervicio devolver una Ece,ci#n!
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
!6!'P
WSCFDI EDICOM A +!Funcione | 18
WSCFDI EDICOM
%ódigo del cliente3 public boolean cange!ass"ord#String user$ String pass$ String newPass% ' boolean result 2 false& tr ' result 2 cfdiSer(ice)changePassword#user$ pass$ newPass%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * return result& *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.changePassword7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.newPassword7,,,,,,08cfdi.newPassword7 08cfdi.changePassword7 08soapen(.:od7 08soapen(.+n(elope7
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de cambio de pass0ord satis-actorio 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0changePasswordResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0changePasswordReturn7true08changePasswordReturn7 08changePasswordResponse7 08soapen(.:od7 08soapen(.+n(elope7
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17
WSCFDI EDICOM A +!Funcione | 19
WSCFDI EDICOM
0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.a contraseVa no puede ser la misma ?ue la ?ue haba anteriormente)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 [email protected] 0ns3.te,t7a contraseVa no puede ser la misma ?ue la ?ue haba anteriormente)08ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
2.<. /!(!RA%$+( D! %FD$ !( )!#) getCfdiTest 7ermite realiar el timbrado del com,robante firmado ,or el cliente en modo de ,rueba = devuelve el com,robante timbrado! Se trata de una llamada de TEST ,ara ,oder hacer ,rueba del funcionamiento del ervicio! Funciona eactamente i/ual 0ue la funci#n getCfdi 1 ,ero en cao de 0ue el CFDI ,ae toda la validacione 0ue im,lementa el ervicio1 /enera un CFDI con un timbre no vlido1 = no envía el CFDI al S'T! 9a e;ecuci#n de eta llamada no tiene en cuenta la limitacione del ervicio en ,roducci#n ,ara ,oder er ma fleible a la hora de 0ue e ha/an la ,rueba de conectividad con el 5ebervice final! "alidacione omitida en el entorno de TEST: 5
No e validan la 3+ hora de tiem,o entre la fecha del com,robante = la /eneraci#n del timbre!
5
No e tiene en cuenta el documento enviado1 ,or lo 0ue al enviar varia vece el mimo documento e /eneran ditinto timbre de TEST!
Eta validacione omitida ,ermiten 0ue e ,uedan hacer ,rueba de funcionamiento con un ;ue/o reducido de com,robante firmado in neceidad de ir /enerando continuamente com,robante timbrado!
A'ADA3 public bte!" getCfdiTest#String user$ String password$ bte!" file%&
PAR4'!)R ser: <uario 0ue va realiar la conei#n WSCFDI EDICOM A +!Funcione | 20
WSCFDI EDICOM
pass0ord: Contraea del uuario 0ue va realiar la conei#n -ile: Fichero con lo dato del com, robante firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J! 7uede enviare tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 Si el CFDI cum,le con la validacione e,ecificada anteriormente1 e dar re,ueta al contribu=ente incor,orando un com,lemento obre el documento! Ete com,lemento inclu=e el nHmero de folio ai/nado ,or el S'T1 fecha = hora de certificaci#n = ello di/ital del CFDI! Se adhiere i/ualmente como ,arte del com,lemento el nHmero de erie del certificado di/ital del S'T con el 0ue e reali# del certificaci#n del CFDI1 = el ello del S'T! 5
Respesta satis-actoria: En cao de 0ue e ha=a realiado la firma di/ital1 el ervicio devolver un documento com,rimido en formato 6I7 con el CFDI firmado con todo lo dato /enerado!
5
Respesta de error: En cao de 0ue ha=a al/Hn error en el ,roceo de firma di/ital del CFDI1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI1 o 0ue el CFDI enviado no e correcto intcticamente e/Hn el e0uema del S'T!
!6!'P %ódigo del cliente3 public bte!" getCfdiTest#String user$ String pass$ bte!" file% ' tr ' cfdiSer(ice)getCfdiTest#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getCfdiTest7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hE/ /EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM8ogkmG@UUem6T@G+mm=nFe>Gfl?hLCL+DGd
WSCFDI EDICOM A +!Funcione | 21
WSCFDI EDICOM
!)))" P,@hw;fDO69NE;Ncc?,;cAAFUSAAAfAAAAAAAAAA+AIAAAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de generación de %FDi en test satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getCfdiTestResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getCfdiTestReturn7U+sD::;ACAAIAEGEDHAAAAAAAAAAAAAAAAOAAAAU4l9TlaNfdQltn=hcl f+3>S3w;B>IwS3w;B>Iw
El i/uiente e;em,lo e una re,ueta de error! 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l certificado lt&7 no ha sido e,pedido por el Ser(icio de AdministraciWn Tributaria08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4608ns3.cod7 0ns3.te,t7+l certificado lt&7 no ha sido e,pedido por el Ser(icio de AdministraciWn Tributaria08ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7
WSCFDI EDICOM A +!Funcione | 22
WSCFDI EDICOM
08soapen(.+n(elope7
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
2.=. /!(!RA%$+( D! )$'"R! D! %F D$ !( )!#) getTimbreCfdiTest 7ermite realiar el timbrado del com,robante firmado ,or el cliente en modo de ,rueba = devuelve el timbre del com,robante timbrado! Se trata de una llamada de TEST ,ara ,oder hacer ,rueba del funcionamiento del ervicio! Funciona eactamente i/ual 0ue la funci#n getTimbreCfdi1 ,ero en cao de 0ue el CFDI ,ae toda la validacione 0ue im,lementa el ervicio1 /enera un CFDI con un timbre no vlido1 = no envía el com,robante al S'T! 9a e;ecuci#n de eta llamada no tiene en cuenta la limitacione del ervicio en ,roducci#n ,ara ,oder er ma fleible a la hora de 0ue e ha/an la ,rueba de conectividad con el 5ebervice final! "alidacione omitida en el entorno de TEST: 5
No e validan la 3+ hora de tiem,o entre la fecha del com,robante = la /eneraci#n del timbre!
5
No e tiene en cuenta el documento enviado1 ,or lo 0ue al enviar varia vece el mimo documento e /eneran ditinto timbre de TEST!
Eta validacione omitida ,ermiten 0ue e ,uedan hacer ,rueba de funcionamiento con un ;ue/o reducido de com,robante firmado in neceidad de ir /enerando continuamente com,robante timbrado!
A'ADA3 public bte!" getTimbreCfdiTest#String user$ String password$ bte!" file%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n
•
-ile: Fichero con lo dato del com,robante firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J! 7uede enviare tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 Si el CFDI cum,le con la validacione e,ecificada anteriormente1 e dar re,ueta al contribu=ente con el timbre de la firma di/ital! Ete timbr e inclu=e el nHmero de folio ai/nado ,or el S'T1 fecha = hora de certificaci#n = ello di/ital del CFDI! Se adhiere i/ualmente como ,arte del com,lemento el nHmero de erie del certificado di/ital del S'T con el 0ue e reali# del certificaci#n del CFDI1 = el ello del S'T! 5
Respesta satis-actoria3En cao de 0ue e ha=a realiado la firma di/ital1 el ervicio devolver un documento com,rimido en formato 6I7 con el timbre del CFDI con todo lo dato /enerado!
WSCFDI EDICOM A +!Funcione | 23
WSCFDI EDICOM 5
Respesta con error3En cao de 0ue ha=a al/Hn error en el ,roceo de firma di/ital del CFDI1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI1 o 0ue el CFDI enviado no e correcto intcticamente e/Hn el e0uema del S'T!
!6!'P %ódigo del cliente3 public bte!" getTimbreCfdiTest#String user$ String pass$ bte!" file% ' tr ' cfdiSer(ice)getTimbreCfdiTest#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getTimbreCfdiTest7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hET+ltcF64E >>DkueQ3sfu3@LJOhF3c;erJO6SipGsdt/EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM 8cc?,;cAAFUSAAAfAAAAAAAAAA+AIAAAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de generación de timbre de %FD$ en test satis-actoria.
WSCFDI EDICOM A +!Funcione | 24
WSCFDI EDICOM
01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getTimbreCfdiTestResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getTimbreCfdiTestReturn7U+sD::;ACAAIAEGEDHAAAAAAAAAAAAAAAAOAAAAU4l9TlaNfdQlt n=hclf+3>S3w;B>IwS3w;B>Iw
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l documento lt&S+37 a ha sido firmado lt&DKBNN6@H4DB4N3HH6466C+D36NC46B@4B6A6MBNC708faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4M08ns3.cod7 0ns3.te,t7+l documento lt&S+37 a ha sido firmado lt&DKBNN6@[email protected],t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
2.>. %&'PR&"A%$+( D! )$'"RAD& %FD $ get##$D 7ermite com,robar i un com,robante ha ido timbrado ,reviamente = devuelve el <
WSCFDI EDICOM A +!Funcione | 25
WSCFDI EDICOM
Eta funci#n et deti nada a verificar 0ue el timbre e ha /enerado correctamente1 ,or lo 0ue #lo buca el com,robante timbrado dentro de la 3+ hora i/uiente a la /eneraci#n del timbre! 7aado ete tiem,o1 no e ,uede recu,erar el <
A'ADA3 public String get##$D#String user$ String password$ bte!" file%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n!
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n!
•
-ile: Fichero con lo dato del com,robante firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J! 7uede enviare tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 En cao de 0ue el com,robante ha=a ido timbrado1 devolver el <
Respesta satis-actoria3En cao de 0ue e ha=a com,robado 0ue el com,robante e ha timbrado1 el ervicio devolver el <
5
Respesta con errores3 En cao de 0ue ha=a al/Hn error en el ,roceo de bH0ueda del com,robante timbrado1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI!
!6!'P %ódigo del cliente3 public String get##$D#String user$ String pass$ bte!" file% ' String uuid 2 null& tr ' uuid 2 cfdiSer(ice)getUUID#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catchRe)printStackTrace#%& #Remote+,ception Re% ' Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * return uuid& *
WSCFDI EDICOM A +!Funcione | 26
WSCFDI EDICOM
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getUUID7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hE/ /EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM8ogkmG@UUem6T@G+mm=nFe>Gfl?hLCL+DGd !)))" C@;N,h8s?H8L:@Rf+(OSu(B/3:A;IUC,;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAAAAAAA+AIA AAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta atifactoria de la obtenci#n de un <Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getUUIDResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getUUIDReturn7555508getUUIDReturn7 08getUUIDResponse7 08soapen(.:od7 08soapen(.+n(elope7
(ota: Los datos que aparecen en este ejemplo de código no son reales. El i/uiente e;em,lo e una re,ueta de error. 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception. Eo se ha podido comprobar el UUID del comprobante)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7@[email protected] 0ns3.te,t7Eo se ha podido comprobar el UUID del comprobante)08ns3.te,t7 08ns3.fault7
WSCFDI EDICOM A +!Funcione | 27
WSCFDI EDICOM
[email protected] ,[email protected],ml)apache)org8a,[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
(ota: En este ejemplo concreto se presenta un error ")!)" *o se ha podido comprobar el $$+, del comprobante.
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
2.?. %&'PR&"A%$+( D! )$'"RAD& %FD$ !( )!#) get##$DTest 7ermite com,robar i un com,robante ha ido timbrado ,reviamente en el entorno de ,rueba de EDICOM = devuelve el <
A'ADA3 public String get##$DTest#String user$ String password$ bte!" file%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n!
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n!
•
-ile: Fichero con lo dato del com,robante firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($( $J! 7uede enviare tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 En cao de 0ue el com,robante ha=a ido timbrado en el entorno de ,rueba1 devolver el <
Respesta satis-actoria3En cao de 0ue e ha=a com,robado 0ue el com,robante e ha timbrado en el entorno de ,rueba1 el ervicio devolver el <
WSCFDI EDICOM 5
Respesta con errores3 En cao de 0ue ha=a al/Hn error en el ,roceo de bH0ueda del com,robante timbrado en el entorno de ,rueba1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI!
!6!'P %ódigo del cliente3 public String get##$DTest#String user$ String pass$ bte!" file% ' String uuid 2 null& tr ' uuid 2 cfdiSer(ice)getUUIDTest#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * return uuid& *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getUUIDTest7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hE/ /EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM8ogkmG@UUem6T@G+mm=nFe>Gfl?hLCL+DGd !)))" C@;N,h8s?H8L:@Rf+(OSu(B/3:A;IUC,;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAAAAAAA+AIA AAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta satis-actoria! Se obtiene el <
WSCFDI EDICOM A +!Funcione | 29
WSCFDI EDICOM
0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getUUIDTestResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getUUIDTestReturn73B+DF+65M+NM5HHNN5CB35 KKK3CHANAM3D08getUUIDTestReturn7 08getUUIDTestResponse7 08soapen(.:od7 08soapen(.+n(elope7
(ota: El $$+, reflejado en este ejemplo es un $$+, como el obten ido en entorno de pruebas- El segundo grupo es siempre "E/" 0"%E1%"2
El i/uiente e;em,lo e una re,ueta de error. 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido comprobar el UUID del comprobante)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7@[email protected] 0ns3.te,t7Eo se ha podido comprobar el UUID del comprobante)08ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
(ota: En este ejemplo concreto se presenta un error ")!)" *o se ha podido comprobar el $$+, del comprobante
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
2.@. %A(%!AR %FD$ F$R'AD& cancelaCFDi%igned
7ermite cancelar com,robante timbrado! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio CFDi! En ete cao1 el cliente tiene 0ue im,lementar la ,etici#n de cancelaci#n de lo timbre 0ue 0uieren cancelar = firmarla! Eta ,etici#n firmada e envía directamente al 5ebervice ,ara 0ue /enere la ,etici#n de cancelaci#n a ,artir de eo dato firmado
WSCFDI EDICOM A +!Funcione | 30
WSCFDI EDICOM
A'ADA3 public CancelaResponse cancelaCFDi%igned#String user$ String password$ bte!" sign%&
PAR4'!)R ser: <uario 0ue va realiar la conei#n! pass0ord: Contraea del uuario 0ue va realiar la conei#n! sign: 7etici#n de cancelaci#n firmada ,or el ,ro,io cliente! Dentro del mena;e SO'71 e enviarn lo dato de la cancelaci#n codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 Respesta satis-actoria3 En cao de 0ue e ha=a realiado la cancelaci#n Satifactoria de lo com,robante1 el ervicio devolver un litado de dato derivado de la cancelaci#n:
ids: 9itado de CFDI 0ue e han cancelado en la ,etici#n! ac: Confirmaci#n 0ue devuelve el ervicio del S'T como 0ue la ,etici#n e ha realiado! Et codificado en bae >) = contiene el acue de recibo e,edido ,or el S'T ,ara la cancelaci#n!
Respesta con errores: En cao de 0ue ha=a al/Hn error en el ,roceo de cancelaci#n de lo CFDI1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el certificado del uuario! 7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
!6!'P %ódigo del cliente3 public CancelaResponse cancelaCFDi%igned#String user$ String pass$ bte!" sign% ' CancelaResponse cancelaResponse 2 null& tr ' cancelaResponse 2 cfdiSer(ice)cancelaCFDiSigned#user$ pass$ sign%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& *return cancelaResponse& *
WSCFDI EDICOM A +!Funcione | 31
WSCFDI EDICOM
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.cancelaCFDiSigned7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.sign7P+EhbmElbQFOauI+Ll@hhPSI>D+,TABT+GD+BTAwEOIEOIi:Hb,uc4ia9R4cDo(@EhbmElbQFOLm;uc@F4md(iNteCIgeQ3sbn> Ke9EkPS=od9RwDA,3hETFEOaQGtSIgeQ3sbn>Ke9EpPS=od9R!)))" rSBFtdU3(TU;aGc;3c+FBUlpJ4=:cm>rTRL Uh9UDkwdkEiG@,lUT4PCETAN;@GdQlmaEhdQU/PCETANRQF4TH64tleUluLm6/PCTadu R3cmU/PCDNOL,h@l(bOH208cfdi.sign7 08cfdi.cancelaCFDiSigned7 08soapen(.:od7 08soapen(.+n(elope7
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 E;em,lo de una re,ueta de cancelación de %FD$ -irmada satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0cancelaCFDiSignedResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0cancelaCFDiSignedReturn7 0ack7PDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS:Hb,ucp PS=od9RwK;mkeTH6;@Fu@Gs UEQRF=lcB:(bnElI9htbQNPS=od9Rw/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEF blbBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElb QFDRkRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08ack7 0te,t73cNN4ddM5@@45HcHN5acdf 5b6KbKcfBM@BePDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS: Hb,ucpPS=od9RwK;mkeTH; !)))" h/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEFbl bBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElbQFDR kRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08te,t7 0uuids7 0uuids73cNN4ddM5@@45HcHN5acdf5b6KbKcfBM@Be08uuids7 08uuids7 08cancelaCFDiSignedReturn7 08cancelaCFDiSignedResponse7 08soapen(.:od7 08soapen(.+n(elope7
WSCFDI EDICOM A +!Funcione | 32
WSCFDI EDICOM
E;em,lo de una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido cancelar los UUIDs especificados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 [email protected] 0ns3.te,t7Eo se ha podido cancelar los UUIDs especificados)08ns3.te,t7 08ns3.fault7 0ns@. ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
(ota: 3ara er una lista completa de los posibles códigos de error 5 respuestas asociadas consultar el punto9ita de C#di/o de Error!
%&(#$D!RA%$&(!# $'P&R)A()!# )imeot de la llamada de esta -nción Qa= 0ue tener en cuenta 0ue el ,roceo de timbrado de,ende directamente del ,roceo de cancelaci#n del S'T! 7or tanto1 el tiem,o de re,ueta de eta funci#n no de,ende del ervicio de cancelaci#n de EDICOM1 ino 0ue de,ende directamente del tiem,o de ,roceo de lo ervidore del S'T! Ete ,roceo no e tan inmediato como e tiem,o de /eneraci#n del timbrado1 ,or lo 0ue e neceario 0ue e utilice un timeout coniderable ,ara eta ,eticione de cancelaci#n! 7or defecto1 lo cliente de 5ebervice uelen tener un timeout de 4( e/undo1 0ue ,uede lle/ar a er inuficiente ,ara la correcta e;ecuci#n de eta funci#n! Se recomienda utiliar ,ara eta llamada un timeout no inferior a + minuto ,ara evitar 0ue vena la llamada ,or timeout = e ,ierda la re,ueta de la ,etici#n del ervicio!
/estión de errores. En la e;ecuci#n de eta llamada ha= 0ue ditin/uir correctamente lo c#di/o de error 0ue /enera el ervicio de cancelaci#n de EDICOM = lo c#di/o de validaci#n 0ue devuelve el S'T en el acue de recibo! 9a re,ueta err#nea del ervicio de EDICOM1 como e ,uede ver en el e;em,lo anterior1 devuelve un ob;eto oa,env:Fault en la re,ueta del ervicio! Ete ob;eto contiene un ob;eto n$:cod con el c#di/o de error 0ue ,ro,orciona EDICOM ,ara la e;ecuci#n del ervicio!
!:emplo de na respesta de error del servicio de !D$%&'. 01,ml (ersion2-3)4- encoding2-UTF56-17
WSCFDI EDICOM A +!Funcione | 33
WSCFDI EDICOM
0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido cancelar los UUIDs especificados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 201 0ns3.te,t7Eo se ha podido cancelar los UUIDs especificados)08ns3.te,t7 08ns3.fault7 0ns@. ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
9a re,ueta 0ue devuelve el S'T et contenida dentro de la re,ueta correcta del ervicio de EDICOM! M concretamente en el ob;eto ac@ dentro del cancelaCFDi&eturn! Dentro de ete acue de recibo e encuentran lo c#di/o de e;ecuci#n de la cancelaci#n del com,robante ,or ,arte del S'T! Eto c#di/o de e;ecuci#n del S'T etn contem,lado en el 'neo +(!
!:emplo de na respesta de cancelación de %FD$ satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0cancelaCFDiResponse,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0cancelaCFDiReturn7 0ack7PDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS:Hb,ucp PS=od9RwK;mkeTH6;@Fu@Gs UEQRF=lcB:(bnElI9htbQNPS=od9Rw/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEF blbBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElb QFDRkRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08ack7 0te,t73cNN4ddM5@@45HcHN5acdf 5b6KbKcfBM@BePDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS: Hb,ucpPS=od9RwK;mkeTH; !)))" h/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEFbl bBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElbQFDR kRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08te,t7 0uuids7 0uuids73cNN4ddM5@@45HcHN5acdf5b6KbKcfBM@Be08uuids7 08uuids7 08cancelaCFDiReturn7 08cancelaCFDiResponse7 08soapen(.:od7
WSCFDI EDICOM A +!Funcione | 34
WSCFDI EDICOM
08soapen(.+n(elope7
'mbo c#di/o on totalmente inde,endiente1 = no deben confundire =a 0ue corre,onden a c#di/o de EDICOM = del S'T re,ectivamente!
2.1. &")!(%$+( D! A%BC A%*#! D! )$'"RAD& getCfdi&ck 7ermite obtener el acue 'c@no5led/e o 'CB! /enerado ,or el S'T en el momento de timbrar el com,robante! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio de CFDi = e,ecificar cuale on lo <
A'ADA3 public bte!" getCfdi&ck#String user$ String password$ String!" uuid%&
PAR4'!)R ser: <uario 0ue va realiar la conei#n! pass0ord: Contraea del uuario 0ue va realiar la conei#n! id: 9itado de <
R!#P*!#)A3 Respesta satis-actoria3En cao de 0ue e ha=a realiado la ,etici#n correcta1 el ervicio devolver un fichero com,rimido en formato 6I7 con lo ditinto 'CB de lo <
Respesta con errores3 En cao de 0ue ha=a al/Hn error en el ,roceo de obtenci#n de lo 'CB1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado nin/Hn <
!6!'P %ódigo del cliente3 public bte!" getCfdi&ck#String user$ String pass$ String!" uuid% ' tr ' cfdiSer(ice)getCfdiAck#user$ pass$ uuid%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%&
WSCFDI EDICOM A +!Funcione | 35
WSCFDI EDICOM
* catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getCfdiAck7 0cfdi.user7,,,,,08cfdi.user7 0cfdi.password7,,,,,,,08cfdi.password7 0cfdi.uuid7DH:@@C5KNHF5HDN65:D6D5@[email protected] 08cfdi.getCfdiAck7 08soapen(.:od7 08soapen(.+n(elope7
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de obtención de A%Bs satis-actoria! 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getCfdiAckResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getCfdiAckReturn7U+sD::;ACAAIA<,tfO4AAAAAAAAAAAAAAAATAAAAU4l9TlQa=tGPS36,lh ETE3@LJr:FdHT8gdCD,;tsbS@u@LCk;+oU+ArS6Mm:(biRP+Bmt938incefnn8MHh8@Bgle@C; !)))" mn(?t<9AQ
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7
WSCFDI EDICOM A +!Funcione | 36
WSCFDI EDICOM
0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception. Eo se ha podido obtener la respuesta de la peticiWn de generaciWn del comprobante)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 [email protected] 0ns3.te,t7Eo se ha podido obtener la respuesta de la peticiWn de generaciWn del comprobante)08ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
(ota: 3ara er una lista completa de los posibles códigos de error 5 respuestas asociadas consultar el punto9ita de C#di/o de Error!
2.11. &")!(%$+( D! )$'"R! A PAR)$R D! **$D. 'etCfdiFrom##$D 7ermite obtener com,robante timbrado anteriormente! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio de CFDi = e,ecificar u &FC = lo <
A'ADA3 public bte!" getCfdiFrom##$D#String user$ String password$ String rfc$ String!" uuid%&
PAR4'!)R ser: <uario 0ue va realiar la conei#n! pass0ord: Contraea del uuario 0ue va realiar la conei#n! r-c: &FC del emior del com,robante!! id: 9itado de <
R!#P*!#)A3 Respesta satis-actoria3En cao de 0ue e ha=a realiado la ,etici#n correcta1 el ervicio devolver un fichero com,rimido en formato 6I7 con lo com,robante timbrado de lo <
Respesta con errores3 En cao de 0ue ha=a al/Hn error en el ,roceo de obtenci#n de lo com,robante timbrado1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado nin/Hn <
WSCFDI EDICOM A +!Funcione | 37
WSCFDI EDICOM
!6!'P %ódigo del cliente3 public bte!" getCfdiFrom##$D#String user$ String pass$ String rfc$ String!" uuid% ' tr ' cfdiSer(ice)getCfdiFrom UUID#user$ pass$ rfc$ uuid%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getCfdiFromUUID7 0cfdi.user7,,,,,08cfdi.user7 0cfdi.password7,,,,,08cfdi.password7 0cfdi.rfc7,,,,,08cfdi.rfc7 0cfdi.uuid7DH:@@C5KNHF5HDN65:D6D5@[email protected] 08cfdi.getCfdiFromUUID7 08soapen(.:od7 08soapen(.+n(elope7
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de obtención de los comprobantes timbrados satis-actoria ! 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getCfdiFromUUIDResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getCfdiFromUUIDReturn7U+sD::;ACAAIA<,tfO4AAAAAAAAAAAAAAAATAAAAU4l9TlQa=tGPS3 6,lhETE3@LJr:FdHT8gdCD,;tsbS@u@LCk;+oU+ArS6Mm:(biRP+Bmt938incefnn8MHh8@Bgle@C; !)))" mn(?t<9AQ
WSCFDI EDICOM A +!Funcione | 38
WSCFDI EDICOM
08getCfdiFromUUIDResponse7 08soapen(.:od7 08soapen(.+n(elope7
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido obtener el comprobante de los UUIDs en(iados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 [email protected] 0ns3.te,t7Eo se ha podido obtener el comprobante de los UUIDs en(iados)08ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
(ota: 3ara er una lista completa de los posibles códigos de error 5 respuestas asociadas consultar el punto9ita de C#di/o de Error!
2.12. /!(!RA%$+( D! %FD$ D! R!)!(%$&(!# !!%)R+($%A# getCfdiRetenciones 7ermite realiar el timbrado del com,robante de retencione electr#nica firmado ,or el cliente = devuelve el com,robante de retencione electr#nica timbrado! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio de CFDi = e,ecificar cuale on lo dato del com,robante de retencione electr#nica ,ara ,oder /enerar aí la firma di/ital! En cada llamada e ,uede /enerar un CFDI!
A'ADA3 public bte!" getCfdiRetenciones#String user$ String password$ bte!" file%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n!
WSCFDI EDICOM A +!Funcione | 39
WSCFDI EDICOM •
pass0ord: Contraea del uuario 0ue va realiar la conei#n!
•
-ile: Fichero con lo dato del com,robante de retencione electr#nica firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante! 7uede enviare tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 El com,robante 0ue e enviar al 5ebervice e un 8M9 0ue contiene la informaci#n de la factura1 e inte/ra el certificado del contribu=ente e,edido ,or el S'T1 em,leado en la contrucci#n del Sello Di/ital del Com,robanteP1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($) $J ! Edicom1 como 7SECFDI recibe a trav del 5ebervice el Com,robante del contribu=ente ,ara realiar toda la validacione ei/ida ,or el S'T = ometerlo ,oteriormente al ,roceo de certificaci#n final! "alidacione 0ue contiene el ervicio: "erifica 0ue el ,eríodo de tiem,o entre la fecha de envío del documento = la de rece,ci#n del documento ,ara u certificaci#n no eceda de 3+ hora! "erifica i/ualmente 0ue el documento no ha=a ido certificado ,reviamente1 0ue el Certificado de Sello Di/ital CSD del contribu=ente et vi/ente en la fecha de /eneraci#n del com,robante1 = 0ue efectivamente corre,onda dicho CSD al contribu=ente 0ue emite el documento! Finalmente contata 0ue la etructura del documento cum,le con la e,ecificacione tcnica conforme a la &eoluci#n Micelnea Fical ,ara +($) = uceiva modificacione! Si el CFDI de retencione electr#nica cum,le con la validacione e,ecificada anteriorm ente1 e dar re,ueta al contribu=ente incor,orando un com,lemento obre el documento e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($) $J! Ete com,lemento inclu=e el nHmero de folio ai/nado ,or el S'T1 fecha = hora de certificaci#n = ello di/ital del CFDI de retencione electr#nica! Se adhiere i/ualmente como ,arte del com,lemento el nHmero de erie del certificado di/ital del S'T con el 0ue e reali# del certificaci#n del CFDI1 = el ello del S'T! 5
Respesta satis-actoria3 En cao de 0ue e ha=a realiado la firma di/ital1 el ervicio devolver un documento com,rimido en formato 6I7 con el CFDI de retencione electr#nica con todo lo dato /enerado!
5
Respesta con errores3 En cao de 0ue ha=a al/Hn error en el ,roceo de firma di/ital del CFDI de retencione electr#nica1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI de retencione electr#nica1 o 0ue el CFDI de retencione electr#nica enviado no e correcto intcticamente e/Hn el e0uema del S'T!
!6!'P %ódigo del cliente3 public bte!" getCfdiRetenciones#String user$ String pass$ bte!" file% ' tr ' cfdiSer(ice)getCfdiRetenciones#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%&
WSCFDI EDICOM A +!Funcione | 40
WSCFDI EDICOM
Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getCfdiRetenciones7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hE/ /EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM8ogkmG@UUem6T@G+mm=nFe>Gfl?hLCL+DGd !)))" C@;N,h8s?H8L:@Rf+(OSu(B/3:A;IUC,;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAAAAAAA+AIA AAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de un env7o de %FD$ de retenciones electrónicas satis-actorio ! 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getCfdiRetencionesResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getCfdiRetencionesReturn7U+sD::;ACAAIA<,tfO4AAAAAAAAAAAAAAAATAAAAU4l9TlQa=tG PS36,lhETE3@LJr:FdHT8gdCD,;tsbS@u@LCk;+oU+ArS6Mm:(biRP+Bmt938incefnn8MHh8@Bgle@ C; !)))" mn(?t<9AQ
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
WSCFDI EDICOM A +!Funcione | 41
WSCFDI EDICOM
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l documento lt&S+B7 no est codificado en UTF5608faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4308ns3.cod7 0ns3.te,t7+l documento lt&referencia7 no est codificado en UTF5 608ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
(ota: En este ejemplo concreto se presenta un error "!"indicando que el documento no est# codificado en $%&'(.
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
WSCFDI EDICOM A +!Funcione | 42
WSCFDI EDICOM
2.18. /!(!RA%$+( !!%)R+($%A#
D!
)$'"R!
D!
%FD$
D!
R!)!(%$&(!#
getTimbreCfdiRetenciones 7ermite realiar el timbrado del com,robante de retencione electr#nica firmado ,or el cliente = devuelve el timbre del com,robante de retencione electr#nica timbrado! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio de CFDi = e,ecificar cuale on lo dato del com,robante ,ara ,oder /enerar aí la firma di/ital! En cada llamada e ,uede /enerar un CFDI de retencione electr#nica!
A'ADA3 public bte!" getTimbreCfdiRetenciones#String user$ String password$ bte!" file%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n
•
-ile: Fichero con lo dato del com,robante de retencione electr#nica firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante de retencione electr#nica1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($) $J! 7uede enviar e tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 El com,robante de retencione electr#nica 0ue e enviar al 5ebervice e un 8M9 0ue conti ene la informaci#n de la factura1 e inte/ra el certificado del contribu=ente e,edido ,or el S'T1 em,leado en la contrucci#n del Sello Di/ital del Com,robanteP e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($) $J ! Edicom1 como 7SECFDI recibe a trav del 5ebervice el Com,robante de retencione electr#nica del contribu=ente ,ara realiar toda la validacione ei/ida ,or el S'T = ometerlo ,oteriormente al ,roceo de certificaci#n final! "alidacione 0ue contiene el ervicio: "erifica 0ue el ,eríodo de tiem,o entre la fecha de envío del documento = la de rece,ci#n del documento ,ara u certificaci#n no eceda de 3+ hora! "erifica i/ualmente 0ue el documento no ha=a ido certificado ,reviamente1 0ue el Certificado de Sello Di/ital CSD del contribu=ente vi/ente en la0ue fecha de /eneraci#n del com,robante1 = 0ue efectivamente corre,onda dicho CSDet al contribu=ente emite el documento! Finalmente contata 0ue la etructura del documento cum,le con la e,ecificacione tcnica conforme a la &eoluci#n Micelnea Fical ,ara +($) = uceiva modificacione! Si el CFDI de retencione electr#nica cum,le con la validacione e,ecificada anteriorm ente1 e dar re,ueta al contribu=ente con el timbre de la firma di/ital e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($) $J! Ete timbre inclu=e el nHmero de folio ai/nado ,or el S'T1 fecha = hora de certificaci#n = ello di/ital del CFDI! Se adhiere i/ualmente como ,arte del com,lemento el nHmero de erie del certificado di/ital del S'T con el 0ue e reali# del certificaci#n del CFDI1 = el ello del S'T! WSCFDI EDICOM A +!Funcione | 43
WSCFDI EDICOM 5
Respesta satis-actoria3 En cao de 0ue e ha=a realiado la firma di/ital1 el ervicio devolver un documento com,rimido en formato 6I7 con el timbre del CFDI de retencione electr#nica firmado con todo lo dato /enerado!
5
Respesta con errores3 En cao de 0ue ha=a al/Hn error en el ,roceo de firma di/ital del CFDI de retencione electr#nica1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI de retencione electr#nica1 o 0ue el CFDI de retencione electr#nica enviado no e correcto intcticamente e/Hn el e0uema del S'T!
!6!'P %ódigo del cliente3 public bte!" getTimbreCfdiRetenciones#String user$ String pass$ bte!" file% ' tr ' cfdiSer(ice)getTimbreCfdiRetenciones#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getTimbreCfdiRetenciones7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hE/ /EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM8ogkmG@UUem6T@G+mm=nFe>Gfl?hLCL+DGd !)))" C@;N,h8s?H8L:@Rf+(OSu(B/3:A;IUC,;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAAAAAAA+AIA AAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
WSCFDI EDICOM A +!Funcione | 44
WSCFDI EDICOM
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de generación de timbre satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getTimbreCfdiRetencionesResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getTimbreCfdiRetencionesReturn7U+sD::;ACAAIA<,tfO4AAAAAAAAAAAAAAAATAAAAU4l9TlQa =tGPS36,lhETE3@LJr:FdHT8gdCD,;tsbS@u@LCk;+oU+ArS6Mm:(biRP+Bmt938incefnn8MHh8 @Bgle@C; !)))" mn(?t<9AQ
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l documento lt&S+B7 no est codificado en UTF5608faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4308ns3.cod7 0ns3.te,t7+l documento lt&S+B7 no est codificado en UTF5 608ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
9ita de Para ver na lista completa de los posibles códigos de error E respestas asociadas consltar el pnto C#di/o de Error!
2.1;. /!(!RA%$+( D! %FD$ D! R!)!(%$&(!# !!%)R+($%A# !( )!#) getCfdiRetencionesTest
WSCFDI EDICOM A +!Funcione | 45
WSCFDI EDICOM
7ermite realiar el timbrado del com,robante de retencione electr#nica firmado ,or el cliente en modo de ,rueba = devuelve el com,robante timbrado! Se trata de una llamada de TEST ,ara ,oder hacer ,rueba del funcionamiento del ervicio! Funciona eactamente i/ual 0ue la funci#n getCfd iRetenciones1 ,ero en cao de 0ue el CFDI de retencione electr#nica ,ae toda la validacione 0ue im,lementa el ervicio1 /enera un CFDI de retencione electr#nica con un timbre no vlido1 = no envía el CFDI de retencione electr#nica al S'T! 9a e;ecuci#n de eta llamada no tiene en cuenta la limitacione del ervicio en ,roducci#n ,ara ,oder er ma fleible a la hora de 0ue e ha/an la ,rueba de conectividad con el 5ebervice final! "alidacione omitida en el entorno de TEST: 5 5
No e validan la 3+ hora de tiem,o entre la fecha del com,robante = la /eneraci#n del timbre! No e tiene en cuenta el documento enviado1 ,or lo 0ue al enviar varia vece el mimo documento e /eneran ditinto timbre de TEST!
Eta validacione omitida ,ermiten 0ue e ,uedan hacer ,rueba de funcionamiento con un ;ue/o reducido de com,robante firmado in neceidad de ir /enerando continuamente com,robante timbrado!
A'ADA3 public bte!" getCfdiRetencionesTest#String user$ String password$ bte!" file%&
PAR4'!)R ser: <uario 0ue va realiar la conei#n pass0ord: Contraea del uuario 0ue va realiar la conei#n -ile: Fichero con lo dato del com,robante de retencione electr#nica firmado ,or el uuario! Se
trata del 8M9 con la informaci#n del com,robante de retencione electr#nica1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($) $J! 7uede enviare tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 Si el CFDI de retencione electr#nica cum,le con la validacione e,ecificada anteriorm ente1 e dar re,ueta al contribu=ente incor,orando un com,lemento obre el documento! Ete com,lemento inclu=e el nHmero de folio ai/nado ,or el S'T1 fecha = hora de certificaci#n = ello di/ital del CFDI! Se adhiere i/ualmente como ,arte del com,lemento el nHmero de erie del certificado di/ital del S'T con el 0ue e reali# del certificaci#n del CFDI1 = el ello del S'T! 5
Respesta satis-actoria: En cao de 0ue e ha=a realiado la firma di/ital1 el ervicio devolver un documento com,rimido en formato 6I7 con el CFDI de retencione electr#nica firmado con todo lo dato /enerado!
5
Respesta de error: En cao de 0ue ha=a al/Hn error en el ,roceo de firma di/ital del CFDI de retencione electr#nica1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI de retencione electr#nica1 o 0ue el CFDI de retencione electr#nica enviado no e correcto intcticamente e/Hn el e0uema del S'T!
!6!'P
WSCFDI EDICOM A +!Funcione | 46
WSCFDI EDICOM
%ódigo del cliente3 public bte!" getCfdiRetencionesTest#String user$ String pass$ bte!" file% ' tr ' cfdiSer(ice)getCfdiRetencionesTest#user$ pass$ file%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getCfdiRetencionesTest7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hE/ /EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM8ogkmG@UUem6T@G+mm=nFe>Gfl?hLCL+DGd !)))" P,@hw;fDO69NE;Ncc?,;cAAFUSAAAfAAAAAAAAAA+AIAAAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em,lo e una re,ueta de generación de %FDi en test satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getCfdiRetencionesTestResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7
WSCFDI EDICOM A +!Funcione | 47
WSCFDI EDICOM
0getCfdiRetencionesTestReturn7U+sD::;ACAAIAEGEDHAAAAAAAAAAAAAAAAOAAAAU4l9TlaN fdQltn=hclf+3>S3w;B>IwS3w;B>Iw
El i/uiente e;em,lo e una re,ueta de error! 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l certificado lt&7 no ha sido e,pedido por el Ser(icio de AdministraciWn Tributaria08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4608ns3.cod7 0ns3.te,t7+l certificado lt&7 no ha sido e,pedido por el Ser(icio de AdministraciWn Tributaria08ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
2.1<. /!(!RA%$+( D! !!%)R+($%A# !( )!#)
)$'"R!
D!
%FD$
D!
R!)!(%$&(!#
getTimbreCfdiRetencionesTest 7ermite realiar el timbrado del com,robante de retencione electr#nica firmado ,or el cliente en modo de ,rueba = devuelve el timbre del com,robante de retencione electr#nica timbrado! Se trata de una llamada de TEST ,ara ,oder hacer ,rueba del funcionamiento del ervicio! Funciona eactamente i/ual 0ue la funci#n getTimbreCfdiRetenciones1 ,ero en cao de 0ue el CFDI de retencione electr#nica ,ae toda la validacione 0ue im,lementa el ervicio1 /enera un CFDI de retencione electr#nica con un timbre no vlido1 = no envía el com,robante de retencione electr#nica al S'T!
WSCFDI EDICOM A +!Funcione | 48
WSCFDI EDICOM
9a e;ecuci#n de eta llamada no tiene en cuenta la limitacione del ervicio en ,roducci#n ,ara ,oder er ma fleible a la hora de 0ue e ha/an la ,rueba de conectividad con el 5ebervice final! "alidacione omitida en el entorno de TEST: 5
No e validan la 3+ hora de tiem,o entre la fecha del com,robante = la /eneraci#n del timbre!
5
No e tiene en cuenta el documento enviado1 ,or lo 0ue al enviar varia vece el mimo documento e /eneran ditinto timbre de TEST!
Eta validacione omitida ,ermiten 0ue e ,uedan hacer ,rueba de funcionamiento con un ;ue/o reducido de com,robante firmado in neceidad de ir /enerando continuamente com,robante timbrado!
A'ADA3 public bte!" getTimbreCfdiRetencionesTest#String user$ String password$ bte!" file%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n
•
pass0ord: Contraea del uuario 0ue va realiar la conei#n
•
-ile: Fichero con lo dato del com,robante de retencione electr#nica firmado ,or el uuario! Se trata del 8M9 con la informaci#n del com,robante de retencione electr#nica1 e/Hn lo e,ecificado en el 'neo +( de la &eoluci#n Micelnea Fical de +($) $J! 7uede enviar e tambin com,rimido en en formato 6I7! Dentro del mena;e SO'71 e enviarn lo dato del fichero codificado en -ae>) dentro del obre de la llamada SO'7!
!#P*!#)A
R
3
Si el CFDI de retencione electr#nica cum,le con la validacione e,ecificada anteriorm ente1 e dar re,ueta al contribu=ente con el timbre de la firma di/ital! Ete timbre inclu=e el nHmero de folio ai/nado ,or el S'T1 fecha = hora de certificaci#n = ello di/ital del CFDI de retencione electr#nica! Se adhiere i/ualmente como ,arte del com,lemento el nHmero de erie del certificado di/ital del S'T con el 0ue e reali# del certificaci#n del CFDI1 = el ello del S'T! 5
Respesta satis-actoria3En cao de 0ue e ha=a realiado la firma di/ital1 el ervicio devolver un documento com,rimido en formato 6I7 con el timbre del CFDI de retencione electr#nica con todo lo dato /enerado!
5
Respesta con error3 En cao de 0ue ha=a al/Hn error en el ,roceo de firma di/ital del CFDI de retencione electr#nica1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el fichero 6I7 con el CFDI de retencione electr#nica1 o 0ue el CFDI de retencione electr#nica enviado no e correcto intcticamente e/Hn el e0uema del S'T!
!6!'P %ódigo del cliente3 public bte!" getTimbreCfdiRetencionesTest#String user$ String pass$ bte!" file% ' tr ' cfdiSer(ice)getTimbreCfdiRetencionesTest#user$ pass$ file%& * catch #CFDi+,ception CFDIe% '
WSCFDI EDICOM A +!Funcione | 49
WSCFDI EDICOM
CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.getTimbreCfdiRetencionesTest7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.file7U+sD::;AAAAIA<=kmD4C>cc?,;cAAFUSAAAfAAAAc@luBRpb==f3hET+ltcF64E >>DkueQ3sfu3@LJOhF3c;erJO6SipGsdt/EAgo:S=gGHcbA+JkACK;86JfK@>up=HLIM 8cc?,;cAAFUSAAAfAAAAAAAAAA+AIAAAAAAAAA:aNfdQltn=hclf+3>S3w;B>Iw
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 El i/uiente e;em ,lo e una re,ueta de generación de timbre de %FD$ de retenciones electrónicas en test
satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0getTimbreCfdiRetencionesTestResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0getTimbreCfdiRetencionesTestReturn7U+sD::;ACAAIAEGEDHAAAAAAAAAAAAAAAAOAAAAU4l9T laNfdQltn=hclf+3>S3w;B>IwS3w;B>Iw
WSCFDI EDICOM A +!Funcione | 50
WSCFDI EDICOM
08getTimbreCfdiRetencionesTestResponse7 08soapen(.:od7 08soapen(.+n(elope7
El i/uiente e;em,lo e una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l documento lt&S+37 a ha sido firmado lt&DKBNN6@H4DB4N3HH6466C+D36NC46B@4B6A6MBNC708faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4M08ns3.cod7 0ns3.te,t7+l documento lt&S+37 a ha sido firmado lt&DKBNN6@[email protected],t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
9ita de Para ver na lista completa de los posibles códigos de error E respestas asociadas consltar el pnto C#di/o de Error!
2.1=. %A(%!AR %&'PR&"A()!# D! R!)!(%$&(!# !!%)R+($%A# cancelaCFDiRetenciones
7ermite cancelar com,robante de retencione electr#nica timbrado! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio CFDi = e,ecificar cuale on lo com,robante de retencione electr#nica 0ue 0uiere cancelar mediante lo <
A'ADA3 public CancelaResponse cancelaCFDiRetenciones#String user$ String password$ String rfc$ String!" uuid$ bte!" pf,$ String pf,Password%&
PAR4'!)R •
ser: <uario 0ue va realiar la conei#n
WSCFDI EDICOM A +!Funcione | 51
WSCFDI EDICOM •
pass0ord: Contraea del uuario 0ue va realiar la conei#n
•
r-c: &FC del uuario 0ue et cancelando lo CFDI
•
id: 9ita de uuid 0ue identifican lo CFDI de retencione electr#nica 0ue 0uiere cancelar el uuario!
•
p-9: Certificado del cliente 0ue 0uiere cancelar lo CFDI! Dentro del mena;e SO'71 e enviarn lo dato del fichero ,f codificado en -ae>) dentro del obre de la llamada SO'7!
•
P9-Pass0ord: 7a5ord del certificado ,ara ,oder reali ar la firma de la ,etici#n con el certificado del uuario!
R!#P*!#)A 3 Respesta
satis-actoria3 En cao de 0ue e ha=a realiado la cancelaci#n Satifactoria de lo com,robante1 el ervicio devolver un litado de dato derivado de la cancelaci#n: ids: 9itado de CFDI 0ue e han cancelado en la ,etici#n! ac: Confirmaci#n 0ue devuelve el ervicio del S'T como 0ue la ,etici#n e ha realiado! Et codificado en bae >) = contiene el acue de recibo e,edido ,or el S'T ,ara la cancelaci#n!
Respesta con errores: En cao de 0ue ha=a al/Hn error en el ,roceo de cancelaci#n de lo com,robante de retencione electr#nica1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el certificado del uuario! 7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
!6!'P %ódigo del cliente3 public CancelaResponse cancelaCFDiRetenciones#String user$ String pass$ String rfc$ String!" uuid$ bte!" pf,$ Strind pf,Password% ' CancelaResponse cancelaResponse 2 null& tr ' cancelaResponse 2 cfdiSer(ice)cancelaCFDiRetenciones#user$ pass$ rfc$ uuid$ pf,$ pf,Password%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& *return cancelaResponse& *
WSCFDI EDICOM A +!Funcione | 52
WSCFDI EDICOM
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.cancelaCFDiRetenciones7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.rfc7RFC08cfdi.rfc7 0cfdi.uuid7UUID308cfdi.uuid7 0cfdi.pf,7>II=u;I:ACCC6QCS?QSIbBD;+9AaCCCA+ggls>II=aDCC::6QCS?QSIbBD;+9:?CC::A wgg;>Ag+A>II+:;=JoLIh(cEA;c:>:wQCi?QSIbBD;+>A;wDg;IkI4:w;Tf+;CAggAgIID@DPn9d< AHQean9oCuRit(C==ec+:Sk?(g6ohliMIiGp6?FBag(UEaNh<,NCi:@?Ag8tG>D;PN6Pfa=ilI8Em6c(A;I+wRug>SUwIw=JoLIh(cEA;kG>R+F:lCugPO@K/>@9JsKTpe@=mg C>D+wITA=:gUrDg>CQgUA::S6MuToCAggA08cfdi.pf,7 0cfdi.pf,Password7?wertuio08cfdi.pf,Password7 08cfdi.cancelaCFDiRetenciones7 08soapen(.:od7 08soapen(.+n(elope7
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 E;em,lo de una re,ueta de cancelación de comprobantes de retenciones electrónicas satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0cancelaCFDiRetencionesResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0cancelaCFDiRetencionesReturn7 0ack7PDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS:Hb,ucp PS=od9RwK;mkeTH6;@Fu@Gs UEQRF=lcB:(bnElI9htbQNPS=od9Rw/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEF blbBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElb QFDRkRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08ack7 0te,t73cNN4ddM5@@45HcHN5acdf 5b6KbKcfBM@BePDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS: Hb,ucpPS=od9RwK;mkeTH; !)))" h/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEFbl bBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElbQFDR kRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08te,t7 0uuids7 0uuids73cNN4ddM5@@45HcHN5acdf5b6KbKcfBM@Be08uuids7 08uuids7
WSCFDI EDICOM A +!Funcione | 53
WSCFDI EDICOM
08cancelaCFDiRetencionesReturn7 08cancelaCFDiRetencionesResponse7 08soapen(.:od7 08soapen(.+n(elope7
E;em,lo de una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido cancelar los UUIDs especificados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 [email protected] 0ns3.te,t7Eo se ha podido cancelar los UUIDs especificados)08ns3.te,t7 08ns3.fault7 0ns@. ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
%&(#$D!RA%$&(!# $'P&R)A()!# )imeot de la llamada de esta -nción Qa= 0ue tener en cuenta 0ue el ,roceo de cancelaci#n de,ende directamente del ,roceo de cancelaci#n del S'T! 7or tanto1 el tiem,o de re,ueta de eta funci#n no de,ende del ervicio de cancelaci#n de EDICOM1 ino 0ue de,ende directamente del tiem,o de ,roceo de lo ervidore del S'T! Ete ,roceo no e tan inmediato como el tiem,o de /eneraci#n del timbrado1 ,or lo 0ue e neceario 0ue e utilice un timeout coniderable ,ara eta ,eticione de cancelaci#n! 7or defecto1 lo cliente de 5ebervice uelen tener un timeout de 4( e/undo1 0ue ,uede lle/ar a er inuficiente ,ara la correcta e;ecuci#n de eta funci#n! Se recomienda utiliar ,ara eta llamada un timeout no inferior a + minuto ,ara evitar 0ue vena la llamada ,or timeout = e ,ierda la re,ueta de la ,etici#n del ervicio!
/estión de errores. En la e;ecuci#n de eta llamada ha= 0ue ditin/uir correctamente lo c#di/o de error 0ue /enera el ervicio de cancelaci#n de EDICOM = lo c#di/o de validaci#n 0ue devuelve el S'T en el acue de recibo! 9a re,ueta err#nea del ervicio de EDICOM1 como e ,uede ver en el e;em,lo anterior1 devuelve un ob;eto oa,env:Fault en la re,ueta del ervicio! Ete ob;eto contiene un ob;eto n$:cod con el c#di/o de error 0ue ,ro,orciona EDICOM ,ara la e;ecuci#n del ervicio!
WSCFDI EDICOM A +!Funcione | 54
WSCFDI EDICOM
!:emplo de na respesta de error del servicio de !D$%&'. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido cancelar los UUIDs especificados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 201 0ns3.te,t7Eo se ha podido cancelar los UUIDs especificados)08ns3.te,t7 08ns3.fault7 0ns@. ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
9a re,ueta 0ue devuelve el S'T et contenida dentro de la re,ueta correcta del ervicio de EDICOM! M concretamente en el ob;eto ac@ dentro del cancelaCFDi&eturn! Dentro de ete acue de recibo e encuentran lo c#di/o de e;ecuci#n de la cancelaci#n del com,robante ,or ,arte del S'T! Eto c#di/o de e;ecuci#n del S'T etn contem,lado en el 'neo +(!
!:emplo de na respesta de cancelación de comprobantes de retenciones electrónicas satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0cancelaCFDiRetencionesResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0cancelaCFDiRetencionesReturn7 0ack7PDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS:Hb,ucp PS=od9RwK;mkeTH6;@Fu@Gs UEQRF=lcB:(bnElI9htbQNPS=od9Rw/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEF blbBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElb QFDRkRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08ack7 0te,t73cNN4ddM5@@45HcHN5acdf 5b6KbKcfBM@BePDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS: Hb,ucpPS=od9RwK;mkeTH; !)))" h/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEFbl bBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElbQFDR kRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08te,t7 0uuids7 0uuids73cNN4ddM5@@45HcHN5acdf5b6KbKcfBM@Be08uuids7
WSCFDI EDICOM A +!Funcione | 55
WSCFDI EDICOM
08uuids7 08cancelaCFDiRetencionesReturn7 08cancelaCFDiRetencionesResponse7 08soapen(.:od7 08soapen(.+n(elope7
Ambos códigos son totalmente independientes, E no deben con-ndirse Ea e corresponden a códigos de !D$%&' E del #A) respectivamente.
2.1>. %A(%!AR %&'PR&"A()!# D! R!)!(%$&(!# !!%)R+($%A# F$R'AD& cancelaCFDiRetenciones%igned
7ermite cancelar com,robante de retencione electr#nica timbrado! 7ara ,oder im,lementar la llamada1 el uuario debe autentificare como uuario del ervicio CFDi! En ete cao1 el cliente tiene 0ue im,lementar la ,etici#n de cancelaci#n de lo com,robante de retencione electr#nica timbrado 0ue 0uieren cancelar = firmarla! Eta ,etici#n firmada e envía directamente al 5ebervice ,ara 0ue /enere la ,etici#n de cancelaci#n a ,artir de eo dato firmado
A'ADA3 public CancelaResponse cancelaCFDiRetenciones%igned#String user$ String password$ bte!" sign%&
PAR4'!)R ser: <uario 0ue va realiar la conei#n! pass0ord: Contraea del uuario 0ue va realiar la conei#n! sign: 7etici#n de cancelaci#n de com,robante de retencione electr#nica firmada ,or el ,ro,io cliente! Dentro del mena;e SO'71 e enviarn lo dato de la cancelaci#n codificado en -ae>) dentro del obre de la llamada SO'7!
R!#P*!#)A3 Respesta satis-actoria3 En cao de 0ue e ha=a reali ado la cancelaci#n atifactoria de lo com,robante1 el ervicio devolver un litado de dato derivado de la cancelaci#n:
ids: 9itado de com,robante de retencione elect r#nica 0ue e han cancelado en la ,etici#n!
ac: Confirmaci#n 0ue devuelve el ervicio del S'T como 0ue la ,etici#n e ha realiado! Et codificado en bae >) = contiene el acue de recibo e,edido ,or el S'T ,ara la cancelaci#n!
Respesta con errores: En cao de 0ue ha=a al/Hn error en el ,roceo de cancelaci#n de lo com,robante de retencione electr#nica1 devolver una ece,ci#n 0ue contendr un c#di/o de error = un mena;e de teto con el error ,roducido! E;em,lo de ete ti,o de ece,cione ería ,or
WSCFDI EDICOM A +!Funcione | 56
WSCFDI EDICOM
e;em,lo 0ue el uuario no e ha=a autentificado correctamente en el itema1 o 0ue no e ha=a enviado el certificado del uuario! 7ara ver una lita com,leta de lo ,oible c#di/o de error = re,ueta aociada conultar el ,unto 9ita de C#di/o de Error!
!6!'P %ódigo del cliente3 public CancelaResponse cancelaCFDiRetenciones%igned#String user$ String pass$ bte!" sign% ' CancelaResponse cancelaResponse 2 null& tr ' cancelaResponse 2 cfdiSer(ice)cancelaCFDiRetencionesSigned#user$ pass$ sign%& * catch #CFDi+,ception CFDIe% ' CFDIe)printStackTrace#%& Sstem)out)println#-CFDi+,cepcion. - / CFDIe)getTe,t#%%& * catch #Remote+,ception Re% ' Re)printStackTrace#%& Sstem)out)println#-Remote+,cepcion. - / Re)toString#%%& * catch #+,ception e% ' e)printStackTrace#%& Sstem)out)println#-+,ception. - / e)toString#%%& * return cancelaResponse& *
Petición #&AP3 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.cfdi2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0soapen(.9eader87 0soapen(.:od7 0cfdi.cancelaCFDiRetencionesSigned7 0cfdi.user7,,,,,,08cfdi.user7 0cfdi.password7,,,,,,08cfdi.password7 0cfdi.sign7P+EhbmElbQFOauI+Ll@hhPSI>D+,TABT+GD+BTAwEOIEOIi:Hb,uc4ia9R4cDo(@EhbmElbQFOLm;uc@F4md(iNteCIgeQ3sbn> Ke9EkPS=od9RwDA,3hETFEOaQGtSIgeQ3sbn>Ke9EpPS=od9R!)))" rSBFtdU3(TU;aGc;3c+FBUlpJ4=:cm>rTRL Uh9UDkwdkEiG@,lUT4PCETAN;@GdQlmaEhdQU/PCETANRQF4TH64tleUluLm6/PCTadu R3cmU/PCDNOL,h@l(bOH208cfdi.sign7 08cfdi.cancelaCFDiRetencionesSigned7 08soapen(.:od7 08soapen(.+n(elope7
(ota: Los datos que aparecen en este ejemplo no son reales. El código del fichero en base64 ha sido resumido [...]
Respesta #&AP3 E;em,lo de una re,ueta de cancelación de comprobantes de retenciones electrónicas -irmada satis-actoria. WSCFDI EDICOM A +!Funcione | 57
WSCFDI EDICOM
01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0cancelaCFDiRetencionesSignedResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0cancelaCFDiRetencionesSignedReturn7 0ack7PDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS:Hb,ucp PS=od9RwK;mkeTH6;@Fu@Gs UEQRF=lcB:(bnElI9htbQNPS=od9Rw/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEF blbBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElb QFDRkRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08ack7 0te,t73cNN4ddM5@@45HcHN5acdf 5b6KbKcfBM@BePDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS: Hb,ucpPS=od9RwK;mkeTH; !)))" h/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEFbl bBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElbQFDR kRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08te,t7 0uuids7 0uuids73cNN4ddM5@@45HcHN5acdf5b6KbKcfBM@Be08uuids7 08uuids7 08cancelaCFDiRetencionesSignedReturn7 08cancelaCFDiRetencionesSignedResponse7 08soapen(.:od7 08soapen(.+n(elope7
E;em,lo de una re,ueta de error. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido cancelar los UUIDs especificados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 [email protected] 0ns3.te,t7Eo se ha podido cancelar los UUIDs especificados)08ns3.te,t7 08ns3.fault7 0ns@. ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
(ota: 3ara er una lista completa de los posibles códigos de error 5 respuestas asociadas consultar el punto9ita de C#di/o de Error!
WSCFDI EDICOM A +!Funcione | 58
WSCFDI EDICOM
%&(#$D!RA%$&(!# $'P&R)A()!# )imeot de la llamada de esta -nción Qa= 0ue tener en cuenta 0ue el ,roceo de cancelaci#n de,ende directamente del ,roceo de cancelaci#n del S'T! 7or tanto1 el tiem,o de re,ueta de eta funci#n no de,ende del ervicio de cancelaci#n de EDICOM1 ino 0ue de,ende directamente del tiem,o de ,roceo de lo ervidore del S'T! Ete ,roceo no e tan inmediato como e tiem,o de /eneraci#n del timbrado1 ,or lo 0ue e neceario 0ue e utilice un timeout coniderable ,ara eta ,eticione de cancelaci#n! 7or defecto1 lo cliente de 5ebervice uelen tener un timeout de 4( e/undo1 0ue ,uede lle/ar a er inuficiente ,ara la correcta e;ecuci#n de eta funci#n! Se recomienda utiliar ,ara eta llamada un timeout no inferior a + minuto ,ara evitar 0ue vena la llamada ,or timeout = e ,ierda la re,ueta de la ,etici#n del ervicio!
/estión de errores. En la e;ecuci#n de eta llamada ha= 0ue ditin/uir correctamente lo c#di/o de error 0ue /enera el ervicio de cancelaci#n de EDICOM = lo c#di/o de validaci#n 0ue devuelve el S'T en el acue de recibo! 9a re,ueta err#nea del ervicio de EDICOM1 como e ,uede ver en el e;em,lo anterior1 devuelve un ob;eto oa,env:Fault en la re,ueta del ervicio! Ete ob;eto contiene un ob;eto n$:cod con el c#di/o de error 0ue ,ro,orciona EDICOM ,ara la e;ecuci#n del ervicio!
!:emplo de na respesta de error del servicio de !D$%&'. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.Eo se ha podido cancelar los UUIDs especificados)08faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 201 0ns3.te,t7Eo se ha podido cancelar los UUIDs especificados)08ns3.te,t7 08ns3.fault7 0ns@. ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
9a re,ueta 0ue devuelve el S'T et contenida dentro de la re,ueta correcta del ervicio de EDICOM! M concretamente en el ob;eto ac@ dentro del cancelaCFDi&eturn! Dentro de ete acue de recibo e encuentran lo c#di/o de e;ecuci#n de la cancelaci#n del com,robante ,or ,arte del S'T! Eto c#di/o de e;ecuci#n del S'T etn contem,lado en el 'neo +(!
WSCFDI EDICOM A +!Funcione | 59
WSCFDI EDICOM
!:emplo de na respesta de cancelación de comprobantes de retenciones electrónicas satis-actoria. 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0cancelaCFDiRetenciones%ignedResponse ,mlns2-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0cancelaCFDiRetencionesSignedReturn7 0ack7PDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS:Hb,ucp PS=od9RwK;mkeTH6;@Fu@Gs UEQRF=lcB:(bnElI9htbQNPS=od9Rw/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEF blbBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElb QFDRkRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08ack7 0te,t73cNN4ddM5@@45HcHN5acdf 5b6KbKcfBM@BePDHbwgdmGc@l(bO4i>SHwIi:lbmE(LQluL4iGGRQTgiPH6cpFbnLlbQwLS: Hb,ucpPS=od9RwK;mkeTH; !)))" h/PQ+KU@GsbQT;G;gaTpuawInRdUiH6TpLmEFbl bBI/U4FUTIH>Dk,>C4w>D+6@+KcmLOR3pc@POw(;@Fu@GsUEQRF=lcBGsdDH64EhbmElbQFDR kRSLEwb@NLTH6B>K;mkeTH6B>KRN@L,(cQU/08te,t7 0uuids7 0uuids73cNN4ddM5@@45HcHN5acdf5b6KbKcfBM@Be08uuids7 08uuids7 08cancelaCFDiRetencionesSignedReturn7 08cancelaCFDiRetencionesSignedResponse7 08soapen(.:od7 08soapen(.+n(elope7
Ambos códigos son totalmente independientes, E no deben con-ndirse Ea e corresponden a códigos de !D$%&' E del #A) respectivamente.
WSCFDI EDICOM A +!Funcione | 60
WSCFDI EDICOM
8. $#)A D! %+D$/ D! !RR&R 8.1. $()R&D*%%$+( El S'T ha ,ublicado una lita etndar de c#di/o de error c#di/o del 4($ al )(4 a,licable a la re,ueta no atifactoria! El ervicio CFDi de Edicom detecta eto errore1 = tambin otra ituacione de error directamente relacionada con la a,licaci#n de Edicom!
%+D$/ D!F$($D P&R ! #A) Eto c#di/o han ido definido como c#di/o de error etndar ,or el S'T! Se indican tambin la ,oible re,ueta literale cauada de eto errore!
%ódigo 4($
!rror !l comprobante no cmple con el estándar G' C%on-orme al 8% o con la estrctra G' CG#D E complementos aplicables. 5 5 5
4(+
!l sello del emisor no es válido. 5 5
4(4
El documento no es correcto sint#cticamente. El documento referencia7 no esta codificado en $%&'(. El documento referencia7 contiene 8ddenda. El documento referencia7 no est# firmado. Error al erificar la firma del documento referencia7. El 9&,i fue firmado de m anera incorrecta.
!l %#D del emisor no corresponde al RF% e viene como emisor en el comprobante. 5
El certificado serialfc7 con el que se h a firmado el documento referencia7 no pertenece al rfc emisorfc7.
4()
!l %#D del emisor ha sido revocado, tiliando la lista de %&.
4(2
a -echa de emisión no está dentro de la vigencia del %#D del emisor.
5
5
5
4(>
5
El documento referencia7 5a ha sido firmado hash7. El documento referencia7 5a ha sido timbrado preiamente por alg;n 389 con $$+, uuid7.
!l %#D del emisor no ha sido -irmado por n certi-icado de atoridad del #A). 5
)($
El certificado serialfc7 es de tipo &+EL- no es un 91,.
%ontiene n timbre previo. 5
4(.
El certificado serialfc7 toda=a no es #lido para la fecha del documento referencia7 fecha>documento7. El certificado serialfc7 5a no es #lido para la fecha del documento referencia7 fecha>documento7.
a llave tiliada para sellar corresponde a n F$! Cno a n %#D. 5
4(3
El certificado serialfc7 del &9 emisorfc7 ha sido reocado 0seg;n L9<2.
El certificado serialfc7 no ha sido e?pedido por el 1ericio de 8dministración %ributaria.
a -echa de generación es maEor a >2 horas de la emisión del timbre. 5
*o puede firmarse el documento referencia7 con fecha fecha7. @an pasado m#s de ) horas desde su generación.
5
*o puede firmarse el documento referencia7 con fecha fecha7. La fecha es posterior a la actual.
)(+
!l RF% no e9iste con-orme al rIgimen atoriado Cista de validación de rIgimen %&. 5
)(4
Error al erificar la firma del documento referencia7. El 9&,i fue firmado de m anera incorrecta. El &9 emisorfc7 no est# autoriAado a firmar 0seg;n L9<2.
a -echa de emisión es anterior al 1 de !nero de 211. 5
La fecha de emisión del comprobante no puede ser anterior al ! de Enero de )!.
WSCFDI EDICOM A 4!9ita de C#di/o de Error| 61
WSCFDI EDICOM
%+D$/ D!F$($D P&R !D$%&' Eto c#di/o afectan a errore relacionado con la a,licaci#n de EDICOM! ecenario en 0ue e ,reentan eto errore!
%ódigo +((
!rror (o se ha podido cambiar el pass0ord del sario. 5 5 5
1e ha producido un error al intentar cambiar el passBord. La contraseCa no cumple las restricciones aanAadas. La contrasea no puede ser la misma que la que había anteriormente.
+($
(o se5 ha podido cancelar comprobantes. *o se ha podido los cancelar los $$+,s especificados.
+(+
(o se ha podido comprobar el **$D del comprobante. 5
+(4
5
5 5
No e ha enviado nin/Hn <
!rror genIrico de la aplicación. 5
)()
No e ha enviado nin/Hn <
(o se ha podido obtener el comprobante de los **$Ds enviados. 5
4((
*o se ha podido comprobar el $$+, del comprobante.
(o se ha podido obtener la respesta de la petición de generación del comprobante. 5
+()
Se indican tambi n lo ,oible
1e han producido errores al ejecutar el sericio de 9&,i. 9ompruebe que el documento a firmar sea correcto.
!rror de atenti-icación en el servicio. 5
El usuario username7 no es un usua rio #lido.
!6!'P& D! *(A R!#P*!#)A D! !RR&R 01,ml (ersion2-3)4- encoding2-UTF56-17 0soapen(.+n(elope ,mlns.soapen(2-http.88schemas),mlsoap)org8soap8en(elope8,mlns.,sd2-http.88www)wB)org8@4438>Schema,mlns.,si2-http.88www)wB)org8@4438>Schema5instance-7 0soapen(.:od7 0soapen(.Fault7 0faultcode7soapen(.Ser(er)user+,ception08faultcode7 0faultstring7com)edicom)ediwinws)ser(ice)cfdi)CFDi+,ception.+l documento lt&S+B7 no est codificado en UTF5608faultstring7 0detail7 0ns3.fault ,mlns.ns32-http.88cfdi)ser(ice)ediwinws)edicom)com-7 0ns3.cod7B4308ns3.cod7 0ns3.te,t7+l documento lt&referencia7 no est codificado en UTF5 608ns3.te,t7 08ns3.fault7 [email protected] ,[email protected],ml)apache)org8a,is8-7cfdiws)sedeb@b)[email protected] 08detail7 08soapen(.Fault7 08soapen(.:od7 08soapen(.+n(elope7
WSCFDI EDICOM A 4!9ita de C#di/o de Error| 62
WSCFDI EDICOM
;. A(!G&3 #D ;.1. #D !"#!RV$%! %FD$ El contenido del WSD9 del ervicio e el i/uiente:
01,ml (ersion2"1.0" encoding2"UTF-8"17 0wsdl.definitions targetEamespace 2"http://cfdi.service.ediwinws.edicom.com" ,mlns.apachesoap 2"http://xml.apache.org/xml-soap" ,mlns.impl2"http://cfdi.service.ediwinws.edicom.com" ,mlns.intf2"http://cfdi.service.ediwinws.edicom.com" ,mlns.wsdl2"http://schemas.xmlsoap.org/wsdl/" ,mlns.wsdlsoap2"http://schemas.xmlsoap.org/wsdl/soap/" ,mlns.,sd2"http://www.w3.org/001/!#$chema"7 0X55SD created b Apache A,is (ersion. 3)H :uilt on Apr @@$ @44K #4K.NN.H6 PDT%557 0wsdl.tpes7 0schema elementFormDefault 2"%&alified" targetEamespace 2"http://cfdi.service.ediwinws.edicom.com" ,mlns2"http://www.w3.org/001/!#$chema"7 0element name2"getUU'("7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getUU'(esponse"7 0comple,Tpe7 0se?uence7 0element name2"getUU'(et&rn" tpe2"xsd:string"87 08se?uence7 08comple,Tpe7 08element7 0comple,Tpe name2"F(ixception"7 0se?uence7 0element name2"cod" tpe2"xsd:int"87 0element name2"text" nillable2"tr&e" tpe2"xsd:string"87 08se?uence7 08comple,Tpe7 0element name2"fa<" tpe2"impl:F(ixception"87 0element name2"changeassword"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87
WSCFDI EDICOM A )!'neo: WSD9 | 63
WSCFDI EDICOM
0element name2"newassword" tpe2"xsd:string"87 08se?uence7 08comple,Tpe7 08element7 0element name2"changeasswordesponse"7 0comple,Tpe7 0se?uence7 0element name2"changeasswordet&rn" tpe2"xsd:)oolean"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getTim)refdietencionesTest"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getTim)refdietencionesTestesponse"7 0comple,Tpe7 0se?uence7 0element name2"getTim)refdietencionesTestet&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getfdi"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getfdiesponse"7 0comple,Tpe7 0se?uence7 0element name2"getfdiet&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getTim)refdiTest"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87
WSCFDI EDICOM A )!'neo: WSD9 | 64
WSCFDI EDICOM
0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getTim)refdiTestesponse"7 0comple,Tpe7 0se?uence7 0element name2"getTim)refdiTestet&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"cancelaF(ietenciones"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"rfc" tpe2"xsd:string"87 0element ma,
WSCFDI EDICOM A )!'neo: WSD9 | 65
WSCFDI EDICOM
0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getfdietencionesTestesponse"7 0comple,Tpe7 0se?uence7 0element name2"getfdietencionesTestet&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"cancelaF(ietenciones$igned"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"sign" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"cancelaF(ietenciones$ignedesponse"7 0comple,Tpe7 0se?uence7 0element name2"cancelaF(ietenciones$ignedet&rn" tpe2"impl:ancelaesponse"87 08se?uence7 08comple,Tpe7 08element7 0element name2"exportfdi"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"rfc" tpe2"xsd:string"87 0element name2"ini(ate" tpe2"xsd:dateTime"87 0element name2"end(ate" tpe2"xsd:dateTime"87 08se?uence7 08comple,Tpe7 08element7 0element name2"exportfdiesponse"7 0comple,Tpe7 0se?uence7 0element name2"exportfdiet&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7
WSCFDI EDICOM A )!'neo: WSD9 | 66
WSCFDI EDICOM
0element name2"getUU'(Test"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getUU'(Testesponse"7 0comple,Tpe7 0se?uence7 0element name2"getUU'(Testet&rn" tpe2"xsd:string"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getTim)refdi"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getTim)refdiesponse"7 0comple,Tpe7 0se?uence7 0element name2"getTim)refdiet&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getfdiTest"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getfdiTestesponse"7 0comple,Tpe7 0se?uence7 0element name2"getfdiTestet&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"cancelaF(i"7
WSCFDI EDICOM A )!'neo: WSD9 | 67
WSCFDI EDICOM
0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"rfc" tpe2"xsd:string"87 0element ma,
WSCFDI EDICOM A )!'neo: WSD9 | 68
WSCFDI EDICOM
0element name2"cancelaF(i$ignedet&rn" tpe2"impl:ancelaesponse"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getfdietenciones"7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"file" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getfdietencionesesponse"7 0comple,Tpe7 0se?uence7 0element name2"getfdietencioneset&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 0element name2"getfdiFromUU'("7 0comple,Tpe7 0se?uence7 0element name2"&ser" tpe2"xsd:string"87 0element name2"password" tpe2"xsd:string"87 0element name2"rfc" tpe2"xsd:string"87 0element ma,
WSCFDI EDICOM A )!'neo: WSD9 | 69
WSCFDI EDICOM
0element name2"getfdi2c5esponse"7 0comple,Tpe7 0se?uence7 0element name2"getfdi2c5et&rn" tpe2"xsd:)ase*+,inar"87 08se?uence7 08comple,Tpe7 08element7 08schema7 08wsdl.tpes7 0wsdl.message name2"getTim)refdiTestesponse"7 0wsdl.part element2"impl:getTim)refdiTestesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"cancelaF(ietencionesesponse"7 0wsdl.part element2"impl:cancelaF(ietencionesesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdiFromUU'(esponse"7 0wsdl.part element2"impl:getfdiFromUU'(esponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getUU'(esponse"7 0wsdl.part element2"impl:getUU'(esponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getTim)refdietencionesesponse"7 0wsdl.part element2"impl:getTim)refdietencionesesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdiesponse"7 0wsdl.part element2"impl:getfdiesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdiTestesponse"7 0wsdl.part element2"impl:getfdiTestesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getTim)refdiTeste%&est"7 0wsdl.part element2"impl:getTim)refdiTest" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getUU'(e%&est"7 0wsdl.part element2"impl:getUU'(" name2"parameters"7 08wsdl.part7
WSCFDI EDICOM A )!'neo: WSD9 | 70
WSCFDI EDICOM
08wsdl.message7 0wsdl.message name2"cancelaF(i$ignede%&est"7 0wsdl.part element2"impl:cancelaF(i$igned" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getTim)refdie%&est"7 0wsdl.part element2"impl:getTim)refdi" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"cancelaF(i$ignedesponse"7 0wsdl.part element2"impl:cancelaF(i$ignedesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdietencionesTeste%&est"7 0wsdl.part element2"impl:getfdietencionesTest" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"cancelaF(iesponse"7 0wsdl.part element2"impl:cancelaF(iesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getTim)refdiesponse"7 0wsdl.part element2 "impl:getTim)refdiesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdiTeste%&est"7 0wsdl.part element2"impl:getfdiTest" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getUU'(Testesponse"7 0wsdl.part element2"impl:getUU'(Testesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"changeassworde%&est"7 0wsdl.part element2"impl:changeassword" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"exportfdie%&est"7 0wsdl.part element2"impl:exportfdi" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getTim)refdietencionese%&est"7 0wsdl.part element2"impl:getTim)refdietenciones" name2"parameters"7 08wsdl.part7
WSCFDI EDICOM A )!'neo: WSD9 | 71
WSCFDI EDICOM
08wsdl.message7 0wsdl.message name2"cancelaF(ietenciones$ignede%&est"7 0wsdl.part element2"impl:cancelaF(ietenciones$igned" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"cancelaF(ietencionese%&est"7 0wsdl.part element2"impl:cancelaF(ietenciones" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"F(ixception"7 0wsdl.part element2"impl:fa<" name2"fa<"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getUU'(Teste%&est"7 0wsdl.part element2"impl:getUU'(Test" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"cancelaF(ie%&est"7 0wsdl.part element2"impl:cancelaF(i" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdietencionesTestesponse"7 name2
0wsdl.part element2"impl:getfdietencionesTestesponse" 7
"parameters" 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdi2c5esponse"7 0wsdl.part element2"impl:getfdi2c5esponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdi2c5e%&est"7 0wsdl.part element2"impl:getfdi2c5" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdietencionesesponse"7 0wsdl.part element2"impl:getfdietencionesesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"exportfdiesponse"7 0wsdl.part element2"impl:exportfdiesponse" ame2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdie%&est"7 0wsdl.part element2"impl:getfdi" name2"parameters"7 08wsdl.part7
WSCFDI EDICOM A )!'neo: WSD9 | 72
WSCFDI EDICOM
08wsdl.message7 0wsdl.message name2"getfdiFromUU'(e%&est"7 0wsdl.part element2"impl:getfdiFromUU'(" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getfdietencionese%&est"7 0wsdl.part element2"impl:getfdietenciones" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"changeasswordesponse"7 0wsdl.part element2"impl:changeasswordesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getTim)refdietencionesTeste%&est"7 0wsdl.part element2"impl:getTim)refdietencionesTest" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"getTim)refdietencionesTestesponse"7 0wsdl.part element2"impl:getTim)refdietencionesTestesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.message name2"cancelaF(ietenciones$ignedesponse"7 0wsdl.part element2"impl:cancelaF(ietenciones$ignedesponse" name2"parameters"7 08wsdl.part7 08wsdl.message7 0wsdl.portTpe name2"F(i"7 0wsdl.operation name2"getUU'("7 0wsdl.input message2"impl:getUU'(e%&est" name2"getUU'(e%&est"7 08wsdl.input7 0wsdl.output message2"impl:getUU'(esponse" name2"getUU'(esponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"changeassword"7 0wsdl.input message2"impl:changeassworde%&est" name2"changeassworde%&est"7 08wsdl.input7 0wsdl.output message2"impl:changeasswordesponse" name2"changeasswordesponse"7 08wsdl.output7
WSCFDI EDICOM A )!'neo: WSD9 | 73
WSCFDI EDICOM
0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getTim)refdietencionesTest"7 0wsdl.input message2"impl:getTim)refdietencionesTeste%&est" name2"getTim)refdietencionesTeste%&est"7 08wsdl.input7 0wsdl.output message2"impl:getTim)refdietencionesTestesponse" name2"getTim)refdietencionesTestesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdi"7 0wsdl.input message2"impl:getfdie%&est" name2"getfdie%&est"7 08wsdl.input7 0wsdl.output message2"impl:getfdiesponse" name2"getfdiesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getTim)refdiTest"7 0wsdl.input message2"impl:getTim)refdiTeste%&est" name2"getTim)refdiTeste%&est"7 08wsdl.input7 0wsdl.output message2"impl:getTim)refdiTestesponse" name2"getTim)refdiTestesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"cancelaF(ietenciones"7 0wsdl.input message2"impl:cancelaF(ietencionese%&est" name2"cancelaF(ietencionese%&est"7 08wsdl.input7 0wsdl.output message2"impl:cancelaF(ietencionesesponse" name2"cancelaF(ietencionesesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdietencionesTest"7
WSCFDI EDICOM A )!'neo: WSD9 | 74
WSCFDI EDICOM
0wsdl.input message2"impl:getfdietencionesTeste%&est" name2"getfdietencionesTeste%&est"7 08wsdl.input7 0wsdl.output message2"impl:getfdietencionesTestesponse" name2"getfdietencionesTestesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"cancelaF(ietenciones$igned"7 0wsdl.input message2"impl:cancelaF(ietenciones$ignede%&est" name2"cancelaF(ietenciones$ignede%&est"7 08wsdl.input7 0wsdl.output message2"impl:cancelaF(ietenciones$ignedesponse" name2"cancelaF(ietenciones$ignedesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"exportfdi"7 0wsdl.input message2"impl:exportfdie%&est" name2"exportfdie%&est"7 08wsdl.input7 0wsdl.output message2"impl:exportfdiesponse" name2"exportfdiesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getUU'(Test"7 0wsdl.input message2"impl:getUU'(Teste%&est" name2"getUU'(Teste%&est"7 08wsdl.input7 0wsdl.output message2"impl:getUU'(Testesponse" name2"getUU'(Testesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getTim)refdi"7 0wsdl.input message2"impl:getTim)refdie%&est" name2"getTim)refdie%&est"7 08wsdl.input7 0wsdl.output message2"impl:getTim)refdiesponse" name2"getTim)refdiesponse"7 08wsdl.output7
WSCFDI EDICOM A )!'neo: WSD9 | 75
WSCFDI EDICOM
0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdiTest"7 0wsdl.input message2"impl:getfdiTeste%&est" name2"getfdiTeste%&est"7 08wsdl.input7 0wsdl.output message2"impl:getfdiTestesponse" name2"getfdiTestesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"cancelaF(i"7 0wsdl.input message2"impl:cancelaF(ie%&est" name2"cancelaF(ie%&est"7 08wsdl.input7 0wsdl.output message2"impl:cancelaF(iesponse" name2"cancelaF(iesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getTim)refdietenciones"7 0wsdl.input message2"impl:getTim)refdietencionese%&est" name2"getTim)refdietencionese%&est"7 08wsdl.input7 0wsdl.output message2"impl:getTim)refdietencionesesponse" name2"getTim)refdietencionesesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"cancelaF(i$igned"7 0wsdl.input message2"impl:cancelaF(i$ignede%&est" name2"cancelaF(i$ignede%&est"7 08wsdl.input7 0wsdl.output message2"impl:cancelaF(i$ignedesponse" name2"cancelaF(i$ignedesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdietenciones"7
WSCFDI EDICOM A )!'neo: WSD9 | 76
WSCFDI EDICOM
0wsdl.input message2"impl:getfdietencionese%&est" name2"getfdietencionese%&est"7 08wsdl.input7 0wsdl.output message2"impl:getfdietencionesesponse" name2"getfdietencionesesponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdiFromUU'("7 0wsdl.input message2"impl:getfdiFromUU'(e%&est" name2"getfdiFromUU'(e%&est"7 08wsdl.input7 0wsdl.output message2"impl:getfdiFromUU'(esponse" name2"getfdiFromUU'(esponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdi2c5"7 0wsdl.input message2"impl:getfdi2c5e%&est" name2"getfdi2c5e%&est"7 08wsdl.input7 0wsdl.output message2"impl:getfdi2c5esponse" name2"getfdi2c5esponse"7 08wsdl.output7 0wsdl.fault message2"impl:F(ixception" name2"F(ixception"7 08wsdl.fault7 08wsdl.operation7 08wsdl.portTpe7 0wsdl.binding name2"F(i$oap,inding" tpe2"impl:F(i"7 0wsdlsoap.binding stle2"doc&ment" transport2"http://schemas.xmlsoap.org/soap/http"87 0wsdl.operation name2"getUU'("7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getUU'(e%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getUU'(esponse"7 0wsdlsoap.bod use2 87 "literal" 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"changeassword"7 0wsdlsoap.operation soapAction2""87
WSCFDI EDICOM A )!'neo: WSD9 | 77
WSCFDI EDICOM
0wsdl.input name2"changeassworde%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"changeasswordesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getTim)refdietencionesTest"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getTim)refdietencionesTeste%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getTim)refdietencionesTestesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdi"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getfdie%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getfdiesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getTim)refdiTest"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getTim)refdiTeste%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getTim)refdiTestesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"cancelaF(ietenciones"7 0wsdlsoap.operation soapAction2""87
WSCFDI EDICOM A )!'neo: WSD9 | 78
WSCFDI EDICOM
0wsdl.input name2"cancelaF(ietencionese%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"cancelaF(ietencionesesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdietencionesTest"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getfdietencionesTeste%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getfdietencionesTestesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"cancelaF(ietenciones$igned"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"cancelaF(ietenciones$ignede%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"cancelaF(ietenciones$ignedesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"exportfdi"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"exportfdie%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"exportfdiesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getUU'(Test"7 0wsdlsoap.operation soapAction2""87
WSCFDI EDICOM A )!'neo: WSD9 | 79
WSCFDI EDICOM
0wsdl.input name2"getUU'(Teste%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getUU'(Testesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getTim)refdi"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getTim)refdie%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getTim)refdiesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdiTest"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getfdiTeste%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getfdiTestesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"cancelaF(i"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"cancelaF(ie%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"cancelaF(iesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getTim)refdietenciones"7 0wsdlsoap.operation soapAction2""87
WSCFDI EDICOM A )!'neo: WSD9 | 80
WSCFDI EDICOM
0wsdl.input name2"getTim)refdietencionese%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getTim)refdietencionesesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"cancelaF(i$igned"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"cancelaF(i$ignede%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"cancelaF(i$ignedesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdietenciones"7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getfdietencionese%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getfdietencionesesponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdiFromUU'("7 0wsdlsoap.operation soapAction2""87 0wsdl.input name2"getfdiFromUU'(e%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getfdiFromUU'(esponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 0wsdl.operation name2"getfdi2c5"7 0wsdlsoap.operation soapAction2""87
WSCFDI EDICOM A )!'neo: WSD9 | 81
WSCFDI EDICOM
0wsdl.input name2"getfdi2c5e%&est"7 0wsdlsoap.bod use2"literal"87 08wsdl.input7 0wsdl.output name2"getfdi2c5esponse"7 0wsdlsoap.bod use2"literal"87 08wsdl.output7 0wsdl.fault name2"F(ixception"7 0wsdlsoap.fault name2"F(ixception" use2"literal"87 08wsdl.fault7 08wsdl.operation7 08wsdl.binding7 0wsdl.ser(ice name2"F(i$ervice"7 0wsdl.port binding2"impl:F(i$oap,inding" name2"F(i"7 0wsdlsoap.address location2"https://cfdiws.sede)).com/diwin7$/services/F(i"87 08wsdl.port7 08wsdl.ser(ice7 08wsdl.definitions 7 7ara acceder a la Hltima veri#n de la WSD9 a trav de Internet: htt,:**cfdi5!edeb+b!com*Edi5inWS*ervice*CFDi5dl
WSCFDI EDICOM A )!'neo: WSD9 | 82