br_nfe 2.1.1 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (495) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/Gemfile +1 -0
  4. data/Gemfile.lock +12 -2
  5. data/README.markdown +3 -1
  6. data/Rakefile +20 -1
  7. data/lib/br_nfe/active_model/associations.rb +11 -0
  8. data/lib/br_nfe/active_model/has_many.rb +65 -0
  9. data/lib/br_nfe/active_model/has_one.rb +57 -0
  10. data/lib/br_nfe/active_model_base.rb +38 -1
  11. data/lib/br_nfe/base.rb +9 -0
  12. data/lib/br_nfe/calculos/fatores_de_multiplicacao.rb +67 -0
  13. data/lib/br_nfe/calculos/modulo11.rb +54 -0
  14. data/lib/br_nfe/calculos/modulo11_fator_de2a9.rb +83 -0
  15. data/lib/br_nfe/calculos/modulo11_fator_de2a9_resto_zero.rb +29 -0
  16. data/lib/br_nfe/constants.rb +46 -1
  17. data/lib/br_nfe/endereco.rb +6 -2
  18. data/lib/br_nfe/helper/cpf_cnpj.rb +8 -1
  19. data/lib/br_nfe/person.rb +32 -3
  20. data/lib/br_nfe/product/destinatario.rb +45 -0
  21. data/lib/br_nfe/product/emitente.rb +14 -1
  22. data/lib/br_nfe/product/evento/base.rb +146 -0
  23. data/lib/br_nfe/product/evento/cancelamento.rb +46 -0
  24. data/lib/br_nfe/product/gateway/base.rb +16 -43
  25. data/lib/br_nfe/product/gateway/web_service_am.rb +140 -0
  26. data/lib/br_nfe/product/gateway/web_service_ba.rb +140 -0
  27. data/lib/br_nfe/product/gateway/web_service_ce.rb +162 -0
  28. data/lib/br_nfe/product/gateway/web_service_go.rb +140 -0
  29. data/lib/br_nfe/product/gateway/web_service_mg.rb +140 -0
  30. data/lib/br_nfe/product/gateway/web_service_ms.rb +140 -0
  31. data/lib/br_nfe/product/gateway/web_service_mt.rb +140 -0
  32. data/lib/br_nfe/product/gateway/web_service_pe.rb +140 -0
  33. data/lib/br_nfe/product/gateway/web_service_pr.rb +140 -0
  34. data/lib/br_nfe/product/gateway/web_service_rs.rb +140 -0
  35. data/lib/br_nfe/product/gateway/web_service_sp.rb +140 -0
  36. data/lib/br_nfe/product/gateway/web_service_svan.rb +162 -0
  37. data/lib/br_nfe/product/gateway/web_service_svc_an.rb +131 -0
  38. data/lib/br_nfe/product/gateway/web_service_svc_rs.rb +20 -0
  39. data/lib/br_nfe/product/gateway/web_service_svrs.rb +111 -10
  40. data/lib/br_nfe/product/nf_xml_value.rb +278 -0
  41. data/lib/br_nfe/product/nfe/adicao_importacao.rb +76 -0
  42. data/lib/br_nfe/product/nfe/cobranca/duplicata.rb +44 -0
  43. data/lib/br_nfe/product/nfe/cobranca/fatura.rb +64 -0
  44. data/lib/br_nfe/product/nfe/cobranca/pagamento.rb +99 -0
  45. data/lib/br_nfe/product/nfe/declaracao_importacao.rb +221 -0
  46. data/lib/br_nfe/product/nfe/detalhe_exportacao.rb +89 -0
  47. data/lib/br_nfe/product/nfe/item.rb +678 -0
  48. data/lib/br_nfe/product/nfe/item_tax/cofins.rb +138 -0
  49. data/lib/br_nfe/product/nfe/item_tax/cofins_st.rb +68 -0
  50. data/lib/br_nfe/product/nfe/item_tax/icms.rb +593 -0
  51. data/lib/br_nfe/product/nfe/item_tax/icms_uf_destino.rb +169 -0
  52. data/lib/br_nfe/product/nfe/item_tax/importacao.rb +62 -0
  53. data/lib/br_nfe/product/nfe/item_tax/ipi.rb +179 -0
  54. data/lib/br_nfe/product/nfe/item_tax/issqn.rb +256 -0
  55. data/lib/br_nfe/product/nfe/item_tax/pis.rb +138 -0
  56. data/lib/br_nfe/product/nfe/item_tax/pis_st.rb +68 -0
  57. data/lib/br_nfe/product/nfe/processo_referencia.rb +48 -0
  58. data/lib/br_nfe/product/nfe/transporte/base.rb +264 -0
  59. data/lib/br_nfe/product/nfe/transporte/transportador.rb +15 -0
  60. data/lib/br_nfe/product/nfe/transporte/veiculo.rb +53 -0
  61. data/lib/br_nfe/product/nfe/transporte/volume.rb +89 -0
  62. data/lib/br_nfe/product/nota_fiscal.rb +1173 -0
  63. data/lib/br_nfe/product/operation/base.rb +255 -0
  64. data/lib/br_nfe/product/operation/nfe_autorizacao.rb +118 -0
  65. data/lib/br_nfe/product/operation/nfe_consulta_protocolo.rb +61 -0
  66. data/lib/br_nfe/product/operation/nfe_download_nf.rb +86 -0
  67. data/lib/br_nfe/product/operation/nfe_inutilizacao.rb +168 -0
  68. data/lib/br_nfe/product/operation/nfe_recepcao_evento.rb +70 -0
  69. data/lib/br_nfe/product/operation/nfe_ret_autorizacao.rb +63 -0
  70. data/lib/br_nfe/product/operation/nfe_status_servico.rb +46 -0
  71. data/lib/br_nfe/product/response/base.rb +97 -0
  72. data/lib/br_nfe/product/response/build/base.rb +287 -0
  73. data/lib/br_nfe/product/response/build/nfe_autorizacao.rb +102 -0
  74. data/lib/br_nfe/product/response/build/nfe_consulta_protocolo.rb +133 -0
  75. data/lib/br_nfe/product/response/build/nfe_inutilizacao.rb +53 -0
  76. data/lib/br_nfe/product/response/build/nfe_ret_autorizacao.rb +65 -0
  77. data/lib/br_nfe/product/response/build/nfe_status_servico.rb +43 -0
  78. data/lib/br_nfe/product/response/event.rb +89 -0
  79. data/lib/br_nfe/product/response/nfe_autorizacao.rb +12 -0
  80. data/lib/br_nfe/product/response/nfe_consulta_protocolo.rb +13 -0
  81. data/lib/br_nfe/product/response/nfe_inutilizacao.rb +89 -0
  82. data/lib/br_nfe/product/response/nfe_ret_autorizacao.rb +9 -0
  83. data/lib/br_nfe/product/response/nfe_status_servico.rb +31 -0
  84. data/lib/br_nfe/product/xml/_signed_info_sh1.xml.slim +9 -0
  85. data/lib/br_nfe/product/xml/_tc_cpf_cnpj.xml.slim +7 -0
  86. data/lib/br_nfe/product/xml/signature_sh1.xml.slim +12 -0
  87. data/lib/br_nfe/product/xml/v1_00/evento/infEventoCancelamento.xml.slim +19 -0
  88. data/lib/br_nfe/product/xml/v1_00/root/NfeDownloadNf.xml.slim +5 -0
  89. data/lib/br_nfe/product/xml/v1_00/root/NfeRecepcaoEvento.xml.slim +7 -0
  90. data/lib/br_nfe/product/xml/v2_00/_tc_endereco.xml.slim +19 -0
  91. data/lib/br_nfe/product/xml/v2_00/_tc_infNFe.xml.slim +39 -0
  92. data/lib/br_nfe/product/xml/v2_00/infInut.xml.slim +12 -0
  93. data/lib/br_nfe/product/xml/v2_00/infNFe/NFe.xml.slim +4 -0
  94. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_cobr.xml.slim +19 -0
  95. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_dest.xml.slim +14 -0
  96. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_det.xml.slim +7 -0
  97. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_emit.xml.slim +19 -0
  98. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_entrega.xml.slim +11 -0
  99. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_exporta.xml.slim +2 -0
  100. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_ide.xml.slim +24 -0
  101. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_infAdic.xml.slim +13 -0
  102. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_retirada.xml.slim +11 -0
  103. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_total.xml.slim +50 -0
  104. data/lib/br_nfe/product/xml/v2_00/infNFe/_tc_transp.xml.slim +35 -0
  105. data/lib/br_nfe/product/xml/v2_00/infNFe/det/_tc_imposto.xml.slim +31 -0
  106. data/lib/br_nfe/product/xml/v2_00/infNFe/det/_tc_prod.xml.slim +37 -0
  107. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS00.xml.slim +6 -0
  108. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS10.xml.slim +16 -0
  109. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS101.xml.slim +4 -0
  110. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS102.xml.slim +3 -0
  111. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS20.xml.slim +6 -0
  112. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS201.xml.slim +15 -0
  113. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS202.xml.slim +14 -0
  114. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS30.xml.slim +12 -0
  115. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS40.xml.slim +7 -0
  116. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS500.xml.slim +6 -0
  117. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS51.xml.slim +13 -0
  118. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS60.xml.slim +5 -0
  119. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS70.xml.slim +18 -0
  120. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS90.xml.slim +21 -0
  121. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/ICMS/_tc_ICMS900.xml.slim +25 -0
  122. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/_tc_COFINS.xml.slim +26 -0
  123. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/_tc_COFINS_ST.xml.slim +7 -0
  124. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/_tc_ICMS.xml.slim +45 -0
  125. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/_tc_II.xml.slim +4 -0
  126. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/_tc_IPI.xml.slim +30 -0
  127. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/_tc_PIS.xml.slim +26 -0
  128. data/lib/br_nfe/product/xml/v2_00/infNFe/det/imposto/_tc_PIS_ST.xml.slim +7 -0
  129. data/lib/br_nfe/product/xml/v2_00/infNFe/det/prod/_tc_di.xml.slim +13 -0
  130. data/lib/br_nfe/product/xml/v2_00/infNFe/transp/_tc_retTransp.xml.slim +6 -0
  131. data/lib/br_nfe/product/xml/v2_00/infNFe/transp/_tc_transporta.xml.slim +17 -0
  132. data/lib/br_nfe/product/xml/v2_00/infNFe/transp/_tc_vol.xml.slim +15 -0
  133. data/lib/br_nfe/product/xml/v2_00/infNFe.xml.slim +3 -0
  134. data/lib/br_nfe/product/xml/v2_00/root/NfeAutorizacao.xml.slim +5 -0
  135. data/lib/br_nfe/product/xml/v2_00/root/NfeInutilizacao.xml.slim +4 -0
  136. data/lib/br_nfe/product/xml/v2_00/root/NfeRetAutorizacao.xml.slim +3 -0
  137. data/lib/br_nfe/product/xml/v2_00/root/NfeStatusServico.xml.slim +4 -0
  138. data/lib/br_nfe/product/xml/v2_01/root/NfeConsultaProtocolo.xml.slim +4 -0
  139. data/lib/br_nfe/product/xml/v3_10/_tc_infNFe.xml.slim +44 -0
  140. data/lib/br_nfe/product/xml/v3_10/infNFe/_tc_dest.xml.slim +25 -0
  141. data/lib/br_nfe/product/xml/v3_10/infNFe/_tc_det.xml.slim +14 -0
  142. data/lib/br_nfe/product/xml/v3_10/infNFe/_tc_exporta.xml.slim +4 -0
  143. data/lib/br_nfe/product/xml/v3_10/infNFe/_tc_ide.xml.slim +26 -0
  144. data/lib/br_nfe/product/xml/v3_10/infNFe/_tc_pag.xml.slim +7 -0
  145. data/lib/br_nfe/product/xml/v3_10/infNFe/_tc_total.xml.slim +78 -0
  146. data/lib/br_nfe/product/xml/v3_10/infNFe/det/_tc_imposto.xml.slim +37 -0
  147. data/lib/br_nfe/product/xml/v3_10/infNFe/det/_tc_prod.xml.slim +48 -0
  148. data/lib/br_nfe/product/xml/v3_10/infNFe/det/imposto/ICMS/_tc_ICMS20.xml.slim +12 -0
  149. data/lib/br_nfe/product/xml/v3_10/infNFe/det/imposto/ICMS/_tc_ICMS30.xml.slim +17 -0
  150. data/lib/br_nfe/product/xml/v3_10/infNFe/det/imposto/ICMS/_tc_ICMS40.xml.slim +7 -0
  151. data/lib/br_nfe/product/xml/v3_10/infNFe/det/imposto/ICMS/_tc_ICMS51.xml.slim +19 -0
  152. data/lib/br_nfe/product/xml/v3_10/infNFe/det/imposto/ICMS/_tc_ICMS70.xml.slim +23 -0
  153. data/lib/br_nfe/product/xml/v3_10/infNFe/det/imposto/ICMS/_tc_ICMS90.xml.slim +26 -0
  154. data/lib/br_nfe/product/xml/v3_10/infNFe/det/imposto/_tc_ICMSUFDest.xml.slim +8 -0
  155. data/lib/br_nfe/product/xml/v3_10/infNFe/det/imposto/_tc_ISSQN.xml.slim +35 -0
  156. data/lib/br_nfe/product/xml/v3_10/infNFe/det/prod/_tc_det_export.xml.slim +8 -0
  157. data/lib/br_nfe/product/xml/v3_10/infNFe/det/prod/_tc_di.xml.slim +28 -0
  158. data/lib/br_nfe/product/xml/v3_10/root/NfeAutorizacao.xml.slim +6 -0
  159. data/lib/br_nfe/service/base.rb +1 -105
  160. data/lib/br_nfe/service/betha/v1/cancela_nfse.rb +1 -1
  161. data/lib/br_nfe/service/response/default.rb +1 -1
  162. data/lib/br_nfe/service/simpliss/v1/base.rb +2 -0
  163. data/lib/br_nfe/version.rb +2 -2
  164. data/lib/br_nfe.rb +180 -22
  165. data/lib/config/locales/br_nfe/en/product/nfe/cobranca/fatura.yml +6 -0
  166. data/lib/config/locales/br_nfe/en/product/nfe/declaracao_importacao.yml +10 -0
  167. data/lib/config/locales/br_nfe/en/product/nfe/item.yml +20 -0
  168. data/lib/config/locales/br_nfe/en/product/nfe/item_tax/icms_uf_destino.yml +8 -0
  169. data/lib/config/locales/br_nfe/en/product/nfe/transporte/base.yml +9 -0
  170. data/lib/config/locales/br_nfe/en/product/nota_fiscal.yml +21 -0
  171. data/lib/config/locales/br_nfe/en/product/operation/nfe_autorizacao.yml +10 -0
  172. data/lib/config/locales/br_nfe/en/product/operation/nfe_recepcao_evento.yml +6 -0
  173. data/lib/config/locales/br_nfe/pt-BR/product/nfe/cobranca/fatura.yml +6 -0
  174. data/lib/config/locales/br_nfe/pt-BR/product/nfe/declaracao_importacao.yml +10 -0
  175. data/lib/config/locales/br_nfe/pt-BR/product/nfe/item.yml +20 -0
  176. data/lib/config/locales/br_nfe/pt-BR/product/nfe/item_tax/icms_uf_destino.yml +8 -0
  177. data/lib/config/locales/br_nfe/pt-BR/product/nfe/transporte/base.yml +9 -0
  178. data/lib/config/locales/br_nfe/pt-BR/product/nota_fiscal.yml +21 -0
  179. data/lib/config/locales/br_nfe/pt-BR/product/operation/nfe_autorizacao.yml +10 -0
  180. data/lib/config/locales/br_nfe/pt-BR/product/operation/nfe_recepcao_evento.yml +6 -0
  181. data/test/br_nfe/association/have_destinatario_test.rb +8 -8
  182. data/test/br_nfe/association/have_emitente_test.rb +6 -6
  183. data/test/br_nfe/base_test.rb +15 -4
  184. data/test/br_nfe/endereco_test.rb +15 -0
  185. data/test/br_nfe/person_test.rb +55 -6
  186. data/test/br_nfe/product/destinatario_test.rb +26 -0
  187. data/test/br_nfe/product/emitente_test.rb +1 -2
  188. data/test/br_nfe/product/evento/base_test.rb +58 -0
  189. data/test/br_nfe/product/evento/cancelamento_test.rb +32 -0
  190. data/test/br_nfe/product/gateway/web_service_am_test.rb +242 -0
  191. data/test/br_nfe/product/gateway/web_service_ba_test.rb +242 -0
  192. data/test/br_nfe/product/gateway/web_service_ce_test.rb +242 -0
  193. data/test/br_nfe/product/gateway/web_service_go_test.rb +242 -0
  194. data/test/br_nfe/product/gateway/web_service_mg_test.rb +242 -0
  195. data/test/br_nfe/product/gateway/web_service_ms_test.rb +242 -0
  196. data/test/br_nfe/product/gateway/web_service_mt_test.rb +408 -0
  197. data/test/br_nfe/product/gateway/web_service_pe_test.rb +408 -0
  198. data/test/br_nfe/product/gateway/web_service_pr_test.rb +408 -0
  199. data/test/br_nfe/product/gateway/web_service_rs_test.rb +407 -0
  200. data/test/br_nfe/product/gateway/web_service_sp_test.rb +408 -0
  201. data/test/br_nfe/product/gateway/web_service_svan_test.rb +242 -0
  202. data/test/br_nfe/product/gateway/web_service_svc_an_test.rb +185 -0
  203. data/test/br_nfe/product/gateway/web_service_svc_rs_test.rb +185 -0
  204. data/test/br_nfe/product/gateway/web_service_svrs_test.rb +208 -2
  205. data/test/br_nfe/product/nfe/adicao_importacao_test.rb +19 -0
  206. data/test/br_nfe/product/nfe/cobranca/duplicata_test.rb +19 -0
  207. data/test/br_nfe/product/nfe/cobranca/fatura_test.rb +32 -0
  208. data/test/br_nfe/product/nfe/cobranca/pagamento_test.rb +105 -0
  209. data/test/br_nfe/product/nfe/declaracao_importacao_test.rb +116 -0
  210. data/test/br_nfe/product/nfe/detalhe_exportacao_test.rb +97 -0
  211. data/test/br_nfe/product/nfe/item_tax/cofins_st_test.rb +22 -0
  212. data/test/br_nfe/product/nfe/item_tax/cofins_test.rb +113 -0
  213. data/test/br_nfe/product/nfe/item_tax/icms_test.rb +1011 -0
  214. data/test/br_nfe/product/nfe/item_tax/icms_uf_destino_test.rb +99 -0
  215. data/test/br_nfe/product/nfe/item_tax/importacao_test.rb +23 -0
  216. data/test/br_nfe/product/nfe/item_tax/ipi_test.rb +160 -0
  217. data/test/br_nfe/product/nfe/item_tax/issqn_test.rb +84 -0
  218. data/test/br_nfe/product/nfe/item_tax/pis_st_test.rb +22 -0
  219. data/test/br_nfe/product/nfe/item_tax/pis_test.rb +113 -0
  220. data/test/br_nfe/product/nfe/item_test.rb +381 -0
  221. data/test/br_nfe/product/nfe/processo_referencia_test.rb +30 -0
  222. data/test/br_nfe/product/nfe/transporte/base_test.rb +182 -0
  223. data/test/br_nfe/product/nfe/transporte/transportador_test.rb +13 -0
  224. data/test/br_nfe/product/nfe/transporte/veiculo_test.rb +13 -0
  225. data/test/br_nfe/product/nfe/transporte/volume_test.rb +42 -0
  226. data/test/br_nfe/product/nota_fiscal_test.rb +662 -0
  227. data/test/br_nfe/product/operation/base_test.rb +538 -0
  228. data/test/br_nfe/product/operation/nfe_autorizacao_test.rb +378 -0
  229. data/test/br_nfe/product/operation/nfe_consulta_protocolo_test.rb +349 -0
  230. data/test/br_nfe/product/operation/nfe_download_nf_test.rb +93 -0
  231. data/test/br_nfe/product/operation/nfe_inutilizacao_test.rb +210 -0
  232. data/test/br_nfe/product/operation/nfe_recepcao_evento_test.rb +84 -0
  233. data/test/br_nfe/product/operation/nfe_ret_autorizacao_test.rb +309 -0
  234. data/test/br_nfe/product/operation/nfe_status_servico_test.rb +122 -0
  235. data/test/br_nfe/product/response/base_test.rb +75 -0
  236. data/test/br_nfe/product/response/build/base_test.rb +34 -0
  237. data/test/br_nfe/product/response/nfe_ret_autorizacao_test.rb +14 -0
  238. data/test/br_nfe/service/association/have_intermediario_test.rb +10 -10
  239. data/test/br_nfe/service/base_test.rb +9 -206
  240. data/test/br_nfe/service/betha/v1/cancela_nfse_test.rb +8 -6
  241. data/test/br_nfe/service/betha/v1/consulta_lote_rps_test.rb +6 -3
  242. data/test/br_nfe/service/betha/v1/consulta_nfs_por_rps_test.rb +6 -3
  243. data/test/br_nfe/service/betha/v1/consulta_nfse_test.rb +7 -4
  244. data/test/br_nfe/service/betha/v1/consulta_situacao_lote_rps_test.rb +12 -9
  245. data/test/br_nfe/service/betha/v1/recepcao_lote_rps_test.rb +6 -3
  246. data/test/br_nfe/service/rps_test.rb +2 -2
  247. data/test/br_nfe/service/simpliss/v1/cancela_nfse_test.rb +6 -3
  248. data/test/br_nfe/service/simpliss/v1/consulta_lote_rps_test.rb +7 -4
  249. data/test/br_nfe/service/simpliss/v1/consulta_nfs_por_rps_test.rb +7 -4
  250. data/test/br_nfe/service/simpliss/v1/consulta_nfse_test.rb +8 -5
  251. data/test/br_nfe/service/simpliss/v1/consulta_situacao_lote_rps_test.rb +9 -6
  252. data/test/br_nfe/service/simpliss/v1/recepcao_lote_rps_test.rb +6 -3
  253. data/test/br_nfe/service/thema/v1/cancela_nfse_test.rb +6 -3
  254. data/test/br_nfe/service/thema/v1/consulta_lote_rps_test.rb +6 -3
  255. data/test/br_nfe/service/thema/v1/consulta_nfs_por_rps_test.rb +6 -3
  256. data/test/br_nfe/service/thema/v1/consulta_nfse_test.rb +8 -5
  257. data/test/br_nfe/service/thema/v1/consulta_situacao_lote_rps_test.rb +9 -6
  258. data/test/br_nfe/service/thema/v1/recepcao_lote_rps_limitado_test.rb +6 -3
  259. data/test/br_nfe/service/thema/v1/recepcao_lote_rps_test.rb +6 -3
  260. data/test/factories/person.rb +1 -1
  261. data/test/factories/product/destinatario.rb +11 -0
  262. data/test/factories/product/emitente.rb +1 -1
  263. data/test/factories/product/evento/base.rb +9 -0
  264. data/test/factories/product/evento/cancelamento.rb +10 -0
  265. data/test/factories/product/gateway/web_service_am.rb +5 -0
  266. data/test/factories/product/gateway/web_service_ba.rb +5 -0
  267. data/test/factories/product/nfe/adicao_importacao.rb +7 -0
  268. data/test/factories/product/nfe/cobranca/duplicata.rb +7 -0
  269. data/test/factories/product/nfe/cobranca/fatura.rb +8 -0
  270. data/test/factories/product/nfe/cobranca/pagamento.rb +9 -0
  271. data/test/factories/product/nfe/declaracao_importacao.rb +10 -0
  272. data/test/factories/product/nfe/detalhe_exportacao.rb +5 -0
  273. data/test/factories/product/nfe/item.rb +24 -0
  274. data/test/factories/product/nfe/item_tax/cofins.rb +5 -0
  275. data/test/factories/product/nfe/item_tax/cofins_st.rb +5 -0
  276. data/test/factories/product/nfe/item_tax/icms.rb +9 -0
  277. data/test/factories/product/nfe/item_tax/icms_uf_destino.rb +11 -0
  278. data/test/factories/product/nfe/item_tax/importacao.rb +8 -0
  279. data/test/factories/product/nfe/item_tax/ipi.rb +6 -0
  280. data/test/factories/product/nfe/item_tax/issqn.rb +9 -0
  281. data/test/factories/product/nfe/item_tax/pis.rb +5 -0
  282. data/test/factories/product/nfe/item_tax/pis_st.rb +5 -0
  283. data/test/factories/product/nfe/processo_referencia.rb +6 -0
  284. data/test/factories/product/nfe/transporte/base.rb +5 -0
  285. data/test/factories/product/nfe/transporte/transportador.rb +7 -0
  286. data/test/factories/product/nfe/transporte/veiculo.rb +7 -0
  287. data/test/factories/product/nfe/transporte/volume.rb +5 -0
  288. data/test/factories/product/nota_fiscal.rb +22 -0
  289. data/test/factories/product/{base.rb → operation/base.rb} +1 -1
  290. data/test/factories/product/operation/nfe_autorizacao.rb +590 -0
  291. data/test/factories/product/operation/nfe_consulta_protocolo.rb +13 -0
  292. data/test/factories/product/operation/nfe_download_nf.rb +15 -0
  293. data/test/factories/product/operation/nfe_inutilizacao.rb +19 -0
  294. data/test/factories/product/operation/nfe_recepcao_evento.rb +14 -0
  295. data/test/factories/product/operation/nfe_ret_autorizacao.rb +13 -0
  296. data/test/factories/product/{consulta_status_servico.rb → operation/nfe_status_servico.rb} +1 -1
  297. data/test/factories/product/response/base.rb +12 -0
  298. data/test/factories/product/response/build/base.rb +6 -0
  299. data/test/factories/product/response/nfe_ret_autorizacao.rb +13 -0
  300. data/test/factories/service/emitente.rb +1 -1
  301. data/test/fixtures/product/operation/nfe_autorizacao/nfe_signed.xml +1 -0
  302. data/test/fixtures/product/response/v3.10/nfe_autorizacao/async_fail.xml +21 -0
  303. data/test/fixtures/product/response/v3.10/nfe_autorizacao/async_success.xml +25 -0
  304. data/test/fixtures/product/response/v3.10/nfe_autorizacao/nfe/with_proc.xml +1 -0
  305. data/test/fixtures/product/response/v3.10/nfe_autorizacao/nfe/without_proc.xml +1 -0
  306. data/test/fixtures/product/response/v3.10/nfe_autorizacao/original_xml.xml +1 -0
  307. data/test/fixtures/product/response/v3.10/nfe_autorizacao/sync_fail.xml +32 -0
  308. data/test/fixtures/product/response/v3.10/nfe_autorizacao/sync_success.xml +33 -0
  309. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/event_xml/event_1.xml +1 -0
  310. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/event_xml/event_2.xml +1 -0
  311. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/event_xml/event_3.xml +1 -0
  312. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/event_xml/event_cancel.xml +1 -0
  313. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/event_xml/one_event.xml +1 -0
  314. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/fail.xml +22 -0
  315. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/nfe_original/with_proc.xml +1 -0
  316. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/nfe_original/without_proc.xml +1 -0
  317. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/success_many_with_cancel.xml +198 -0
  318. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/success_many_without_cancel.xml +199 -0
  319. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/success_one.xml +89 -0
  320. data/test/fixtures/product/response/v3.10/nfe_consulta_protocolo/success_without.xml +34 -0
  321. data/test/fixtures/product/response/v3.10/nfe_inutilizacao/fail.xml +29 -0
  322. data/test/fixtures/product/response/v3.10/nfe_inutilizacao/success.xml +30 -0
  323. data/test/fixtures/product/response/v3.10/nfe_recepcao_evento/cancelamento/fail.xml +34 -0
  324. data/test/fixtures/product/response/v3.10/nfe_recepcao_evento/cancelamento/success.xml +36 -0
  325. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/lot_fail.xml +22 -0
  326. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/lot_ok_one_invoice_fail.xml +33 -0
  327. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/lot_ok_one_invoice_fail_and_one_ok.xml +46 -0
  328. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/lot_ok_one_invoice_ok.xml +34 -0
  329. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/lot_ok_two_invoice_fail.xml +46 -0
  330. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/lot_ok_two_invoice_ok.xml +46 -0
  331. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/nfe/nf_2_with_protocol.xml +1 -0
  332. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/nfe/nf_2_without_protocol.xml +1 -0
  333. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/nfe/nf_3_with_protocol.xml +1 -0
  334. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/nfe/nf_3_without_protocol.xml +1 -0
  335. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/original_xml/lot.xml +2 -0
  336. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/original_xml/nfe.xml +2 -0
  337. data/test/fixtures/product/response/v3.10/nfe_ret_autorizacao/original_xml/nfeProc.xml +4 -0
  338. data/test/fixtures/product/response/v3.10/nfe_status_servico/fail.xml +23 -0
  339. data/test/fixtures/product/response/v3.10/nfe_status_servico/success.xml +22 -0
  340. data/test/fixtures/product/schemas/CCe_v1.00.xsd +11 -0
  341. data/test/fixtures/product/schemas/EPEC_v1.00.xsd +9 -0
  342. data/test/fixtures/product/schemas/LeiauteCadastroEmissorDFe_v1.01.xsd +234 -0
  343. data/test/fixtures/product/schemas/SuframaInternaliza_v1.00.xsd +9 -0
  344. data/test/fixtures/product/schemas/SuframaVistoria_v1.00.xsd +9 -0
  345. data/test/fixtures/product/schemas/atuCadEmiDFe_v1.01.xsd +9 -0
  346. data/test/fixtures/product/schemas/cabecMsg_v1.02.xsd +29 -0
  347. data/test/fixtures/product/schemas/cadEmiDFe_v1.01.xsd +9 -0
  348. data/test/fixtures/product/schemas/cancNFe_v2.00.xsd +9 -0
  349. data/test/fixtures/product/schemas/confRecebto_v1.00.xsd +9 -0
  350. data/test/fixtures/product/schemas/consCad_v2.00.xsd +9 -0
  351. data/test/fixtures/product/schemas/consDPEC_v1.01.xsd +9 -0
  352. data/test/fixtures/product/schemas/consNFeDest_v1.01.xsd +10 -0
  353. data/test/fixtures/product/schemas/consReciNFe_v2.00.xsd +9 -0
  354. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/consReciNFe_v3.10.xsd +8 -8
  355. data/test/fixtures/product/schemas/consSitNFe_v2.01.xsd +10 -0
  356. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/consSitNFe_v3.10.xsd +8 -8
  357. data/test/fixtures/product/schemas/consStatServ_v2.00.xsd +9 -0
  358. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/consStatServ_v3.10.xsd +8 -8
  359. data/test/fixtures/product/schemas/distDFeInt_v1.00.xsd +71 -0
  360. data/test/fixtures/product/schemas/downloadNFe_v1.00.xsd +10 -0
  361. data/test/fixtures/product/schemas/e110110_v1.00.xsd +58 -0
  362. data/test/fixtures/product/schemas/e110111_v1.00.xsd +42 -0
  363. data/test/fixtures/product/schemas/e110140_v1.00.xsd +124 -0
  364. data/test/fixtures/product/schemas/e111500_v1.00.xsd +69 -0
  365. data/test/fixtures/product/schemas/e111501_v1.00.xsd +69 -0
  366. data/test/fixtures/product/schemas/e111502_v1.00.xsd +50 -0
  367. data/test/fixtures/product/schemas/e111503_v1.00.xsd +50 -0
  368. data/test/fixtures/product/schemas/e210200_v1.00.xsd +32 -0
  369. data/test/fixtures/product/schemas/e210210_v1.00.xsd +32 -0
  370. data/test/fixtures/product/schemas/e210220_v1.00.xsd +45 -0
  371. data/test/fixtures/product/schemas/e210240_v1.00.xsd +44 -0
  372. data/test/fixtures/product/schemas/e411500_v1.00.xsd +134 -0
  373. data/test/fixtures/product/schemas/e411501_v1.00.xsd +134 -0
  374. data/test/fixtures/product/schemas/e411502_v1.00.xsd +95 -0
  375. data/test/fixtures/product/schemas/e411503_v1.00.xsd +95 -0
  376. data/test/fixtures/product/schemas/e990900_v1.00.xsd +87 -0
  377. data/test/fixtures/product/schemas/e990910_v1.00.xsd +81 -0
  378. data/test/fixtures/product/schemas/envCCe_v1.00.xsd +10 -0
  379. data/test/fixtures/product/schemas/envCancelPProrrogNFe_v1.0.xsd +50 -0
  380. data/test/fixtures/product/schemas/envConfRecebto_v1.00.xsd +9 -0
  381. data/test/fixtures/product/schemas/envDPEC_v1.01.xsd +9 -0
  382. data/test/fixtures/product/schemas/envEPEC_v1.00.xsd +9 -0
  383. data/test/fixtures/product/schemas/envEventoCancNFe_v1.00.xsd +9 -0
  384. data/test/fixtures/product/schemas/envEvento_v1.00.xsd +9 -0
  385. data/test/fixtures/product/schemas/envFiscoNfe_v1.0.xsd +179 -0
  386. data/test/fixtures/product/schemas/envPProrrogNFe_v1.0.xsd +65 -0
  387. data/test/fixtures/product/schemas/envRemIndus_v1.00.xsd +9 -0
  388. data/test/fixtures/product/schemas/envSuframaInternaliza_v1.00.xsd +10 -0
  389. data/test/fixtures/product/schemas/envSuframaVistoria_v1.00.xsd +10 -0
  390. data/test/fixtures/product/schemas/enviNFe_v2.00.xsd +9 -0
  391. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/enviNFe_v3.10.xsd +8 -8
  392. data/test/fixtures/product/schemas/eventoCancNFe_v1.00.xsd +9 -0
  393. data/test/fixtures/product/schemas/eventoEPEC_v0.01.xsd +267 -0
  394. data/test/fixtures/product/schemas/eventoEPEC_v1.00.xsd +267 -0
  395. data/test/fixtures/product/schemas/eventoRemIndus_v1.00.xsd +9 -0
  396. data/test/fixtures/product/schemas/inutNFe_v2.00.xsd +9 -0
  397. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/inutNFe_v3.10.xsd +8 -8
  398. data/test/fixtures/product/schemas/leiauteCCe_v1.00.xsd +418 -0
  399. data/test/fixtures/product/schemas/leiauteCancNFe_v2.00.xsd +143 -0
  400. data/test/fixtures/product/schemas/leiauteConfRecebto_v1.00.xsd +406 -0
  401. data/test/fixtures/product/schemas/leiauteConsNFeDest_v1.01.xsd +483 -0
  402. data/test/fixtures/product/schemas/leiauteConsSitNFe_v2.01.xsd +548 -0
  403. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/leiauteConsSitNFe_v3.10.xsd +502 -502
  404. data/test/fixtures/product/schemas/leiauteConsStatServ_v2.00.xsd +98 -0
  405. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/leiauteConsStatServ_v3.10.xsd +97 -97
  406. data/test/fixtures/product/schemas/leiauteConsultaCadastro_v1.01.xsd +355 -0
  407. data/test/fixtures/product/schemas/leiauteConsultaCadastro_v2.00.xsd +404 -0
  408. data/test/fixtures/product/schemas/leiauteDPEC_v1.01.xsd +464 -0
  409. data/test/fixtures/product/schemas/leiauteDownloadNFe_v1.00.xsd +149 -0
  410. data/test/fixtures/product/schemas/leiauteEPEC_v1.00.xsd +459 -0
  411. data/test/fixtures/product/schemas/leiauteEventoCancNFe_v1.00.xsd +394 -0
  412. data/test/fixtures/product/schemas/leiauteEvento_v1.00.xsd +373 -0
  413. data/test/fixtures/product/schemas/leiauteInutNFe_v2.00.xsd +193 -0
  414. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/leiauteInutNFe_v3.10.xsd +192 -192
  415. data/test/fixtures/product/schemas/leiauteNFe_v2.00.xsd +6661 -0
  416. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/leiauteNFe_v3.10.xsd +6060 -6060
  417. data/test/fixtures/product/schemas/leiauteRemIndus_v1.00.xsd +382 -0
  418. data/test/fixtures/product/schemas/leiauteSRE_v1.00.xsd +372 -0
  419. data/test/fixtures/product/schemas/leiauteSuframaInternaliza_v1.00.xsd +642 -0
  420. data/test/fixtures/product/schemas/leiauteSuframaVistoria_v1.00.xsd +648 -0
  421. data/test/fixtures/product/schemas/nfe_v2.00.xsd +9 -0
  422. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/nfe_v3.10.xsd +8 -8
  423. data/test/fixtures/product/schemas/procCCeNFe_v1.00.xsd +10 -0
  424. data/test/fixtures/product/schemas/procCancNFe_v2.00.xsd +9 -0
  425. data/test/fixtures/product/schemas/procConfRecebtoNFe_v1.00.xsd +9 -0
  426. data/test/fixtures/product/schemas/procEPEC_v1.00.xsd +9 -0
  427. data/test/fixtures/product/schemas/procEventoCancNFe_v1.00.xsd +9 -0
  428. data/test/fixtures/product/schemas/procEventoNFe_v1.00.xsd +9 -0
  429. data/test/fixtures/product/schemas/procEventoNFe_v99.99.xsd +37 -0
  430. data/test/fixtures/product/schemas/procInutNFe_v2.00.xsd +9 -0
  431. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/procInutNFe_v3.10.xsd +8 -8
  432. data/test/fixtures/product/schemas/procNFe_v2.00.xsd +9 -0
  433. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/procNFe_v3.10.xsd +8 -8
  434. data/test/fixtures/product/schemas/procRemIndus_v1.00.xsd +9 -0
  435. data/test/fixtures/product/schemas/resEvento_v1.00.xsd +94 -0
  436. data/test/fixtures/product/schemas/resNFe_v1.00.xsd +110 -0
  437. data/test/fixtures/product/schemas/retAtuCadEmiDFe_v1.01.xsd +9 -0
  438. data/test/fixtures/product/schemas/retCancNFe_v2.00.xsd +9 -0
  439. data/test/fixtures/product/schemas/retConsCad_v2.00.xsd +9 -0
  440. data/test/fixtures/product/schemas/retConsDPEC_v1.01.xsd +9 -0
  441. data/test/fixtures/product/schemas/retConsReciNFe_v2.00.xsd +9 -0
  442. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/retConsReciNFe_v3.10.xsd +8 -8
  443. data/test/fixtures/product/schemas/retConsSitNFe_v2.01.xsd +10 -0
  444. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/retConsSitNFe_v3.10.xsd +8 -8
  445. data/test/fixtures/product/schemas/retConsStatServ_v2.00.xsd +9 -0
  446. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/retConsStatServ_v3.10.xsd +8 -8
  447. data/test/fixtures/product/schemas/retDPEC_v1.01.xsd +9 -0
  448. data/test/fixtures/product/schemas/retDistDFeInt_v1.00.xsd +84 -0
  449. data/test/fixtures/product/schemas/retDownloadNFe_v1.00.xsd +9 -0
  450. data/test/fixtures/product/schemas/retEnvCCe_v1.00.xsd +10 -0
  451. data/test/fixtures/product/schemas/retEnvCancelPProrrogNFe_v1.0.xsd +231 -0
  452. data/test/fixtures/product/schemas/retEnvConfRecebto_v1.00.xsd +9 -0
  453. data/test/fixtures/product/schemas/retEnvEPEC_v1.00.xsd +9 -0
  454. data/test/fixtures/product/schemas/retEnvEventoCancNFe_v1.00.xsd +9 -0
  455. data/test/fixtures/product/schemas/retEnvEvento_v1.00.xsd +9 -0
  456. data/test/fixtures/product/schemas/retEnvFiscoNFe_v1.0.xsd +234 -0
  457. data/test/fixtures/product/schemas/retEnvRemIndus_v1.00.xsd +9 -0
  458. data/test/fixtures/product/schemas/retEnvSuframaInternaliza_v1.00.xsd +9 -0
  459. data/test/fixtures/product/schemas/retEnvSuframaVistoria_v1.00.xsd +9 -0
  460. data/test/fixtures/product/schemas/retEnviNFe_v2.00.xsd +9 -0
  461. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/retEnviNFe_v3.10.xsd +8 -8
  462. data/test/fixtures/product/schemas/retEventoEPEC_v0.01.xsd +207 -0
  463. data/test/fixtures/product/schemas/retInutNFe_v2.00.xsd +9 -0
  464. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/retInutNFe_v3.10.xsd +8 -8
  465. data/test/fixtures/product/schemas/retPProrrogNFe_v1.0.xsd +233 -0
  466. data/test/fixtures/product/schemas/retconsNFeDest_v1.01.xsd +9 -0
  467. data/test/fixtures/product/schemas/tiposBasico_v1.03.xsd +816 -0
  468. data/test/fixtures/product/schemas/tiposBasico_v1.03_OPENSSL.xsd +816 -0
  469. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/tiposBasico_v3.10.xsd +571 -571
  470. data/test/fixtures/product/schemas/tiposBasico_v3.10_OPENSSL.xsd +877 -0
  471. data/test/fixtures/product/schemas/tiposDistDFe_v1.00.xsd +217 -0
  472. data/{lib/br_nfe/product/xml/v3_10/XSD → test/fixtures/product/schemas}/xmldsig-core-schema_v1.01.xsd +97 -97
  473. data/test/fixtures/product/wsdl/NFeRetAutorizacao.xml +80 -0
  474. data/test/fixtures/product/wsdl/NfeAutorizacao.xml +107 -0
  475. data/test/fixtures/product/wsdl/NfeConsulta2.xml +80 -0
  476. data/test/fixtures/product/wsdl/NfeStatusServico2.xml +70 -0
  477. data/test/fixtures/product/wsdl/nfeinutilizacao2.xml +80 -0
  478. data/test/fixtures/service/wsdl/betha/v1/cancelar_nfse.xml +178 -0
  479. data/test/fixtures/service/wsdl/betha/v1/consultar_lote_rps.xml +339 -0
  480. data/test/fixtures/service/wsdl/betha/v1/consultar_nfse.xml +348 -0
  481. data/test/fixtures/service/wsdl/betha/v1/consultar_nfse_por_rps.xml +365 -0
  482. data/test/fixtures/service/wsdl/betha/v1/consultar_situacao_lote_rps.xml +74 -0
  483. data/test/fixtures/service/wsdl/betha/v1/recepcionar_lote_rps.xml +299 -0
  484. data/test/fixtures/service/wsdl/simpliss/v1/nfseservice.xml +1 -0
  485. data/test/fixtures/service/wsdl/thema/v1/nfse_cancelamento.xml +82 -0
  486. data/test/fixtures/service/wsdl/thema/v1/nfse_consulta.xml +235 -0
  487. data/test/fixtures/service/wsdl/thema/v1/nfse_remessa.xml +185 -0
  488. data/test/test_helper.rb +369 -1
  489. metadata +711 -33
  490. data/lib/br_nfe/product/base.rb +0 -82
  491. data/lib/br_nfe/product/consulta_status_servico.rb +0 -35
  492. data/lib/br_nfe/product/value_nf.rb +0 -9
  493. data/lib/br_nfe/product/xml/v3_10/consulta_status_servico.xml.slim +0 -4
  494. data/test/br_nfe/product/base_test.rb +0 -150
  495. data/test/br_nfe/product/consulta_status_servico_test.rb +0 -59
@@ -0,0 +1,418 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!-- 08-06-2011 - correcao do pattern do nSeq para aceitar 1-20 -->
3
+ <!-- 13-05-2011 - correcao do pattern da data para aceitar -4:00 -->
4
+ <!-- 03-03-2011 - correcao do pattern da data -->
5
+ <!-- 03-03-2011 - correcao do pattern nSeq rejeitar zerno nao significativo -->
6
+ <!-- 03-03-2011 - acrescimo do xCondUso no detalhamento da carta de correcao -->
7
+ <!-- 03-03-2011 - correcao da literal versao no enumeration da versao -->
8
+ <!-- 03-03-2011 - correcao do nome da tag raiz da carta de correcao -->
9
+ <!-- PL_006CC leiauteCCe 30/08/2010 -->
10
+ <xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.portalfiscal.inf.br/nfe" targetNamespace="http://www.portalfiscal.inf.br/nfe" elementFormDefault="qualified" attributeFormDefault="unqualified">
11
+ <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema_v1.01.xsd"/>
12
+ <xs:include schemaLocation="tiposBasico_v1.03.xsd"/>
13
+ <xs:complexType name="TEvento">
14
+ <xs:annotation>
15
+ <xs:documentation>Tipo Evento</xs:documentation>
16
+ </xs:annotation>
17
+ <xs:sequence>
18
+ <xs:element name="infEvento">
19
+ <xs:complexType>
20
+ <xs:sequence>
21
+ <xs:element name="cOrgao" type="TCOrgaoIBGE">
22
+ <xs:annotation>
23
+ <xs:documentation>Código do órgão de recepção do Evento. Utilizar a Tabela do IBGE extendida, utilizar 90 para identificar o Ambiente Nacional</xs:documentation>
24
+ </xs:annotation>
25
+ </xs:element>
26
+ <xs:element name="tpAmb" type="TAmb">
27
+ <xs:annotation>
28
+ <xs:documentation>Identificação do Ambiente:
29
+ 1 - Produção
30
+ 2 - Homologação</xs:documentation>
31
+ </xs:annotation>
32
+ </xs:element>
33
+ <xs:choice>
34
+ <xs:annotation>
35
+ <xs:documentation>Identificação do autor do evento</xs:documentation>
36
+ </xs:annotation>
37
+ <xs:element name="CNPJ" type="TCnpjOpc">
38
+ <xs:annotation>
39
+ <xs:documentation>CNPJ</xs:documentation>
40
+ </xs:annotation>
41
+ </xs:element>
42
+ <xs:element name="CPF" type="TCpf">
43
+ <xs:annotation>
44
+ <xs:documentation>CPF</xs:documentation>
45
+ </xs:annotation>
46
+ </xs:element>
47
+ </xs:choice>
48
+ <xs:element name="chNFe" type="TChNFe">
49
+ <xs:annotation>
50
+ <xs:documentation>Chave de Acesso da NF-e vinculada ao evento</xs:documentation>
51
+ </xs:annotation>
52
+ </xs:element>
53
+ <xs:element name="dhEvento" type="TDateTimeUTC">
54
+ <xs:annotation>
55
+ <xs:documentation>Data de emissão no formato UTC. AAAA-MM-DDThh:mm:ssTZD</xs:documentation>
56
+ </xs:annotation>
57
+ </xs:element>
58
+ <xs:element name="tpEvento">
59
+ <xs:annotation>
60
+ <xs:documentation>Tipo do Evento</xs:documentation>
61
+ </xs:annotation>
62
+ <xs:simpleType>
63
+ <xs:restriction base="xs:string">
64
+ <xs:whiteSpace value="preserve"/>
65
+ <xs:pattern value="[0-9]{6}"/>
66
+ <xs:enumeration value="110110"/>
67
+ </xs:restriction>
68
+ </xs:simpleType>
69
+ </xs:element>
70
+ <xs:element name="nSeqEvento">
71
+ <xs:annotation>
72
+ <xs:documentation>Seqüencial do evento para o mesmo tipo de evento. Para maioria dos eventos será 1, nos casos em que possa existir mais de um evento, como é o caso da carta de correção, o autor do evento deve numerar de forma seqüencial.</xs:documentation>
73
+ </xs:annotation>
74
+ <xs:simpleType>
75
+ <xs:restriction base="xs:string">
76
+ <xs:whiteSpace value="preserve"/>
77
+ <xs:pattern value="[1-9]|[1][0-9]{0,1}|20"/>
78
+ </xs:restriction>
79
+ </xs:simpleType>
80
+ </xs:element>
81
+ <xs:element name="verEvento">
82
+ <xs:annotation>
83
+ <xs:documentation>Versão do Tipo do Evento</xs:documentation>
84
+ </xs:annotation>
85
+ <xs:simpleType>
86
+ <xs:restriction base="xs:string">
87
+ <xs:whiteSpace value="preserve"/>
88
+ <xs:enumeration value="1.00"/>
89
+ </xs:restriction>
90
+ </xs:simpleType>
91
+ </xs:element>
92
+ <xs:element name="detEvento">
93
+ <xs:annotation>
94
+ <xs:documentation>Evento do carta de correção e1101110</xs:documentation>
95
+ </xs:annotation>
96
+ <xs:complexType>
97
+ <xs:sequence>
98
+ <xs:element name="descEvento">
99
+ <xs:annotation>
100
+ <xs:documentation>Descrição do Evento - “Carta de Correção”</xs:documentation>
101
+ </xs:annotation>
102
+ <xs:simpleType>
103
+ <xs:restriction base="xs:string">
104
+ <xs:whiteSpace value="preserve"/>
105
+ <xs:enumeration value="Carta de Correção"/>
106
+ <xs:enumeration value="Carta de Correcao"/>
107
+ </xs:restriction>
108
+ </xs:simpleType>
109
+ </xs:element>
110
+ <xs:element name="xCorrecao">
111
+ <xs:annotation>
112
+ <xs:documentation>Correção a ser considerada</xs:documentation>
113
+ </xs:annotation>
114
+ <xs:simpleType>
115
+ <xs:restriction base="xs:string">
116
+ <xs:whiteSpace value="preserve"/>
117
+ <xs:minLength value="15"/>
118
+ <xs:maxLength value="1000"/>
119
+ <xs:pattern value="[!-ÿ]{1}[ -ÿ]{0,}[!-ÿ]{1}|[!-ÿ]{1}"/>
120
+ </xs:restriction>
121
+ </xs:simpleType>
122
+ </xs:element>
123
+ <xs:element name="xCondUso">
124
+ <xs:annotation>
125
+ <xs:documentation>Texto Fixo com as condições de uso da Carta de Correção</xs:documentation>
126
+ </xs:annotation>
127
+ <xs:simpleType>
128
+ <xs:restriction base="xs:string">
129
+ <xs:whiteSpace value="preserve"/>
130
+ <xs:enumeration value="A Carta de Correção é disciplinada pelo § 1º-A do art. 7º do Convênio S/N, de 15 de dezembro de 1970 e pode ser utilizada para regularização de erro ocorrido na emissão de documento fiscal, desde que o erro não esteja relacionado com: I - as variáveis que determinam o valor do imposto tais como: base de cálculo, alíquota, diferença de preço, quantidade, valor da operação ou da prestação; II - a correção de dados cadastrais que implique mudança do remetente ou do destinatário; III - a data de emissão ou de saída."/>
131
+ <xs:enumeration value="A Carta de Correcao e disciplinada pelo paragrafo 1o-A do art. 7o do Convenio S/N, de 15 de dezembro de 1970 e pode ser utilizada para regularizacao de erro ocorrido na emissao de documento fiscal, desde que o erro nao esteja relacionado com: I - as variaveis que determinam o valor do imposto tais como: base de calculo, aliquota, diferenca de preco, quantidade, valor da operacao ou da prestacao; II - a correcao de dados cadastrais que implique mudanca do remetente ou do destinatario; III - a data de emissao ou de saida."/>
132
+ </xs:restriction>
133
+ </xs:simpleType>
134
+ </xs:element>
135
+ </xs:sequence>
136
+ <xs:attribute name="versao" use="required">
137
+ <xs:simpleType>
138
+ <xs:restriction base="xs:string">
139
+ <xs:whiteSpace value="preserve"/>
140
+ <xs:enumeration value="1.00"/>
141
+ </xs:restriction>
142
+ </xs:simpleType>
143
+ </xs:attribute>
144
+ </xs:complexType>
145
+ </xs:element>
146
+ </xs:sequence>
147
+ <xs:attribute name="Id" use="required">
148
+ <xs:annotation>
149
+ <xs:documentation>Identificador da TAG a ser assinada, a regra de formação do Id é:
150
+ “ID” + tpEvento + chave da NF-e + nSeqEvento</xs:documentation>
151
+ </xs:annotation>
152
+ <xs:simpleType>
153
+ <xs:restriction base="xs:ID">
154
+ <xs:pattern value="ID[0-9]{52}"/>
155
+ </xs:restriction>
156
+ </xs:simpleType>
157
+ </xs:attribute>
158
+ </xs:complexType>
159
+ </xs:element>
160
+ <xs:element ref="ds:Signature"/>
161
+ </xs:sequence>
162
+ <xs:attribute name="versao" type="TVerEvento" use="required"/>
163
+ </xs:complexType>
164
+ <xs:complexType name="TretEvento">
165
+ <xs:annotation>
166
+ <xs:documentation>Tipo retorno do Evento</xs:documentation>
167
+ </xs:annotation>
168
+ <xs:sequence>
169
+ <xs:element name="infEvento">
170
+ <xs:complexType>
171
+ <xs:sequence>
172
+ <xs:element name="tpAmb" type="TAmb">
173
+ <xs:annotation>
174
+ <xs:documentation>Identificação do Ambiente:
175
+ 1 - Produção
176
+ 2 - Homologação</xs:documentation>
177
+ </xs:annotation>
178
+ </xs:element>
179
+ <xs:element name="verAplic" type="TVerAplic">
180
+ <xs:annotation>
181
+ <xs:documentation>Versão do Aplicativo que recebeu o Evento</xs:documentation>
182
+ </xs:annotation>
183
+ </xs:element>
184
+ <xs:element name="cOrgao" type="TCOrgaoIBGE">
185
+ <xs:annotation>
186
+ <xs:documentation>Código do órgão de recepção do Evento. Utilizar a Tabela do IBGE extendida, utilizar 90 para identificar o Ambiente Nacional</xs:documentation>
187
+ </xs:annotation>
188
+ </xs:element>
189
+ <xs:element name="cStat" type="TStat">
190
+ <xs:annotation>
191
+ <xs:documentation>Código do status da registro do Evento</xs:documentation>
192
+ </xs:annotation>
193
+ </xs:element>
194
+ <xs:element name="xMotivo" type="TMotivo">
195
+ <xs:annotation>
196
+ <xs:documentation>Descrição literal do status do registro do Evento</xs:documentation>
197
+ </xs:annotation>
198
+ </xs:element>
199
+ <xs:element name="chNFe" type="TChNFe" minOccurs="0">
200
+ <xs:annotation>
201
+ <xs:documentation>Chave de Acesso NF-e vinculada</xs:documentation>
202
+ </xs:annotation>
203
+ </xs:element>
204
+ <xs:element name="tpEvento" minOccurs="0">
205
+ <xs:annotation>
206
+ <xs:documentation>Tipo do Evento vinculado</xs:documentation>
207
+ </xs:annotation>
208
+ <xs:simpleType>
209
+ <xs:restriction base="xs:string">
210
+ <xs:whiteSpace value="preserve"/>
211
+ <xs:pattern value="[0-9]{6}"/>
212
+ </xs:restriction>
213
+ </xs:simpleType>
214
+ </xs:element>
215
+ <xs:element name="xEvento" minOccurs="0">
216
+ <xs:annotation>
217
+ <xs:documentation>Descrição do Evento</xs:documentation>
218
+ </xs:annotation>
219
+ <xs:simpleType>
220
+ <xs:restriction base="TString">
221
+ <xs:minLength value="5"/>
222
+ <xs:maxLength value="60"/>
223
+ </xs:restriction>
224
+ </xs:simpleType>
225
+ </xs:element>
226
+ <xs:element name="nSeqEvento" minOccurs="0">
227
+ <xs:annotation>
228
+ <xs:documentation>Seqüencial do evento</xs:documentation>
229
+ </xs:annotation>
230
+ <xs:simpleType>
231
+ <xs:restriction base="xs:string">
232
+ <xs:whiteSpace value="preserve"/>
233
+ <xs:pattern value="[1-9][0-9]{0,1}"/>
234
+ </xs:restriction>
235
+ </xs:simpleType>
236
+ </xs:element>
237
+ <xs:choice minOccurs="0">
238
+ <xs:annotation>
239
+ <xs:documentation>Identificação do destinatário da NF-e</xs:documentation>
240
+ </xs:annotation>
241
+ <xs:element name="CNPJDest" type="TCnpjOpc">
242
+ <xs:annotation>
243
+ <xs:documentation>CNPJ Destinatário</xs:documentation>
244
+ </xs:annotation>
245
+ </xs:element>
246
+ <xs:element name="CPFDest" type="TCpf">
247
+ <xs:annotation>
248
+ <xs:documentation>CPF Destiantário</xs:documentation>
249
+ </xs:annotation>
250
+ </xs:element>
251
+ </xs:choice>
252
+ <xs:element name="emailDest" minOccurs="0">
253
+ <xs:annotation>
254
+ <xs:documentation>email do destinatário</xs:documentation>
255
+ </xs:annotation>
256
+ <xs:simpleType>
257
+ <xs:restriction base="TString">
258
+ <xs:minLength value="1"/>
259
+ <xs:maxLength value="60"/>
260
+ </xs:restriction>
261
+ </xs:simpleType>
262
+ </xs:element>
263
+ <xs:element name="dhRegEvento">
264
+ <xs:annotation>
265
+ <xs:documentation>Data e Hora de do recebimento do evento ou do registro do evento formato UTC AAAA-MM-DDThh:mm:ssTZD.</xs:documentation>
266
+ </xs:annotation>
267
+ <xs:simpleType>
268
+ <xs:restriction base="xs:string">
269
+ <xs:whiteSpace value="preserve"/>
270
+ <xs:pattern value="(((20(([02468][048])|([13579][26]))-02-29))|(20[0-9][0-9])-((((0[1-9])|(1[0-2]))-((0[1-9])|(1\d)|(2[0-8])))|((((0[13578])|(1[02]))-31)|(((0[1,3-9])|(1[0-2]))-(29|30)))))T(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d-0[1-4]:00"/>
271
+ </xs:restriction>
272
+ </xs:simpleType>
273
+ </xs:element>
274
+ <xs:element name="nProt" type="TProt" minOccurs="0">
275
+ <xs:annotation>
276
+ <xs:documentation>Número do protocolo de registro do evento</xs:documentation>
277
+ </xs:annotation>
278
+ </xs:element>
279
+ </xs:sequence>
280
+ <xs:attribute name="Id" use="optional">
281
+ <xs:simpleType>
282
+ <xs:restriction base="xs:ID">
283
+ <xs:pattern value="ID[0-9]{15}"/>
284
+ </xs:restriction>
285
+ </xs:simpleType>
286
+ </xs:attribute>
287
+ </xs:complexType>
288
+ </xs:element>
289
+ <xs:element ref="ds:Signature" minOccurs="0"/>
290
+ </xs:sequence>
291
+ <xs:attribute name="versao" type="TVerEvento" use="required"/>
292
+ </xs:complexType>
293
+ <xs:complexType name="TEnvEvento">
294
+ <xs:annotation>
295
+ <xs:documentation> Tipo Lote de Envio</xs:documentation>
296
+ </xs:annotation>
297
+ <xs:sequence>
298
+ <xs:element name="idLote">
299
+ <xs:simpleType>
300
+ <xs:restriction base="xs:string">
301
+ <xs:whiteSpace value="preserve"/>
302
+ <xs:pattern value="[0-9]{1,15}"/>
303
+ </xs:restriction>
304
+ </xs:simpleType>
305
+ </xs:element>
306
+ <xs:element name="evento" type="TEvento" maxOccurs="20"/>
307
+ </xs:sequence>
308
+ <xs:attribute name="versao" type="TVerEnvEvento" use="required"/>
309
+ </xs:complexType>
310
+ <xs:complexType name="TRetEnvEvento">
311
+ <xs:annotation>
312
+ <xs:documentation> Tipo Retorno de Lote de Envio</xs:documentation>
313
+ </xs:annotation>
314
+ <xs:sequence>
315
+ <xs:element name="idLote">
316
+ <xs:simpleType>
317
+ <xs:restriction base="xs:string">
318
+ <xs:whiteSpace value="preserve"/>
319
+ <xs:pattern value="[0-9]{1,15}"/>
320
+ </xs:restriction>
321
+ </xs:simpleType>
322
+ </xs:element>
323
+ <xs:element name="tpAmb" type="TAmb">
324
+ <xs:annotation>
325
+ <xs:documentation>Identificação do Ambiente:
326
+ 1 - Produção
327
+ 2 - Homologação</xs:documentation>
328
+ </xs:annotation>
329
+ </xs:element>
330
+ <xs:element name="verAplic" type="TVerAplic">
331
+ <xs:annotation>
332
+ <xs:documentation>Versão do Aplicativo que recebeu o Evento</xs:documentation>
333
+ </xs:annotation>
334
+ </xs:element>
335
+ <xs:element name="cOrgao" type="TCOrgaoIBGE">
336
+ <xs:annotation>
337
+ <xs:documentation>Código do òrgao que registrou o Evento</xs:documentation>
338
+ </xs:annotation>
339
+ </xs:element>
340
+ <xs:element name="cStat" type="TStat">
341
+ <xs:annotation>
342
+ <xs:documentation>Código do status da registro do Evento</xs:documentation>
343
+ </xs:annotation>
344
+ </xs:element>
345
+ <xs:element name="xMotivo" type="TMotivo">
346
+ <xs:annotation>
347
+ <xs:documentation>Descrição literal do status do registro do Evento</xs:documentation>
348
+ </xs:annotation>
349
+ </xs:element>
350
+ <xs:element name="retEvento" type="TretEvento" minOccurs="0" maxOccurs="20"/>
351
+ </xs:sequence>
352
+ <xs:attribute name="versao" type="TVerEnvEvento" use="required"/>
353
+ </xs:complexType>
354
+ <xs:complexType name="TProcEvento">
355
+ <xs:annotation>
356
+ <xs:documentation>Tipo procEvento</xs:documentation>
357
+ </xs:annotation>
358
+ <xs:sequence>
359
+ <xs:element name="evento" type="TEvento"/>
360
+ <xs:element name="retEvento" type="TretEvento"/>
361
+ </xs:sequence>
362
+ <xs:attribute name="versao" type="TVerEvento" use="required"/>
363
+ </xs:complexType>
364
+ <xs:simpleType name="TVerEnvEvento">
365
+ <xs:annotation>
366
+ <xs:documentation>Tipo Versão do EnvEvento</xs:documentation>
367
+ </xs:annotation>
368
+ <xs:restriction base="xs:string">
369
+ <xs:whiteSpace value="preserve"/>
370
+ <xs:pattern value="1\.00"/>
371
+ </xs:restriction>
372
+ </xs:simpleType>
373
+ <xs:simpleType name="TVerEvento">
374
+ <xs:annotation>
375
+ <xs:documentation>Tipo Versão do Evento</xs:documentation>
376
+ </xs:annotation>
377
+ <xs:restriction base="xs:string">
378
+ <xs:whiteSpace value="preserve"/>
379
+ <xs:pattern value="1\.00"/>
380
+ </xs:restriction>
381
+ </xs:simpleType>
382
+ <xs:simpleType name="TCOrgaoIBGE">
383
+ <xs:annotation>
384
+ <xs:documentation>Tipo Código de orgão (UF da tabela do IBGE + 90 RFB)</xs:documentation>
385
+ </xs:annotation>
386
+ <xs:restriction base="xs:string">
387
+ <xs:whiteSpace value="preserve"/>
388
+ <xs:enumeration value="11"/>
389
+ <xs:enumeration value="12"/>
390
+ <xs:enumeration value="13"/>
391
+ <xs:enumeration value="14"/>
392
+ <xs:enumeration value="15"/>
393
+ <xs:enumeration value="16"/>
394
+ <xs:enumeration value="17"/>
395
+ <xs:enumeration value="21"/>
396
+ <xs:enumeration value="22"/>
397
+ <xs:enumeration value="23"/>
398
+ <xs:enumeration value="24"/>
399
+ <xs:enumeration value="25"/>
400
+ <xs:enumeration value="26"/>
401
+ <xs:enumeration value="27"/>
402
+ <xs:enumeration value="28"/>
403
+ <xs:enumeration value="29"/>
404
+ <xs:enumeration value="31"/>
405
+ <xs:enumeration value="32"/>
406
+ <xs:enumeration value="33"/>
407
+ <xs:enumeration value="35"/>
408
+ <xs:enumeration value="41"/>
409
+ <xs:enumeration value="42"/>
410
+ <xs:enumeration value="43"/>
411
+ <xs:enumeration value="50"/>
412
+ <xs:enumeration value="51"/>
413
+ <xs:enumeration value="52"/>
414
+ <xs:enumeration value="53"/>
415
+ <xs:enumeration value="90"/>
416
+ </xs:restriction>
417
+ </xs:simpleType>
418
+ </xs:schema>
@@ -0,0 +1,143 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!-- PL_006F versao alteracao do xServ para tornar CANCELAR obrigatorio 21/05/2010 -->
3
+ <!-- PL_006c versao com correcoes 24/12/2009 -->
4
+ <xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns="http://www.portalfiscal.inf.br/nfe" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.portalfiscal.inf.br/nfe" elementFormDefault="qualified" attributeFormDefault="unqualified">
5
+ <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema_v1.01.xsd"/>
6
+ <xs:include schemaLocation="tiposBasico_v1.03.xsd"/>
7
+ <xs:complexType name="TCancNFe">
8
+ <xs:annotation>
9
+ <xs:documentation>Tipo Pedido de Cancelamento de NF-e</xs:documentation>
10
+ </xs:annotation>
11
+ <xs:sequence>
12
+ <xs:element name="infCanc">
13
+ <xs:annotation>
14
+ <xs:documentation>Dados do Pedido de Cancelamento da Nota Fiscal Eletrônica</xs:documentation>
15
+ </xs:annotation>
16
+ <xs:complexType>
17
+ <xs:sequence>
18
+ <xs:element name="tpAmb" type="TAmb">
19
+ <xs:annotation>
20
+ <xs:documentation>Identificação do Ambiente:
21
+ 1 - Produção
22
+ 2 - Homologação</xs:documentation>
23
+ </xs:annotation>
24
+ </xs:element>
25
+ <xs:element name="xServ">
26
+ <xs:annotation>
27
+ <xs:documentation>Serviço Solicitado</xs:documentation>
28
+ </xs:annotation>
29
+ <xs:simpleType>
30
+ <xs:restriction base="TServ">
31
+ <xs:enumeration value="CANCELAR"/>
32
+ </xs:restriction>
33
+ </xs:simpleType>
34
+ </xs:element>
35
+ <xs:element name="chNFe" type="TChNFe">
36
+ <xs:annotation>
37
+ <xs:documentation>Chaves de acesso compostas por Código da UF + AAMM da emissão + CNPJ do Emitente + Modelo, Série e Número da NF-e + Código Numérico + DV.</xs:documentation>
38
+ </xs:annotation>
39
+ </xs:element>
40
+ <xs:element name="nProt" type="TProt">
41
+ <xs:annotation>
42
+ <xs:documentation>Número do Protocolo de Status da NF-e. 1 posição (1 – Secretaria de Fazenda Estadual 2 – Receita Federal); 2 posições ano; 10 seqüencial no ano.</xs:documentation>
43
+ </xs:annotation>
44
+ </xs:element>
45
+ <xs:element name="xJust" type="TJust">
46
+ <xs:annotation>
47
+ <xs:documentation>Justificativa do cancelamento</xs:documentation>
48
+ </xs:annotation>
49
+ </xs:element>
50
+ </xs:sequence>
51
+ <xs:attribute name="Id" use="required">
52
+ <xs:simpleType>
53
+ <xs:restriction base="xs:ID">
54
+ <xs:pattern value="ID[0-9]{44}"/>
55
+ </xs:restriction>
56
+ </xs:simpleType>
57
+ </xs:attribute>
58
+ </xs:complexType>
59
+ </xs:element>
60
+ <xs:element ref="ds:Signature"/>
61
+ </xs:sequence>
62
+ <xs:attribute name="versao" type="TVerCancNFe" use="required"/>
63
+ </xs:complexType>
64
+ <xs:complexType name="TRetCancNFe">
65
+ <xs:annotation>
66
+ <xs:documentation>Tipo retorno Pedido de Cancelamento da Nota Fiscal Eletrônica</xs:documentation>
67
+ </xs:annotation>
68
+ <xs:sequence>
69
+ <xs:element name="infCanc">
70
+ <xs:annotation>
71
+ <xs:documentation>Dados do Resultado do Pedido de Cancelamento da Nota Fiscal Eletrônica</xs:documentation>
72
+ </xs:annotation>
73
+ <xs:complexType>
74
+ <xs:sequence>
75
+ <xs:element name="tpAmb" type="TAmb">
76
+ <xs:annotation>
77
+ <xs:documentation>Identificação do Ambiente:
78
+ 1 - Produção
79
+ 2 - Homologação</xs:documentation>
80
+ </xs:annotation>
81
+ </xs:element>
82
+ <xs:element name="verAplic" type="TVerAplic">
83
+ <xs:annotation>
84
+ <xs:documentation>Versão do Aplicativo que processou o pedido de cancelamento</xs:documentation>
85
+ </xs:annotation>
86
+ </xs:element>
87
+ <xs:element name="cStat" type="TStat">
88
+ <xs:annotation>
89
+ <xs:documentation>Código do status da mensagem enviada.</xs:documentation>
90
+ </xs:annotation>
91
+ </xs:element>
92
+ <xs:element name="xMotivo" type="TMotivo">
93
+ <xs:annotation>
94
+ <xs:documentation>Descrição literal do status do serviço solicitado.</xs:documentation>
95
+ </xs:annotation>
96
+ </xs:element>
97
+ <xs:element name="cUF" type="TCodUfIBGE">
98
+ <xs:annotation>
99
+ <xs:documentation>código da UF de atendimento</xs:documentation>
100
+ </xs:annotation>
101
+ </xs:element>
102
+ <xs:element name="chNFe" type="TChNFe" minOccurs="0">
103
+ <xs:annotation>
104
+ <xs:documentation>Chaves de acesso da NF-e, compostas por: UF do emitente, AAMM da emissão da NFe, CNPJ do emitente, modelo, série e número da NF-e e código numérico + DV.</xs:documentation>
105
+ </xs:annotation>
106
+ </xs:element>
107
+ <xs:element name="dhRecbto" type="xs:dateTime" minOccurs="0">
108
+ <xs:annotation>
109
+ <xs:documentation>Data e hora de recebimento, no formato AAAA-MM-DDTHH:MM:SS. Deve ser preenchida com data e hora da gravação no Banco em caso de Confirmação.</xs:documentation>
110
+ </xs:annotation>
111
+ </xs:element>
112
+ <xs:element name="nProt" type="TProt" minOccurs="0">
113
+ <xs:annotation>
114
+ <xs:documentation>Número do Protocolo de Status da NF-e. 1 posição (1 – Secretaria de Fazenda Estadual 2 – Receita Federal); 2 - código da UF - 2 posições ano; 10 seqüencial no ano.</xs:documentation>
115
+ </xs:annotation>
116
+ </xs:element>
117
+ </xs:sequence>
118
+ <xs:attribute name="Id" type="xs:ID" use="optional"/>
119
+ </xs:complexType>
120
+ </xs:element>
121
+ <xs:element ref="ds:Signature" minOccurs="0"/>
122
+ </xs:sequence>
123
+ <xs:attribute name="versao" type="TVerCancNFe" use="required"/>
124
+ </xs:complexType>
125
+ <xs:complexType name="TProcCancNFe">
126
+ <xs:annotation>
127
+ <xs:documentation>Tipo Pedido de Cancelamento de NF-e processado</xs:documentation>
128
+ </xs:annotation>
129
+ <xs:sequence>
130
+ <xs:element name="cancNFe" type="TCancNFe"/>
131
+ <xs:element name="retCancNFe" type="TRetCancNFe"/>
132
+ </xs:sequence>
133
+ <xs:attribute name="versao" type="TVerCancNFe" use="required"/>
134
+ </xs:complexType>
135
+ <xs:simpleType name="TVerCancNFe">
136
+ <xs:annotation>
137
+ <xs:documentation>Tipo Versão do leiaute de Cancelamento de NF-e - 2.00</xs:documentation>
138
+ </xs:annotation>
139
+ <xs:restriction base="xs:token">
140
+ <xs:pattern value="2\.00"/>
141
+ </xs:restriction>
142
+ </xs:simpleType>
143
+ </xs:schema>