nfe-io 0.3.2 → 1.0.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 (1275) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +60 -0
  3. data/MIGRATION.md +793 -0
  4. data/README.md +399 -96
  5. data/lib/nfe/certificate.rb +87 -0
  6. data/lib/nfe/client.rb +210 -0
  7. data/lib/nfe/configuration.rb +207 -6
  8. data/lib/nfe/date_normalizer.rb +37 -0
  9. data/lib/nfe/error_factory.rb +168 -0
  10. data/lib/nfe/errors.rb +106 -0
  11. data/lib/nfe/flow_status.rb +35 -0
  12. data/lib/nfe/generated/calculo_impostos_v1/calculate_item_request.rb +39 -0
  13. data/lib/nfe/generated/calculo_impostos_v1/calculate_item_response.rb +32 -0
  14. data/lib/nfe/generated/calculo_impostos_v1/calculate_request.rb +25 -0
  15. data/lib/nfe/generated/calculo_impostos_v1/calculate_request_issuer.rb +22 -0
  16. data/lib/nfe/generated/calculo_impostos_v1/calculate_request_recipient.rb +22 -0
  17. data/lib/nfe/generated/calculo_impostos_v1/calculate_response.rb +20 -0
  18. data/lib/nfe/generated/calculo_impostos_v1/cofins.rb +25 -0
  19. data/lib/nfe/generated/calculo_impostos_v1/icms.rb +64 -0
  20. data/lib/nfe/generated/calculo_impostos_v1/icms_uf_dest.rb +28 -0
  21. data/lib/nfe/generated/calculo_impostos_v1/ii.rb +27 -0
  22. data/lib/nfe/generated/calculo_impostos_v1/ipi.rb +26 -0
  23. data/lib/nfe/generated/calculo_impostos_v1/operation_type.rb +16 -0
  24. data/lib/nfe/generated/calculo_impostos_v1/origin.rb +23 -0
  25. data/lib/nfe/generated/calculo_impostos_v1/pis.rb +25 -0
  26. data/lib/nfe/generated/calculo_impostos_v1/problem_details.rb +24 -0
  27. data/lib/nfe/generated/calculo_impostos_v1/state.rb +42 -0
  28. data/lib/nfe/generated/calculo_impostos_v1/tax_code.rb +21 -0
  29. data/lib/nfe/generated/calculo_impostos_v1/tax_code_paginated_response.rb +23 -0
  30. data/lib/nfe/generated/calculo_impostos_v1/tax_regime.rb +20 -0
  31. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_enums_entity_status.rb +17 -0
  32. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_enums_metadata_resource_type.rb +20 -0
  33. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_company_resource.rb +23 -0
  34. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_enable_inbound_product_invoice_resource.rb +22 -0
  35. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_enable_transportation_invoice_inbound_resource.rb +21 -0
  36. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_manifest_automatic_rules_resource.rb +20 -0
  37. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_metadata_resource.rb +33 -0
  38. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_product_invoice_inbound_resource.rb +26 -0
  39. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_product_invoice_resource.rb +20 -0
  40. data/lib/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_transportation_invoice_inbound_resource.rb +25 -0
  41. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/buyer_resource.rb +21 -0
  42. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/cte_event_metadata_resource.rb +20 -0
  43. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/cte_metadata_resource.rb +20 -0
  44. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/enable_inbound_product_invoice_resource.rb +23 -0
  45. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/enable_transportation_invoice_inbound_resource.rb +22 -0
  46. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/error_response.rb +20 -0
  47. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/inbound_company_resource.rb +21 -0
  48. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/issuer_resource.rb +21 -0
  49. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/message_resource.rb +20 -0
  50. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/metadata_resource.rb +28 -0
  51. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/nfe_event_metadata_odata_resource.rb +28 -0
  52. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/nfe_metadata_odata_resource.rb +32 -0
  53. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/nfe_metadata_resource.rb +38 -0
  54. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/process_webhook_resource.rb +21 -0
  55. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/product_invoice_inbound_resource.rb +22 -0
  56. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/transportation_invoice_inbound_resource.rb +22 -0
  57. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/transportation_resource.rb +21 -0
  58. data/lib/nfe/generated/consulta_dfe_distribuicao_v2/xml_file_resource.rb +20 -0
  59. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/ativarbuscaautomticadedocumentose_eventosrelacionadosa_nota_fiscal_eletrnica_nf_e_request.rb +24 -0
  60. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/automatic_manifesting.rb +20 -0
  61. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/buyer.rb +21 -0
  62. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/company.rb +21 -0
  63. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/issuer.rb +21 -0
  64. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/links.rb +21 -0
  65. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/product_invoice.rb +20 -0
  66. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/sucessonarequisio.rb +40 -0
  67. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/sucessonarequisio2.rb +28 -0
  68. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/sucessonarequisio6.rb +38 -0
  69. data/lib/nfe/generated/consulta_nfe_distribuicao_v1/transportation.rb +21 -0
  70. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_address.rb +28 -0
  71. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_api_environment.rb +17 -0
  72. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_certificate_status.rb +19 -0
  73. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_city_base.rb +21 -0
  74. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_city_extended.rb +23 -0
  75. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_company_fiscal_status.rb +19 -0
  76. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_environment_type.rb +17 -0
  77. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_federal_tax_determination_by.rb +17 -0
  78. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_legal_nature.rb +76 -0
  79. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_municipal_tax_determination_by.rb +17 -0
  80. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_municipal_tax_fiscal_status.rb +19 -0
  81. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_security_credential.rb +21 -0
  82. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_special_tax_regime.rb +22 -0
  83. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_state_code.rb +43 -0
  84. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_state_tax_processing_authorizer.rb +16 -0
  85. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_state_tax_type.rb +17 -0
  86. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_status.rb +17 -0
  87. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_tax_regime.rb +21 -0
  88. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_address_resource.rb +27 -0
  89. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_certificate_metadata_resource.rb +20 -0
  90. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_certificate_metadata_resource_item.rb +26 -0
  91. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_certificates_metadata_resource.rb +20 -0
  92. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_city_base_resource.rb +21 -0
  93. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_companies_resource.rb +20 -0
  94. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_certificate_v1.rb +23 -0
  95. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_collection_resource_v1.rb +23 -0
  96. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_resource.rb +20 -0
  97. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_resource_item.rb +32 -0
  98. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_resource_v1.rb +47 -0
  99. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_single_resource_v1.rb +20 -0
  100. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_company_resource.rb +20 -0
  101. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_company_resource_item.rb +26 -0
  102. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_municipal_tax_resource.rb +20 -0
  103. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_municipal_tax_resource_item.rb +36 -0
  104. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_state_tax_processing_details_resource.rb +20 -0
  105. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_state_tax_resource.rb +20 -0
  106. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_state_tax_resource_item.rb +28 -0
  107. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_error_resource.rb +21 -0
  108. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_errors_resource.rb +20 -0
  109. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_municipal_tax_resource.rb +20 -0
  110. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_municipal_tax_resource_item.rb +42 -0
  111. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_serie_resource.rb +20 -0
  112. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_serie_resource_item.rb +21 -0
  113. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_processing_authorizer_resource.rb +16 -0
  114. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_processing_switch_authorizer_strategy_resource.rb +16 -0
  115. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_resource.rb +20 -0
  116. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_resource_item.rb +35 -0
  117. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_switch_authorizer_request.rb +21 -0
  118. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_switch_authorizer_response.rb +23 -0
  119. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_taxes_resource.rb +20 -0
  120. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_company_resource.rb +20 -0
  121. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_company_resource_item.rb +27 -0
  122. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_municipal_tax_resource.rb +20 -0
  123. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_municipal_tax_resource_item.rb +36 -0
  124. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_state_tax_resource.rb +20 -0
  125. data/lib/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_state_tax_resource_item.rb +28 -0
  126. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_edm_container_element_kind.rb +19 -0
  127. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_edm_expression_kind.rb +40 -0
  128. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_edm_schema_element_kind.rb +20 -0
  129. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_edm_type_kind.rb +24 -0
  130. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_entity_container.rb +23 -0
  131. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_entity_container_element.rb +22 -0
  132. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_expression.rb +20 -0
  133. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_model.rb +25 -0
  134. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_schema_element.rb +22 -0
  135. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_type.rb +20 -0
  136. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_type_reference.rb +21 -0
  137. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_vocabularies_iedm_direct_value_annotations_manager.rb +13 -0
  138. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_vocabularies_iedm_term.rb +25 -0
  139. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_vocabularies_iedm_vocabulary_annotatable.rb +13 -0
  140. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_edm_vocabularies_iedm_vocabulary_annotation.rb +24 -0
  141. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_odata_entity_set_info.rb +23 -0
  142. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_odata_function_import_info.rb +23 -0
  143. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_odata_service_document.rb +23 -0
  144. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_odata_singleton_info.rb +23 -0
  145. data/lib/nfe/generated/contribuintes_v2/microsoft_odata_odata_type_annotation.rb +20 -0
  146. data/lib/nfe/generated/generated_marker.rb +23 -0
  147. data/lib/nfe/generated/nf_consumidor_v2/activity_resource.rb +22 -0
  148. data/lib/nfe/generated/nf_consumidor_v2/addition_resource.rb +23 -0
  149. data/lib/nfe/generated/nf_consumidor_v2/additional_information_resource.rb +29 -0
  150. data/lib/nfe/generated/nf_consumidor_v2/address_resource.rb +28 -0
  151. data/lib/nfe/generated/nf_consumidor_v2/advance_payment_item_resource.rb +20 -0
  152. data/lib/nfe/generated/nf_consumidor_v2/authorization_resource.rb +22 -0
  153. data/lib/nfe/generated/nf_consumidor_v2/bill_resource.rb +23 -0
  154. data/lib/nfe/generated/nf_consumidor_v2/billing_resource.rb +21 -0
  155. data/lib/nfe/generated/nf_consumidor_v2/buyer_resource.rb +30 -0
  156. data/lib/nfe/generated/nf_consumidor_v2/card_resource.rb +25 -0
  157. data/lib/nfe/generated/nf_consumidor_v2/cbstax_resource.rb +24 -0
  158. data/lib/nfe/generated/nf_consumidor_v2/cbstotals_resource.rb +24 -0
  159. data/lib/nfe/generated/nf_consumidor_v2/cideresource.rb +22 -0
  160. data/lib/nfe/generated/nf_consumidor_v2/city_resource.rb +21 -0
  161. data/lib/nfe/generated/nf_consumidor_v2/cofins_tax_resource.rb +25 -0
  162. data/lib/nfe/generated/nf_consumidor_v2/competence_adjustment_resource.rb +22 -0
  163. data/lib/nfe/generated/nf_consumidor_v2/consumer_invoice_request.rb +46 -0
  164. data/lib/nfe/generated/nf_consumidor_v2/consumer_invoices_resource.rb +21 -0
  165. data/lib/nfe/generated/nf_consumidor_v2/consumer_presence_type.rb +20 -0
  166. data/lib/nfe/generated/nf_consumidor_v2/consumer_type.rb +16 -0
  167. data/lib/nfe/generated/nf_consumidor_v2/contingency_details.rb +22 -0
  168. data/lib/nfe/generated/nf_consumidor_v2/credit_reversal_resource.rb +21 -0
  169. data/lib/nfe/generated/nf_consumidor_v2/credit_reversal_totals_resource.rb +21 -0
  170. data/lib/nfe/generated/nf_consumidor_v2/credit_transfer_tax_resource.rb +21 -0
  171. data/lib/nfe/generated/nf_consumidor_v2/credit_type.rb +19 -0
  172. data/lib/nfe/generated/nf_consumidor_v2/debit_type.rb +22 -0
  173. data/lib/nfe/generated/nf_consumidor_v2/deferment_tax_resource.rb +21 -0
  174. data/lib/nfe/generated/nf_consumidor_v2/delivery_information_resource.rb +27 -0
  175. data/lib/nfe/generated/nf_consumidor_v2/destination.rb +18 -0
  176. data/lib/nfe/generated/nf_consumidor_v2/disablement_resource.rb +25 -0
  177. data/lib/nfe/generated/nf_consumidor_v2/document_electronic_invoice_resource.rb +20 -0
  178. data/lib/nfe/generated/nf_consumidor_v2/document_invoice_reference_resource.rb +25 -0
  179. data/lib/nfe/generated/nf_consumidor_v2/duduction_indicator.rb +16 -0
  180. data/lib/nfe/generated/nf_consumidor_v2/duplicate_resource.rb +22 -0
  181. data/lib/nfe/generated/nf_consumidor_v2/economic_activity_resource.rb +21 -0
  182. data/lib/nfe/generated/nf_consumidor_v2/economic_activity_type.rb +16 -0
  183. data/lib/nfe/generated/nf_consumidor_v2/environment_type.rb +17 -0
  184. data/lib/nfe/generated/nf_consumidor_v2/error_resource.rb +21 -0
  185. data/lib/nfe/generated/nf_consumidor_v2/errors_resource.rb +20 -0
  186. data/lib/nfe/generated/nf_consumidor_v2/exempt_reason.rb +17 -0
  187. data/lib/nfe/generated/nf_consumidor_v2/export_detail_resource.rb +21 -0
  188. data/lib/nfe/generated/nf_consumidor_v2/export_hint_resource.rb +22 -0
  189. data/lib/nfe/generated/nf_consumidor_v2/export_resource.rb +22 -0
  190. data/lib/nfe/generated/nf_consumidor_v2/file_resource.rb +20 -0
  191. data/lib/nfe/generated/nf_consumidor_v2/flag_card.rb +43 -0
  192. data/lib/nfe/generated/nf_consumidor_v2/fuel_origin_resource.rb +22 -0
  193. data/lib/nfe/generated/nf_consumidor_v2/fuel_resource.rb +32 -0
  194. data/lib/nfe/generated/nf_consumidor_v2/government_purchase_entity_type.rb +18 -0
  195. data/lib/nfe/generated/nf_consumidor_v2/government_purchase_operation_type.rb +21 -0
  196. data/lib/nfe/generated/nf_consumidor_v2/government_purchase_resource.rb +22 -0
  197. data/lib/nfe/generated/nf_consumidor_v2/government_purchase_tax_resource.rb +25 -0
  198. data/lib/nfe/generated/nf_consumidor_v2/ibs_zfm_presumed_credit_classification.rb +19 -0
  199. data/lib/nfe/generated/nf_consumidor_v2/ibscbstax_resource.rb +35 -0
  200. data/lib/nfe/generated/nf_consumidor_v2/ibscbstotals_resource.rb +24 -0
  201. data/lib/nfe/generated/nf_consumidor_v2/ibsmunicipal_tax_resource.rb +24 -0
  202. data/lib/nfe/generated/nf_consumidor_v2/ibsmunicipal_totals_resource.rb +22 -0
  203. data/lib/nfe/generated/nf_consumidor_v2/ibsstate_tax_resource.rb +24 -0
  204. data/lib/nfe/generated/nf_consumidor_v2/ibsstate_totals_resource.rb +22 -0
  205. data/lib/nfe/generated/nf_consumidor_v2/ibstotals_resource.rb +24 -0
  206. data/lib/nfe/generated/nf_consumidor_v2/icms_tax_resource.rb +66 -0
  207. data/lib/nfe/generated/nf_consumidor_v2/icmstotal_resource.rb +48 -0
  208. data/lib/nfe/generated/nf_consumidor_v2/icmsufdestination_tax_resource.rb +28 -0
  209. data/lib/nfe/generated/nf_consumidor_v2/iitax_resource.rb +24 -0
  210. data/lib/nfe/generated/nf_consumidor_v2/import_declaration_resource.rb +31 -0
  211. data/lib/nfe/generated/nf_consumidor_v2/integration_payment_type.rb +16 -0
  212. data/lib/nfe/generated/nf_consumidor_v2/intermediate_resource.rb +21 -0
  213. data/lib/nfe/generated/nf_consumidor_v2/intermediation_type.rb +18 -0
  214. data/lib/nfe/generated/nf_consumidor_v2/international_transport_type.rb +27 -0
  215. data/lib/nfe/generated/nf_consumidor_v2/invoice_events_resource.rb +24 -0
  216. data/lib/nfe/generated/nf_consumidor_v2/invoice_events_resource_base.rb +21 -0
  217. data/lib/nfe/generated/nf_consumidor_v2/invoice_item_resource.rb +56 -0
  218. data/lib/nfe/generated/nf_consumidor_v2/invoice_item_tax_resource.rb +29 -0
  219. data/lib/nfe/generated/nf_consumidor_v2/invoice_items_resource.rb +24 -0
  220. data/lib/nfe/generated/nf_consumidor_v2/invoice_resource.rb +44 -0
  221. data/lib/nfe/generated/nf_consumidor_v2/invoice_status.rb +23 -0
  222. data/lib/nfe/generated/nf_consumidor_v2/invoice_without_events_resource.rb +43 -0
  223. data/lib/nfe/generated/nf_consumidor_v2/ipitax_resource.rb +30 -0
  224. data/lib/nfe/generated/nf_consumidor_v2/issqntotal_resource.rb +31 -0
  225. data/lib/nfe/generated/nf_consumidor_v2/issuer_from_request_resource.rb +20 -0
  226. data/lib/nfe/generated/nf_consumidor_v2/issuer_resource.rb +37 -0
  227. data/lib/nfe/generated/nf_consumidor_v2/istax_resource.rb +27 -0
  228. data/lib/nfe/generated/nf_consumidor_v2/istotals_resource.rb +20 -0
  229. data/lib/nfe/generated/nf_consumidor_v2/legal_nature.rb +52 -0
  230. data/lib/nfe/generated/nf_consumidor_v2/monophase_cbstotals_resource.rb +22 -0
  231. data/lib/nfe/generated/nf_consumidor_v2/monophase_deferment_tax_resource.rb +23 -0
  232. data/lib/nfe/generated/nf_consumidor_v2/monophase_ibscbstax_resource.rb +25 -0
  233. data/lib/nfe/generated/nf_consumidor_v2/monophase_ibstotals_resource.rb +22 -0
  234. data/lib/nfe/generated/nf_consumidor_v2/monophase_previously_withheld_tax_resource.rb +24 -0
  235. data/lib/nfe/generated/nf_consumidor_v2/monophase_standard_tax_resource.rb +24 -0
  236. data/lib/nfe/generated/nf_consumidor_v2/monophase_totals_resource.rb +21 -0
  237. data/lib/nfe/generated/nf_consumidor_v2/monophase_withholding_tax_resource.rb +24 -0
  238. data/lib/nfe/generated/nf_consumidor_v2/operation_type.rb +16 -0
  239. data/lib/nfe/generated/nf_consumidor_v2/operational_presumed_credit_resource.rb +23 -0
  240. data/lib/nfe/generated/nf_consumidor_v2/payment_detail_resource.rb +27 -0
  241. data/lib/nfe/generated/nf_consumidor_v2/payment_method.rb +33 -0
  242. data/lib/nfe/generated/nf_consumidor_v2/payment_resource.rb +21 -0
  243. data/lib/nfe/generated/nf_consumidor_v2/payment_type.rb +16 -0
  244. data/lib/nfe/generated/nf_consumidor_v2/person_type.rb +19 -0
  245. data/lib/nfe/generated/nf_consumidor_v2/pistax_resource.rb +25 -0
  246. data/lib/nfe/generated/nf_consumidor_v2/presumed_credit_classification_code.rb +19 -0
  247. data/lib/nfe/generated/nf_consumidor_v2/presumed_credit_details_resource.rb +22 -0
  248. data/lib/nfe/generated/nf_consumidor_v2/presumed_credit_resource.rb +22 -0
  249. data/lib/nfe/generated/nf_consumidor_v2/print_type.rb +20 -0
  250. data/lib/nfe/generated/nf_consumidor_v2/pump_resource.rb +25 -0
  251. data/lib/nfe/generated/nf_consumidor_v2/purpose_type.rb +19 -0
  252. data/lib/nfe/generated/nf_consumidor_v2/reboque_resource.rb +24 -0
  253. data/lib/nfe/generated/nf_consumidor_v2/receiver_state_tax_indicator.rb +18 -0
  254. data/lib/nfe/generated/nf_consumidor_v2/reduction_tax_resource.rb +21 -0
  255. data/lib/nfe/generated/nf_consumidor_v2/referenced_dfe_resource.rb +21 -0
  256. data/lib/nfe/generated/nf_consumidor_v2/referenced_process_resource.rb +22 -0
  257. data/lib/nfe/generated/nf_consumidor_v2/regular_taxation_resource.rb +27 -0
  258. data/lib/nfe/generated/nf_consumidor_v2/request_cancellation_resource.rb +23 -0
  259. data/lib/nfe/generated/nf_consumidor_v2/returned_tax_resource.rb +20 -0
  260. data/lib/nfe/generated/nf_consumidor_v2/shipping_modality.rb +20 -0
  261. data/lib/nfe/generated/nf_consumidor_v2/special_tax_regime.rb +22 -0
  262. data/lib/nfe/generated/nf_consumidor_v2/state_code.rb +43 -0
  263. data/lib/nfe/generated/nf_consumidor_v2/state_tax_processing_authorizer.rb +16 -0
  264. data/lib/nfe/generated/nf_consumidor_v2/tax_coupon_information_resource.rb +22 -0
  265. data/lib/nfe/generated/nf_consumidor_v2/tax_determination_resource.rb +24 -0
  266. data/lib/nfe/generated/nf_consumidor_v2/tax_documents_reference_resource.rb +22 -0
  267. data/lib/nfe/generated/nf_consumidor_v2/tax_regime.rb +21 -0
  268. data/lib/nfe/generated/nf_consumidor_v2/taxpayer_comments_resource.rb +21 -0
  269. data/lib/nfe/generated/nf_consumidor_v2/total_resource.rb +25 -0
  270. data/lib/nfe/generated/nf_consumidor_v2/totals_withholdings.rb +26 -0
  271. data/lib/nfe/generated/nf_consumidor_v2/transport_group_resource.rb +28 -0
  272. data/lib/nfe/generated/nf_consumidor_v2/transport_information_resource.rb +26 -0
  273. data/lib/nfe/generated/nf_consumidor_v2/transport_rate_resource.rb +25 -0
  274. data/lib/nfe/generated/nf_consumidor_v2/transport_vehicle_resource.rb +22 -0
  275. data/lib/nfe/generated/nf_consumidor_v2/vehicle_detail_resource.rb +43 -0
  276. data/lib/nfe/generated/nf_consumidor_v2/volume_resource.rb +25 -0
  277. data/lib/nfe/generated/nf_consumidor_v2/withdrawal_information_resource.rb +27 -0
  278. data/lib/nfe/generated/nf_consumidor_v2/zfm_presumed_credit_resource.rb +21 -0
  279. data/lib/nfe/generated/nf_produto_v2/activity_resource.rb +22 -0
  280. data/lib/nfe/generated/nf_produto_v2/addition_resource.rb +23 -0
  281. data/lib/nfe/generated/nf_produto_v2/additional_information_resource.rb +28 -0
  282. data/lib/nfe/generated/nf_produto_v2/address_resource.rb +28 -0
  283. data/lib/nfe/generated/nf_produto_v2/authorization_resource.rb +22 -0
  284. data/lib/nfe/generated/nf_produto_v2/bill_resource.rb +23 -0
  285. data/lib/nfe/generated/nf_produto_v2/billing_resource.rb +21 -0
  286. data/lib/nfe/generated/nf_produto_v2/buyer_resource.rb +30 -0
  287. data/lib/nfe/generated/nf_produto_v2/card_resource.rb +25 -0
  288. data/lib/nfe/generated/nf_produto_v2/cideresource.rb +22 -0
  289. data/lib/nfe/generated/nf_produto_v2/city_resource.rb +21 -0
  290. data/lib/nfe/generated/nf_produto_v2/cofins_tax_resource.rb +25 -0
  291. data/lib/nfe/generated/nf_produto_v2/consumer_presence_type.rb +20 -0
  292. data/lib/nfe/generated/nf_produto_v2/consumer_type.rb +16 -0
  293. data/lib/nfe/generated/nf_produto_v2/contingency_details.rb +22 -0
  294. data/lib/nfe/generated/nf_produto_v2/delivery_information_resource.rb +27 -0
  295. data/lib/nfe/generated/nf_produto_v2/destination.rb +18 -0
  296. data/lib/nfe/generated/nf_produto_v2/disablement_resource.rb +25 -0
  297. data/lib/nfe/generated/nf_produto_v2/document_electronic_invoice_resource.rb +20 -0
  298. data/lib/nfe/generated/nf_produto_v2/document_invoice_reference_resource.rb +25 -0
  299. data/lib/nfe/generated/nf_produto_v2/duduction_indicator.rb +16 -0
  300. data/lib/nfe/generated/nf_produto_v2/duplicate_resource.rb +22 -0
  301. data/lib/nfe/generated/nf_produto_v2/economic_activity_resource.rb +21 -0
  302. data/lib/nfe/generated/nf_produto_v2/economic_activity_type.rb +16 -0
  303. data/lib/nfe/generated/nf_produto_v2/environment_type.rb +17 -0
  304. data/lib/nfe/generated/nf_produto_v2/error_resource.rb +21 -0
  305. data/lib/nfe/generated/nf_produto_v2/errors_resource.rb +20 -0
  306. data/lib/nfe/generated/nf_produto_v2/exempt_reason.rb +17 -0
  307. data/lib/nfe/generated/nf_produto_v2/export_detail_resource.rb +21 -0
  308. data/lib/nfe/generated/nf_produto_v2/export_hint_resource.rb +22 -0
  309. data/lib/nfe/generated/nf_produto_v2/export_resource.rb +22 -0
  310. data/lib/nfe/generated/nf_produto_v2/file_resource.rb +20 -0
  311. data/lib/nfe/generated/nf_produto_v2/flag_card.rb +43 -0
  312. data/lib/nfe/generated/nf_produto_v2/fuel_origin_resource.rb +22 -0
  313. data/lib/nfe/generated/nf_produto_v2/fuel_resource.rb +32 -0
  314. data/lib/nfe/generated/nf_produto_v2/icms_tax_resource.rb +65 -0
  315. data/lib/nfe/generated/nf_produto_v2/icmstotal.rb +48 -0
  316. data/lib/nfe/generated/nf_produto_v2/icmstotal_resource.rb +48 -0
  317. data/lib/nfe/generated/nf_produto_v2/icmsufdestination_tax_resource.rb +28 -0
  318. data/lib/nfe/generated/nf_produto_v2/iitax_resource.rb +24 -0
  319. data/lib/nfe/generated/nf_produto_v2/import_declaration_resource.rb +30 -0
  320. data/lib/nfe/generated/nf_produto_v2/integration_payment_type.rb +16 -0
  321. data/lib/nfe/generated/nf_produto_v2/intermediate_resource.rb +21 -0
  322. data/lib/nfe/generated/nf_produto_v2/intermediation_type.rb +18 -0
  323. data/lib/nfe/generated/nf_produto_v2/international_transport_type.rb +27 -0
  324. data/lib/nfe/generated/nf_produto_v2/invoice_events_resource_base.rb +21 -0
  325. data/lib/nfe/generated/nf_produto_v2/invoice_item_resource.rb +51 -0
  326. data/lib/nfe/generated/nf_produto_v2/invoice_item_tax_resource.rb +26 -0
  327. data/lib/nfe/generated/nf_produto_v2/invoice_items_resource.rb +24 -0
  328. data/lib/nfe/generated/nf_produto_v2/invoice_resource.rb +44 -0
  329. data/lib/nfe/generated/nf_produto_v2/invoice_status.rb +23 -0
  330. data/lib/nfe/generated/nf_produto_v2/invoice_without_events_resource.rb +43 -0
  331. data/lib/nfe/generated/nf_produto_v2/ipitax_resource.rb +30 -0
  332. data/lib/nfe/generated/nf_produto_v2/issqntotal.rb +31 -0
  333. data/lib/nfe/generated/nf_produto_v2/issqntotal_resource.rb +31 -0
  334. data/lib/nfe/generated/nf_produto_v2/issuer_from_request_resource.rb +20 -0
  335. data/lib/nfe/generated/nf_produto_v2/issuer_resource.rb +37 -0
  336. data/lib/nfe/generated/nf_produto_v2/legal_nature.rb +52 -0
  337. data/lib/nfe/generated/nf_produto_v2/operation_type.rb +16 -0
  338. data/lib/nfe/generated/nf_produto_v2/payment_detail_resource.rb +27 -0
  339. data/lib/nfe/generated/nf_produto_v2/payment_method.rb +30 -0
  340. data/lib/nfe/generated/nf_produto_v2/payment_resource.rb +21 -0
  341. data/lib/nfe/generated/nf_produto_v2/payment_type.rb +16 -0
  342. data/lib/nfe/generated/nf_produto_v2/person_type.rb +19 -0
  343. data/lib/nfe/generated/nf_produto_v2/pistax_resource.rb +25 -0
  344. data/lib/nfe/generated/nf_produto_v2/print_type.rb +20 -0
  345. data/lib/nfe/generated/nf_produto_v2/product_invoice_events_resource.rb +24 -0
  346. data/lib/nfe/generated/nf_produto_v2/product_invoice_queue_issue_resource.rb +44 -0
  347. data/lib/nfe/generated/nf_produto_v2/product_invoices_resource.rb +21 -0
  348. data/lib/nfe/generated/nf_produto_v2/pump_resource.rb +25 -0
  349. data/lib/nfe/generated/nf_produto_v2/purpose_type.rb +19 -0
  350. data/lib/nfe/generated/nf_produto_v2/queue_event_resource.rb +20 -0
  351. data/lib/nfe/generated/nf_produto_v2/reboque_resource.rb +24 -0
  352. data/lib/nfe/generated/nf_produto_v2/receiver_state_tax_indicator.rb +18 -0
  353. data/lib/nfe/generated/nf_produto_v2/referenced_process_resource.rb +22 -0
  354. data/lib/nfe/generated/nf_produto_v2/request_cancellation_resource.rb +23 -0
  355. data/lib/nfe/generated/nf_produto_v2/shipping_modality.rb +20 -0
  356. data/lib/nfe/generated/nf_produto_v2/special_tax_regime.rb +22 -0
  357. data/lib/nfe/generated/nf_produto_v2/state_code.rb +43 -0
  358. data/lib/nfe/generated/nf_produto_v2/state_tax_processing_authorizer.rb +16 -0
  359. data/lib/nfe/generated/nf_produto_v2/tax_coupon_information_resource.rb +22 -0
  360. data/lib/nfe/generated/nf_produto_v2/tax_determination_resource.rb +24 -0
  361. data/lib/nfe/generated/nf_produto_v2/tax_documents_reference_resource.rb +22 -0
  362. data/lib/nfe/generated/nf_produto_v2/tax_regime.rb +21 -0
  363. data/lib/nfe/generated/nf_produto_v2/taxpayer_comments_resource.rb +21 -0
  364. data/lib/nfe/generated/nf_produto_v2/total.rb +21 -0
  365. data/lib/nfe/generated/nf_produto_v2/total_resource.rb +21 -0
  366. data/lib/nfe/generated/nf_produto_v2/transport_group_resource.rb +28 -0
  367. data/lib/nfe/generated/nf_produto_v2/transport_information_resource.rb +26 -0
  368. data/lib/nfe/generated/nf_produto_v2/transport_rate_resource.rb +25 -0
  369. data/lib/nfe/generated/nf_produto_v2/transport_vehicle_resource.rb +22 -0
  370. data/lib/nfe/generated/nf_produto_v2/vehicle_detail_resource.rb +43 -0
  371. data/lib/nfe/generated/nf_produto_v2/volume_resource.rb +25 -0
  372. data/lib/nfe/generated/nf_produto_v2/withdrawal_information_resource.rb +27 -0
  373. data/lib/nfe/generated/nfeio/batch_process_response.rb +25 -0
  374. data/lib/nfe/generated/nfeio/environment.rb +16 -0
  375. data/lib/nfe/generated/nfeio/file_parsing_options_request.rb +21 -0
  376. data/lib/nfe/generated/nfeio/guid_pagination_cursor.rb +20 -0
  377. data/lib/nfe/generated/nfeio/input_info_request.rb +22 -0
  378. data/lib/nfe/generated/nfeio/inputs_response.rb +21 -0
  379. data/lib/nfe/generated/nfeio/out_put_link_response.rb +21 -0
  380. data/lib/nfe/generated/nfeio/out_put_response.rb +22 -0
  381. data/lib/nfe/generated/nfeio/output_type.rb +17 -0
  382. data/lib/nfe/generated/nfeio/parsing_type.rb +16 -0
  383. data/lib/nfe/generated/nfeio/problem_details.rb +24 -0
  384. data/lib/nfe/generated/nfeio/processing_batch_detail_response.rb +30 -0
  385. data/lib/nfe/generated/nfeio/processing_batch_summary_response.rb +32 -0
  386. data/lib/nfe/generated/nfeio/processing_batch_summary_response_page.rb +24 -0
  387. data/lib/nfe/generated/nfeio/processing_batches_response.rb +23 -0
  388. data/lib/nfe/generated/nfeio/processing_metrics_response.rb +22 -0
  389. data/lib/nfe/generated/nfeio/resource_info.rb +22 -0
  390. data/lib/nfe/generated/nfeio/resource_info_request.rb +22 -0
  391. data/lib/nfe/generated/nfeio/sort_direction.rb +16 -0
  392. data/lib/nfe/generated/nfeio/sort_order.rb +16 -0
  393. data/lib/nfe/generated/nfeio/start_processing_job_request.rb +24 -0
  394. data/lib/nfe/generated/nfeio/status_process.rb +21 -0
  395. data/lib/nfe/generated/nfeio/zip_request.rb +22 -0
  396. data/lib/nfe/generated/product_invoice_rtc_v1/activity_resource.rb +22 -0
  397. data/lib/nfe/generated/product_invoice_rtc_v1/addition_resource.rb +23 -0
  398. data/lib/nfe/generated/product_invoice_rtc_v1/additional_information_resource.rb +29 -0
  399. data/lib/nfe/generated/product_invoice_rtc_v1/address_resource.rb +28 -0
  400. data/lib/nfe/generated/product_invoice_rtc_v1/advance_payment_item_resource.rb +20 -0
  401. data/lib/nfe/generated/product_invoice_rtc_v1/authorization_resource.rb +23 -0
  402. data/lib/nfe/generated/product_invoice_rtc_v1/bill_resource.rb +23 -0
  403. data/lib/nfe/generated/product_invoice_rtc_v1/billing_resource.rb +21 -0
  404. data/lib/nfe/generated/product_invoice_rtc_v1/buyer_resource.rb +30 -0
  405. data/lib/nfe/generated/product_invoice_rtc_v1/card_resource.rb +25 -0
  406. data/lib/nfe/generated/product_invoice_rtc_v1/cbstax_resource.rb +24 -0
  407. data/lib/nfe/generated/product_invoice_rtc_v1/cbstotals_resource.rb +24 -0
  408. data/lib/nfe/generated/product_invoice_rtc_v1/cideresource.rb +22 -0
  409. data/lib/nfe/generated/product_invoice_rtc_v1/city_resource.rb +21 -0
  410. data/lib/nfe/generated/product_invoice_rtc_v1/cofins_tax_resource.rb +25 -0
  411. data/lib/nfe/generated/product_invoice_rtc_v1/competence_adjustment_resource.rb +22 -0
  412. data/lib/nfe/generated/product_invoice_rtc_v1/consumer_presence_type.rb +20 -0
  413. data/lib/nfe/generated/product_invoice_rtc_v1/consumer_type.rb +16 -0
  414. data/lib/nfe/generated/product_invoice_rtc_v1/contingency_details.rb +22 -0
  415. data/lib/nfe/generated/product_invoice_rtc_v1/credit_reversal_resource.rb +21 -0
  416. data/lib/nfe/generated/product_invoice_rtc_v1/credit_reversal_totals_resource.rb +21 -0
  417. data/lib/nfe/generated/product_invoice_rtc_v1/credit_transfer_tax_resource.rb +21 -0
  418. data/lib/nfe/generated/product_invoice_rtc_v1/credit_type.rb +19 -0
  419. data/lib/nfe/generated/product_invoice_rtc_v1/debit_type.rb +22 -0
  420. data/lib/nfe/generated/product_invoice_rtc_v1/deferment_tax_resource.rb +21 -0
  421. data/lib/nfe/generated/product_invoice_rtc_v1/delivery_information_resource.rb +27 -0
  422. data/lib/nfe/generated/product_invoice_rtc_v1/destination.rb +18 -0
  423. data/lib/nfe/generated/product_invoice_rtc_v1/disablement_resource.rb +25 -0
  424. data/lib/nfe/generated/product_invoice_rtc_v1/document_electronic_invoice_resource.rb +20 -0
  425. data/lib/nfe/generated/product_invoice_rtc_v1/document_invoice_reference_resource.rb +25 -0
  426. data/lib/nfe/generated/product_invoice_rtc_v1/duduction_indicator.rb +16 -0
  427. data/lib/nfe/generated/product_invoice_rtc_v1/duplicate_resource.rb +22 -0
  428. data/lib/nfe/generated/product_invoice_rtc_v1/economic_activity_resource.rb +21 -0
  429. data/lib/nfe/generated/product_invoice_rtc_v1/economic_activity_type.rb +16 -0
  430. data/lib/nfe/generated/product_invoice_rtc_v1/environment_type.rb +17 -0
  431. data/lib/nfe/generated/product_invoice_rtc_v1/error_resource.rb +21 -0
  432. data/lib/nfe/generated/product_invoice_rtc_v1/errors_resource.rb +20 -0
  433. data/lib/nfe/generated/product_invoice_rtc_v1/exempt_reason.rb +17 -0
  434. data/lib/nfe/generated/product_invoice_rtc_v1/export_detail_resource.rb +21 -0
  435. data/lib/nfe/generated/product_invoice_rtc_v1/export_hint_resource.rb +22 -0
  436. data/lib/nfe/generated/product_invoice_rtc_v1/export_resource.rb +22 -0
  437. data/lib/nfe/generated/product_invoice_rtc_v1/file_resource.rb +20 -0
  438. data/lib/nfe/generated/product_invoice_rtc_v1/flag_card.rb +43 -0
  439. data/lib/nfe/generated/product_invoice_rtc_v1/fuel_origin_resource.rb +22 -0
  440. data/lib/nfe/generated/product_invoice_rtc_v1/fuel_resource.rb +32 -0
  441. data/lib/nfe/generated/product_invoice_rtc_v1/government_purchase_entity_type.rb +18 -0
  442. data/lib/nfe/generated/product_invoice_rtc_v1/government_purchase_operation_type.rb +21 -0
  443. data/lib/nfe/generated/product_invoice_rtc_v1/government_purchase_resource.rb +22 -0
  444. data/lib/nfe/generated/product_invoice_rtc_v1/government_purchase_tax_resource.rb +25 -0
  445. data/lib/nfe/generated/product_invoice_rtc_v1/ibs_zfm_presumed_credit_classification.rb +19 -0
  446. data/lib/nfe/generated/product_invoice_rtc_v1/ibscbstax_resource.rb +35 -0
  447. data/lib/nfe/generated/product_invoice_rtc_v1/ibscbstotals_resource.rb +24 -0
  448. data/lib/nfe/generated/product_invoice_rtc_v1/ibsmunicipal_tax_resource.rb +24 -0
  449. data/lib/nfe/generated/product_invoice_rtc_v1/ibsmunicipal_totals_resource.rb +22 -0
  450. data/lib/nfe/generated/product_invoice_rtc_v1/ibsstate_tax_resource.rb +24 -0
  451. data/lib/nfe/generated/product_invoice_rtc_v1/ibsstate_totals_resource.rb +22 -0
  452. data/lib/nfe/generated/product_invoice_rtc_v1/ibstotals_resource.rb +24 -0
  453. data/lib/nfe/generated/product_invoice_rtc_v1/icms_tax_resource.rb +66 -0
  454. data/lib/nfe/generated/product_invoice_rtc_v1/icmstotal.rb +48 -0
  455. data/lib/nfe/generated/product_invoice_rtc_v1/icmstotal_resource.rb +48 -0
  456. data/lib/nfe/generated/product_invoice_rtc_v1/icmsufdestination_tax_resource.rb +28 -0
  457. data/lib/nfe/generated/product_invoice_rtc_v1/iitax_resource.rb +24 -0
  458. data/lib/nfe/generated/product_invoice_rtc_v1/import_declaration_resource.rb +31 -0
  459. data/lib/nfe/generated/product_invoice_rtc_v1/integration_payment_type.rb +16 -0
  460. data/lib/nfe/generated/product_invoice_rtc_v1/intermediate_resource.rb +21 -0
  461. data/lib/nfe/generated/product_invoice_rtc_v1/intermediation_type.rb +18 -0
  462. data/lib/nfe/generated/product_invoice_rtc_v1/international_transport_type.rb +27 -0
  463. data/lib/nfe/generated/product_invoice_rtc_v1/invoice_events_resource.rb +24 -0
  464. data/lib/nfe/generated/product_invoice_rtc_v1/invoice_events_resource_base.rb +21 -0
  465. data/lib/nfe/generated/product_invoice_rtc_v1/invoice_item_resource.rb +56 -0
  466. data/lib/nfe/generated/product_invoice_rtc_v1/invoice_item_tax_resource.rb +29 -0
  467. data/lib/nfe/generated/product_invoice_rtc_v1/invoice_items_resource.rb +24 -0
  468. data/lib/nfe/generated/product_invoice_rtc_v1/invoice_resource.rb +44 -0
  469. data/lib/nfe/generated/product_invoice_rtc_v1/invoice_status.rb +23 -0
  470. data/lib/nfe/generated/product_invoice_rtc_v1/invoice_without_events_resource.rb +43 -0
  471. data/lib/nfe/generated/product_invoice_rtc_v1/ipitax_resource.rb +30 -0
  472. data/lib/nfe/generated/product_invoice_rtc_v1/issqntotal.rb +31 -0
  473. data/lib/nfe/generated/product_invoice_rtc_v1/issqntotal_resource.rb +31 -0
  474. data/lib/nfe/generated/product_invoice_rtc_v1/issuer_from_request_resource.rb +20 -0
  475. data/lib/nfe/generated/product_invoice_rtc_v1/issuer_resource.rb +37 -0
  476. data/lib/nfe/generated/product_invoice_rtc_v1/istax_resource.rb +27 -0
  477. data/lib/nfe/generated/product_invoice_rtc_v1/istotals_resource.rb +20 -0
  478. data/lib/nfe/generated/product_invoice_rtc_v1/legal_nature.rb +52 -0
  479. data/lib/nfe/generated/product_invoice_rtc_v1/monophase_cbstotals_resource.rb +22 -0
  480. data/lib/nfe/generated/product_invoice_rtc_v1/monophase_deferment_tax_resource.rb +23 -0
  481. data/lib/nfe/generated/product_invoice_rtc_v1/monophase_ibscbstax_resource.rb +25 -0
  482. data/lib/nfe/generated/product_invoice_rtc_v1/monophase_ibstotals_resource.rb +22 -0
  483. data/lib/nfe/generated/product_invoice_rtc_v1/monophase_previously_withheld_tax_resource.rb +24 -0
  484. data/lib/nfe/generated/product_invoice_rtc_v1/monophase_standard_tax_resource.rb +24 -0
  485. data/lib/nfe/generated/product_invoice_rtc_v1/monophase_totals_resource.rb +21 -0
  486. data/lib/nfe/generated/product_invoice_rtc_v1/monophase_withholding_tax_resource.rb +24 -0
  487. data/lib/nfe/generated/product_invoice_rtc_v1/operation_type.rb +16 -0
  488. data/lib/nfe/generated/product_invoice_rtc_v1/operational_presumed_credit_resource.rb +23 -0
  489. data/lib/nfe/generated/product_invoice_rtc_v1/payment_detail_resource.rb +27 -0
  490. data/lib/nfe/generated/product_invoice_rtc_v1/payment_method.rb +34 -0
  491. data/lib/nfe/generated/product_invoice_rtc_v1/payment_resource.rb +21 -0
  492. data/lib/nfe/generated/product_invoice_rtc_v1/payment_type.rb +16 -0
  493. data/lib/nfe/generated/product_invoice_rtc_v1/person_type.rb +19 -0
  494. data/lib/nfe/generated/product_invoice_rtc_v1/pistax_resource.rb +25 -0
  495. data/lib/nfe/generated/product_invoice_rtc_v1/presumed_credit_classification_code.rb +19 -0
  496. data/lib/nfe/generated/product_invoice_rtc_v1/presumed_credit_details_resource.rb +22 -0
  497. data/lib/nfe/generated/product_invoice_rtc_v1/presumed_credit_resource.rb +22 -0
  498. data/lib/nfe/generated/product_invoice_rtc_v1/print_type.rb +20 -0
  499. data/lib/nfe/generated/product_invoice_rtc_v1/product_invoice_request.rb +51 -0
  500. data/lib/nfe/generated/product_invoice_rtc_v1/product_invoices_resource.rb +21 -0
  501. data/lib/nfe/generated/product_invoice_rtc_v1/pump_resource.rb +25 -0
  502. data/lib/nfe/generated/product_invoice_rtc_v1/purchase_information_resource.rb +22 -0
  503. data/lib/nfe/generated/product_invoice_rtc_v1/purpose_type.rb +19 -0
  504. data/lib/nfe/generated/product_invoice_rtc_v1/queue_event_resource.rb +20 -0
  505. data/lib/nfe/generated/product_invoice_rtc_v1/reboque_resource.rb +24 -0
  506. data/lib/nfe/generated/product_invoice_rtc_v1/receiver_state_tax_indicator.rb +18 -0
  507. data/lib/nfe/generated/product_invoice_rtc_v1/reduction_tax_resource.rb +21 -0
  508. data/lib/nfe/generated/product_invoice_rtc_v1/referenced_dfe_resource.rb +21 -0
  509. data/lib/nfe/generated/product_invoice_rtc_v1/referenced_process_resource.rb +22 -0
  510. data/lib/nfe/generated/product_invoice_rtc_v1/regular_taxation_resource.rb +27 -0
  511. data/lib/nfe/generated/product_invoice_rtc_v1/request_cancellation_resource.rb +23 -0
  512. data/lib/nfe/generated/product_invoice_rtc_v1/returned_tax_resource.rb +20 -0
  513. data/lib/nfe/generated/product_invoice_rtc_v1/shipping_modality.rb +20 -0
  514. data/lib/nfe/generated/product_invoice_rtc_v1/special_tax_regime.rb +21 -0
  515. data/lib/nfe/generated/product_invoice_rtc_v1/state_code.rb +43 -0
  516. data/lib/nfe/generated/product_invoice_rtc_v1/state_tax_processing_authorizer.rb +16 -0
  517. data/lib/nfe/generated/product_invoice_rtc_v1/tax_coupon_information_resource.rb +22 -0
  518. data/lib/nfe/generated/product_invoice_rtc_v1/tax_determination_resource.rb +24 -0
  519. data/lib/nfe/generated/product_invoice_rtc_v1/tax_documents_reference_resource.rb +22 -0
  520. data/lib/nfe/generated/product_invoice_rtc_v1/tax_regime.rb +21 -0
  521. data/lib/nfe/generated/product_invoice_rtc_v1/taxpayer_comments_resource.rb +21 -0
  522. data/lib/nfe/generated/product_invoice_rtc_v1/total.rb +25 -0
  523. data/lib/nfe/generated/product_invoice_rtc_v1/total_resource.rb +21 -0
  524. data/lib/nfe/generated/product_invoice_rtc_v1/totals_withholdings.rb +26 -0
  525. data/lib/nfe/generated/product_invoice_rtc_v1/transport_group_resource.rb +28 -0
  526. data/lib/nfe/generated/product_invoice_rtc_v1/transport_information_resource.rb +26 -0
  527. data/lib/nfe/generated/product_invoice_rtc_v1/transport_rate_resource.rb +25 -0
  528. data/lib/nfe/generated/product_invoice_rtc_v1/transport_vehicle_resource.rb +22 -0
  529. data/lib/nfe/generated/product_invoice_rtc_v1/vehicle_detail_resource.rb +43 -0
  530. data/lib/nfe/generated/product_invoice_rtc_v1/volume_resource.rb +25 -0
  531. data/lib/nfe/generated/product_invoice_rtc_v1/withdrawal_information_resource.rb +27 -0
  532. data/lib/nfe/generated/product_invoice_rtc_v1/zfm_presumed_credit_resource.rb +21 -0
  533. data/lib/nfe/generated/product_register_pt_br_v1/cofins_tax_group.rb +21 -0
  534. data/lib/nfe/generated/product_register_pt_br_v1/custom_tax_scenario.rb +24 -0
  535. data/lib/nfe/generated/product_register_pt_br_v1/icms_tax_group.rb +37 -0
  536. data/lib/nfe/generated/product_register_pt_br_v1/inter_state_tax_group.rb +23 -0
  537. data/lib/nfe/generated/product_register_pt_br_v1/intra_state_tax_group.rb +23 -0
  538. data/lib/nfe/generated/product_register_pt_br_v1/issuer_tax_profile_enum.rb +21 -0
  539. data/lib/nfe/generated/product_register_pt_br_v1/pis_tax_group.rb +21 -0
  540. data/lib/nfe/generated/product_register_pt_br_v1/product.rb +29 -0
  541. data/lib/nfe/generated/product_register_pt_br_v1/product_input.rb +28 -0
  542. data/lib/nfe/generated/product_register_pt_br_v1/recipient_tax_profile_enum.rb +31 -0
  543. data/lib/nfe/generated/product_register_pt_br_v1/tax_regime_enum.rb +18 -0
  544. data/lib/nfe/generated/service_invoice_rtc_v1/activity_event.rb +24 -0
  545. data/lib/nfe/generated/service_invoice_rtc_v1/address_definition.rb +27 -0
  546. data/lib/nfe/generated/service_invoice_rtc_v1/approximate_tax.rb +23 -0
  547. data/lib/nfe/generated/service_invoice_rtc_v1/approximate_totals.rb +24 -0
  548. data/lib/nfe/generated/service_invoice_rtc_v1/benefit.rb +22 -0
  549. data/lib/nfe/generated/service_invoice_rtc_v1/construction.rb +24 -0
  550. data/lib/nfe/generated/service_invoice_rtc_v1/deduction.rb +22 -0
  551. data/lib/nfe/generated/service_invoice_rtc_v1/deduction_document.rb +30 -0
  552. data/lib/nfe/generated/service_invoice_rtc_v1/foreign_trade.rb +29 -0
  553. data/lib/nfe/generated/service_invoice_rtc_v1/ibs_cbs.rb +39 -0
  554. data/lib/nfe/generated/service_invoice_rtc_v1/lease.rb +23 -0
  555. data/lib/nfe/generated/service_invoice_rtc_v1/nfse_request.rb +77 -0
  556. data/lib/nfe/generated/service_invoice_rtc_v1/party_definition.rb +30 -0
  557. data/lib/nfe/generated/service_invoice_rtc_v1/real_estate.rb +22 -0
  558. data/lib/nfe/generated/service_invoice_rtc_v1/reference_substitution.rb +22 -0
  559. data/lib/nfe/generated/service_invoice_rtc_v1/service_amount_definitions.rb +23 -0
  560. data/lib/nfe/generated/service_invoice_rtc_v1/suspension.rb +21 -0
  561. data/lib/nfe/generated/service_invoice_rtc_v1/third_party_reimbursement_document.rb +31 -0
  562. data/lib/nfe/generated.rb +553 -0
  563. data/lib/nfe/http/net_http.rb +179 -0
  564. data/lib/nfe/http/redactor.rb +41 -0
  565. data/lib/nfe/http/request.rb +68 -0
  566. data/lib/nfe/http/response.rb +43 -0
  567. data/lib/nfe/http/retry_policy.rb +39 -0
  568. data/lib/nfe/http/retrying_transport.rb +149 -0
  569. data/lib/nfe/http/transport.rb +44 -0
  570. data/lib/nfe/http/user_agent.rb +28 -0
  571. data/lib/nfe/id_validator.rb +107 -0
  572. data/lib/nfe/pagination.rb +53 -0
  573. data/lib/nfe/request_options.rb +16 -0
  574. data/lib/nfe/resources/abstract_resource.rb +267 -0
  575. data/lib/nfe/resources/addresses.rb +63 -0
  576. data/lib/nfe/resources/companies.rb +349 -0
  577. data/lib/nfe/resources/consumer_invoice_query.rb +45 -0
  578. data/lib/nfe/resources/consumer_invoices.rb +250 -0
  579. data/lib/nfe/resources/dto/addresses/address_lookup_response.rb +77 -0
  580. data/lib/nfe/resources/dto/company.rb +65 -0
  581. data/lib/nfe/resources/dto/consumer_invoice.rb +59 -0
  582. data/lib/nfe/resources/dto/consumer_invoice_query/tax_coupon.rb +190 -0
  583. data/lib/nfe/resources/dto/inbound_invoice_metadata.rb +52 -0
  584. data/lib/nfe/resources/dto/inbound_settings.rb +47 -0
  585. data/lib/nfe/resources/dto/legal_entity_lookup/legal_entity_responses.rb +111 -0
  586. data/lib/nfe/resources/dto/legal_entity_lookup/state_tax_legal_entity.rb +127 -0
  587. data/lib/nfe/resources/dto/legal_person.rb +36 -0
  588. data/lib/nfe/resources/dto/natural_person.rb +34 -0
  589. data/lib/nfe/resources/dto/natural_person_lookup/natural_person_status_response.rb +31 -0
  590. data/lib/nfe/resources/dto/nfe_file_resource.rb +28 -0
  591. data/lib/nfe/resources/dto/product_invoice.rb +61 -0
  592. data/lib/nfe/resources/dto/product_invoice_query/product_invoice_details.rb +99 -0
  593. data/lib/nfe/resources/dto/product_invoice_query/product_invoice_events_response.rb +31 -0
  594. data/lib/nfe/resources/dto/service_invoice.rb +70 -0
  595. data/lib/nfe/resources/dto/state_taxes/nfe_state_tax.rb +42 -0
  596. data/lib/nfe/resources/dto/tax_codes/tax_code_paginated_response.rb +50 -0
  597. data/lib/nfe/resources/dto/webhook.rb +43 -0
  598. data/lib/nfe/resources/inbound_product_invoices.rb +241 -0
  599. data/lib/nfe/resources/legal_entity_lookup.rb +78 -0
  600. data/lib/nfe/resources/legal_people.rb +120 -0
  601. data/lib/nfe/resources/natural_people.rb +120 -0
  602. data/lib/nfe/resources/natural_person_lookup.rb +35 -0
  603. data/lib/nfe/resources/product_invoice_query.rb +62 -0
  604. data/lib/nfe/resources/product_invoices.rb +290 -0
  605. data/lib/nfe/resources/product_invoices_rtc.rb +332 -0
  606. data/lib/nfe/resources/responses/consumer_invoice_issued.rb +27 -0
  607. data/lib/nfe/resources/responses/consumer_invoice_pending.rb +30 -0
  608. data/lib/nfe/resources/responses/product_invoice_issued.rb +23 -0
  609. data/lib/nfe/resources/responses/product_invoice_pending.rb +25 -0
  610. data/lib/nfe/resources/responses/product_invoice_rtc_issued.rb +24 -0
  611. data/lib/nfe/resources/responses/product_invoice_rtc_pending.rb +26 -0
  612. data/lib/nfe/resources/responses/service_invoice_issued.rb +23 -0
  613. data/lib/nfe/resources/responses/service_invoice_pending.rb +25 -0
  614. data/lib/nfe/resources/responses/service_invoice_rtc_issued.rb +25 -0
  615. data/lib/nfe/resources/responses/service_invoice_rtc_pending.rb +29 -0
  616. data/lib/nfe/resources/service_invoices.rb +226 -0
  617. data/lib/nfe/resources/service_invoices_rtc.rb +159 -0
  618. data/lib/nfe/resources/state_taxes.rb +118 -0
  619. data/lib/nfe/resources/tax_calculation.rb +71 -0
  620. data/lib/nfe/resources/tax_codes.rb +85 -0
  621. data/lib/nfe/resources/transportation_invoices.rb +144 -0
  622. data/lib/nfe/resources/webhooks.rb +145 -0
  623. data/lib/nfe/results.rb +17 -0
  624. data/lib/nfe/version.rb +3 -1
  625. data/lib/nfe/webhook.rb +137 -0
  626. data/lib/nfe/webhook_event.rb +22 -0
  627. data/lib/nfe.rb +43 -39
  628. data/sig/nfe/certificate.rbs +45 -0
  629. data/sig/nfe/client.rbs +55 -0
  630. data/sig/nfe/configuration.rbs +46 -0
  631. data/sig/nfe/date_normalizer.rbs +8 -0
  632. data/sig/nfe/error_factory.rbs +20 -0
  633. data/sig/nfe/errors.rbs +54 -0
  634. data/sig/nfe/flow_status.rbs +9 -0
  635. data/sig/nfe/generated/calculo_impostos_v1/calculate_item_request.rbs +35 -0
  636. data/sig/nfe/generated/calculo_impostos_v1/calculate_item_response.rbs +28 -0
  637. data/sig/nfe/generated/calculo_impostos_v1/calculate_request.rbs +21 -0
  638. data/sig/nfe/generated/calculo_impostos_v1/calculate_request_issuer.rbs +18 -0
  639. data/sig/nfe/generated/calculo_impostos_v1/calculate_request_recipient.rbs +18 -0
  640. data/sig/nfe/generated/calculo_impostos_v1/calculate_response.rbs +16 -0
  641. data/sig/nfe/generated/calculo_impostos_v1/cofins.rbs +21 -0
  642. data/sig/nfe/generated/calculo_impostos_v1/icms.rbs +60 -0
  643. data/sig/nfe/generated/calculo_impostos_v1/icms_uf_dest.rbs +24 -0
  644. data/sig/nfe/generated/calculo_impostos_v1/ii.rbs +23 -0
  645. data/sig/nfe/generated/calculo_impostos_v1/ipi.rbs +22 -0
  646. data/sig/nfe/generated/calculo_impostos_v1/operation_type.rbs +15 -0
  647. data/sig/nfe/generated/calculo_impostos_v1/origin.rbs +22 -0
  648. data/sig/nfe/generated/calculo_impostos_v1/pis.rbs +21 -0
  649. data/sig/nfe/generated/calculo_impostos_v1/problem_details.rbs +20 -0
  650. data/sig/nfe/generated/calculo_impostos_v1/state.rbs +41 -0
  651. data/sig/nfe/generated/calculo_impostos_v1/tax_code.rbs +17 -0
  652. data/sig/nfe/generated/calculo_impostos_v1/tax_code_paginated_response.rbs +19 -0
  653. data/sig/nfe/generated/calculo_impostos_v1/tax_regime.rbs +19 -0
  654. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_enums_entity_status.rbs +16 -0
  655. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_enums_metadata_resource_type.rbs +19 -0
  656. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_company_resource.rbs +19 -0
  657. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_enable_inbound_product_invoice_resource.rbs +18 -0
  658. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_enable_transportation_invoice_inbound_resource.rbs +17 -0
  659. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_manifest_automatic_rules_resource.rbs +16 -0
  660. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_metadata_resource.rbs +29 -0
  661. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_product_invoice_inbound_resource.rbs +22 -0
  662. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_product_invoice_resource.rbs +16 -0
  663. data/sig/nfe/generated/consulta_cte_v2/dfe_net_core_domain_resources_transportation_invoice_inbound_resource.rbs +21 -0
  664. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/buyer_resource.rbs +17 -0
  665. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/cte_event_metadata_resource.rbs +16 -0
  666. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/cte_metadata_resource.rbs +16 -0
  667. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/enable_inbound_product_invoice_resource.rbs +19 -0
  668. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/enable_transportation_invoice_inbound_resource.rbs +18 -0
  669. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/error_response.rbs +16 -0
  670. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/inbound_company_resource.rbs +17 -0
  671. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/issuer_resource.rbs +17 -0
  672. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/message_resource.rbs +16 -0
  673. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/metadata_resource.rbs +24 -0
  674. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/nfe_event_metadata_odata_resource.rbs +24 -0
  675. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/nfe_metadata_odata_resource.rbs +28 -0
  676. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/nfe_metadata_resource.rbs +34 -0
  677. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/process_webhook_resource.rbs +17 -0
  678. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/product_invoice_inbound_resource.rbs +18 -0
  679. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/transportation_invoice_inbound_resource.rbs +18 -0
  680. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/transportation_resource.rbs +17 -0
  681. data/sig/nfe/generated/consulta_dfe_distribuicao_v2/xml_file_resource.rbs +16 -0
  682. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/ativarbuscaautomticadedocumentose_eventosrelacionadosa_nota_fiscal_eletrnica_nf_e_request.rbs +20 -0
  683. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/automatic_manifesting.rbs +16 -0
  684. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/buyer.rbs +17 -0
  685. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/company.rbs +17 -0
  686. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/issuer.rbs +17 -0
  687. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/links.rbs +17 -0
  688. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/product_invoice.rbs +16 -0
  689. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/sucessonarequisio.rbs +36 -0
  690. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/sucessonarequisio2.rbs +24 -0
  691. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/sucessonarequisio6.rbs +34 -0
  692. data/sig/nfe/generated/consulta_nfe_distribuicao_v1/transportation.rbs +17 -0
  693. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_address.rbs +24 -0
  694. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_api_environment.rbs +16 -0
  695. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_certificate_status.rbs +18 -0
  696. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_city_base.rbs +17 -0
  697. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_city_extended.rbs +19 -0
  698. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_company_fiscal_status.rbs +18 -0
  699. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_environment_type.rbs +16 -0
  700. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_federal_tax_determination_by.rbs +16 -0
  701. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_legal_nature.rbs +75 -0
  702. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_municipal_tax_determination_by.rbs +16 -0
  703. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_municipal_tax_fiscal_status.rbs +18 -0
  704. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_security_credential.rbs +17 -0
  705. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_special_tax_regime.rbs +21 -0
  706. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_state_code.rbs +42 -0
  707. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_state_tax_processing_authorizer.rbs +15 -0
  708. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_state_tax_type.rbs +16 -0
  709. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_status.rbs +16 -0
  710. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_domain_entities_tax_regime.rbs +20 -0
  711. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_address_resource.rbs +23 -0
  712. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_certificate_metadata_resource.rbs +16 -0
  713. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_certificate_metadata_resource_item.rbs +22 -0
  714. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_certificates_metadata_resource.rbs +16 -0
  715. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_city_base_resource.rbs +17 -0
  716. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_companies_resource.rbs +16 -0
  717. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_certificate_v1.rbs +19 -0
  718. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_collection_resource_v1.rbs +19 -0
  719. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_resource.rbs +16 -0
  720. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_resource_item.rbs +28 -0
  721. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_resource_v1.rbs +43 -0
  722. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_company_single_resource_v1.rbs +16 -0
  723. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_company_resource.rbs +16 -0
  724. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_company_resource_item.rbs +22 -0
  725. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_municipal_tax_resource.rbs +16 -0
  726. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_municipal_tax_resource_item.rbs +32 -0
  727. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_state_tax_processing_details_resource.rbs +16 -0
  728. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_state_tax_resource.rbs +16 -0
  729. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_create_state_tax_resource_item.rbs +24 -0
  730. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_error_resource.rbs +17 -0
  731. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_errors_resource.rbs +16 -0
  732. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_municipal_tax_resource.rbs +16 -0
  733. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_municipal_tax_resource_item.rbs +38 -0
  734. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_serie_resource.rbs +16 -0
  735. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_serie_resource_item.rbs +17 -0
  736. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_processing_authorizer_resource.rbs +15 -0
  737. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_processing_switch_authorizer_strategy_resource.rbs +15 -0
  738. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_resource.rbs +16 -0
  739. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_resource_item.rbs +31 -0
  740. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_switch_authorizer_request.rbs +17 -0
  741. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_tax_switch_authorizer_response.rbs +19 -0
  742. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_state_taxes_resource.rbs +16 -0
  743. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_company_resource.rbs +16 -0
  744. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_company_resource_item.rbs +23 -0
  745. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_municipal_tax_resource.rbs +16 -0
  746. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_municipal_tax_resource_item.rbs +32 -0
  747. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_state_tax_resource.rbs +16 -0
  748. data/sig/nfe/generated/contribuintes_v2/dfe_tech_tax_payers_resources_update_state_tax_resource_item.rbs +24 -0
  749. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_edm_container_element_kind.rbs +18 -0
  750. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_edm_expression_kind.rbs +39 -0
  751. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_edm_schema_element_kind.rbs +19 -0
  752. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_edm_type_kind.rbs +23 -0
  753. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_entity_container.rbs +19 -0
  754. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_entity_container_element.rbs +18 -0
  755. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_expression.rbs +16 -0
  756. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_model.rbs +21 -0
  757. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_schema_element.rbs +18 -0
  758. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_type.rbs +16 -0
  759. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_iedm_type_reference.rbs +17 -0
  760. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_vocabularies_iedm_direct_value_annotations_manager.rbs +11 -0
  761. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_vocabularies_iedm_term.rbs +21 -0
  762. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_vocabularies_iedm_vocabulary_annotatable.rbs +11 -0
  763. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_edm_vocabularies_iedm_vocabulary_annotation.rbs +20 -0
  764. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_odata_entity_set_info.rbs +19 -0
  765. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_odata_function_import_info.rbs +19 -0
  766. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_odata_service_document.rbs +19 -0
  767. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_odata_singleton_info.rbs +19 -0
  768. data/sig/nfe/generated/contribuintes_v2/microsoft_odata_odata_type_annotation.rbs +16 -0
  769. data/sig/nfe/generated/nf_consumidor_v2/activity_resource.rbs +18 -0
  770. data/sig/nfe/generated/nf_consumidor_v2/addition_resource.rbs +19 -0
  771. data/sig/nfe/generated/nf_consumidor_v2/additional_information_resource.rbs +25 -0
  772. data/sig/nfe/generated/nf_consumidor_v2/address_resource.rbs +24 -0
  773. data/sig/nfe/generated/nf_consumidor_v2/advance_payment_item_resource.rbs +16 -0
  774. data/sig/nfe/generated/nf_consumidor_v2/authorization_resource.rbs +18 -0
  775. data/sig/nfe/generated/nf_consumidor_v2/bill_resource.rbs +19 -0
  776. data/sig/nfe/generated/nf_consumidor_v2/billing_resource.rbs +17 -0
  777. data/sig/nfe/generated/nf_consumidor_v2/buyer_resource.rbs +26 -0
  778. data/sig/nfe/generated/nf_consumidor_v2/card_resource.rbs +21 -0
  779. data/sig/nfe/generated/nf_consumidor_v2/cbstax_resource.rbs +20 -0
  780. data/sig/nfe/generated/nf_consumidor_v2/cbstotals_resource.rbs +20 -0
  781. data/sig/nfe/generated/nf_consumidor_v2/cideresource.rbs +18 -0
  782. data/sig/nfe/generated/nf_consumidor_v2/city_resource.rbs +17 -0
  783. data/sig/nfe/generated/nf_consumidor_v2/cofins_tax_resource.rbs +21 -0
  784. data/sig/nfe/generated/nf_consumidor_v2/competence_adjustment_resource.rbs +18 -0
  785. data/sig/nfe/generated/nf_consumidor_v2/consumer_invoice_request.rbs +42 -0
  786. data/sig/nfe/generated/nf_consumidor_v2/consumer_invoices_resource.rbs +17 -0
  787. data/sig/nfe/generated/nf_consumidor_v2/consumer_presence_type.rbs +19 -0
  788. data/sig/nfe/generated/nf_consumidor_v2/consumer_type.rbs +15 -0
  789. data/sig/nfe/generated/nf_consumidor_v2/contingency_details.rbs +18 -0
  790. data/sig/nfe/generated/nf_consumidor_v2/credit_reversal_resource.rbs +17 -0
  791. data/sig/nfe/generated/nf_consumidor_v2/credit_reversal_totals_resource.rbs +17 -0
  792. data/sig/nfe/generated/nf_consumidor_v2/credit_transfer_tax_resource.rbs +17 -0
  793. data/sig/nfe/generated/nf_consumidor_v2/credit_type.rbs +18 -0
  794. data/sig/nfe/generated/nf_consumidor_v2/debit_type.rbs +21 -0
  795. data/sig/nfe/generated/nf_consumidor_v2/deferment_tax_resource.rbs +17 -0
  796. data/sig/nfe/generated/nf_consumidor_v2/delivery_information_resource.rbs +23 -0
  797. data/sig/nfe/generated/nf_consumidor_v2/destination.rbs +17 -0
  798. data/sig/nfe/generated/nf_consumidor_v2/disablement_resource.rbs +21 -0
  799. data/sig/nfe/generated/nf_consumidor_v2/document_electronic_invoice_resource.rbs +16 -0
  800. data/sig/nfe/generated/nf_consumidor_v2/document_invoice_reference_resource.rbs +21 -0
  801. data/sig/nfe/generated/nf_consumidor_v2/duduction_indicator.rbs +15 -0
  802. data/sig/nfe/generated/nf_consumidor_v2/duplicate_resource.rbs +18 -0
  803. data/sig/nfe/generated/nf_consumidor_v2/economic_activity_resource.rbs +17 -0
  804. data/sig/nfe/generated/nf_consumidor_v2/economic_activity_type.rbs +15 -0
  805. data/sig/nfe/generated/nf_consumidor_v2/environment_type.rbs +16 -0
  806. data/sig/nfe/generated/nf_consumidor_v2/error_resource.rbs +17 -0
  807. data/sig/nfe/generated/nf_consumidor_v2/errors_resource.rbs +16 -0
  808. data/sig/nfe/generated/nf_consumidor_v2/exempt_reason.rbs +16 -0
  809. data/sig/nfe/generated/nf_consumidor_v2/export_detail_resource.rbs +17 -0
  810. data/sig/nfe/generated/nf_consumidor_v2/export_hint_resource.rbs +18 -0
  811. data/sig/nfe/generated/nf_consumidor_v2/export_resource.rbs +18 -0
  812. data/sig/nfe/generated/nf_consumidor_v2/file_resource.rbs +16 -0
  813. data/sig/nfe/generated/nf_consumidor_v2/flag_card.rbs +42 -0
  814. data/sig/nfe/generated/nf_consumidor_v2/fuel_origin_resource.rbs +18 -0
  815. data/sig/nfe/generated/nf_consumidor_v2/fuel_resource.rbs +28 -0
  816. data/sig/nfe/generated/nf_consumidor_v2/government_purchase_entity_type.rbs +17 -0
  817. data/sig/nfe/generated/nf_consumidor_v2/government_purchase_operation_type.rbs +20 -0
  818. data/sig/nfe/generated/nf_consumidor_v2/government_purchase_resource.rbs +18 -0
  819. data/sig/nfe/generated/nf_consumidor_v2/government_purchase_tax_resource.rbs +21 -0
  820. data/sig/nfe/generated/nf_consumidor_v2/ibs_zfm_presumed_credit_classification.rbs +18 -0
  821. data/sig/nfe/generated/nf_consumidor_v2/ibscbstax_resource.rbs +31 -0
  822. data/sig/nfe/generated/nf_consumidor_v2/ibscbstotals_resource.rbs +20 -0
  823. data/sig/nfe/generated/nf_consumidor_v2/ibsmunicipal_tax_resource.rbs +20 -0
  824. data/sig/nfe/generated/nf_consumidor_v2/ibsmunicipal_totals_resource.rbs +18 -0
  825. data/sig/nfe/generated/nf_consumidor_v2/ibsstate_tax_resource.rbs +20 -0
  826. data/sig/nfe/generated/nf_consumidor_v2/ibsstate_totals_resource.rbs +18 -0
  827. data/sig/nfe/generated/nf_consumidor_v2/ibstotals_resource.rbs +20 -0
  828. data/sig/nfe/generated/nf_consumidor_v2/icms_tax_resource.rbs +62 -0
  829. data/sig/nfe/generated/nf_consumidor_v2/icmstotal_resource.rbs +44 -0
  830. data/sig/nfe/generated/nf_consumidor_v2/icmsufdestination_tax_resource.rbs +24 -0
  831. data/sig/nfe/generated/nf_consumidor_v2/iitax_resource.rbs +20 -0
  832. data/sig/nfe/generated/nf_consumidor_v2/import_declaration_resource.rbs +27 -0
  833. data/sig/nfe/generated/nf_consumidor_v2/integration_payment_type.rbs +15 -0
  834. data/sig/nfe/generated/nf_consumidor_v2/intermediate_resource.rbs +17 -0
  835. data/sig/nfe/generated/nf_consumidor_v2/intermediation_type.rbs +17 -0
  836. data/sig/nfe/generated/nf_consumidor_v2/international_transport_type.rbs +26 -0
  837. data/sig/nfe/generated/nf_consumidor_v2/invoice_events_resource.rbs +20 -0
  838. data/sig/nfe/generated/nf_consumidor_v2/invoice_events_resource_base.rbs +17 -0
  839. data/sig/nfe/generated/nf_consumidor_v2/invoice_item_resource.rbs +52 -0
  840. data/sig/nfe/generated/nf_consumidor_v2/invoice_item_tax_resource.rbs +25 -0
  841. data/sig/nfe/generated/nf_consumidor_v2/invoice_items_resource.rbs +20 -0
  842. data/sig/nfe/generated/nf_consumidor_v2/invoice_resource.rbs +40 -0
  843. data/sig/nfe/generated/nf_consumidor_v2/invoice_status.rbs +22 -0
  844. data/sig/nfe/generated/nf_consumidor_v2/invoice_without_events_resource.rbs +39 -0
  845. data/sig/nfe/generated/nf_consumidor_v2/ipitax_resource.rbs +26 -0
  846. data/sig/nfe/generated/nf_consumidor_v2/issqntotal_resource.rbs +27 -0
  847. data/sig/nfe/generated/nf_consumidor_v2/issuer_from_request_resource.rbs +16 -0
  848. data/sig/nfe/generated/nf_consumidor_v2/issuer_resource.rbs +33 -0
  849. data/sig/nfe/generated/nf_consumidor_v2/istax_resource.rbs +23 -0
  850. data/sig/nfe/generated/nf_consumidor_v2/istotals_resource.rbs +16 -0
  851. data/sig/nfe/generated/nf_consumidor_v2/legal_nature.rbs +51 -0
  852. data/sig/nfe/generated/nf_consumidor_v2/monophase_cbstotals_resource.rbs +18 -0
  853. data/sig/nfe/generated/nf_consumidor_v2/monophase_deferment_tax_resource.rbs +19 -0
  854. data/sig/nfe/generated/nf_consumidor_v2/monophase_ibscbstax_resource.rbs +21 -0
  855. data/sig/nfe/generated/nf_consumidor_v2/monophase_ibstotals_resource.rbs +18 -0
  856. data/sig/nfe/generated/nf_consumidor_v2/monophase_previously_withheld_tax_resource.rbs +20 -0
  857. data/sig/nfe/generated/nf_consumidor_v2/monophase_standard_tax_resource.rbs +20 -0
  858. data/sig/nfe/generated/nf_consumidor_v2/monophase_totals_resource.rbs +17 -0
  859. data/sig/nfe/generated/nf_consumidor_v2/monophase_withholding_tax_resource.rbs +20 -0
  860. data/sig/nfe/generated/nf_consumidor_v2/operation_type.rbs +15 -0
  861. data/sig/nfe/generated/nf_consumidor_v2/operational_presumed_credit_resource.rbs +19 -0
  862. data/sig/nfe/generated/nf_consumidor_v2/payment_detail_resource.rbs +23 -0
  863. data/sig/nfe/generated/nf_consumidor_v2/payment_method.rbs +32 -0
  864. data/sig/nfe/generated/nf_consumidor_v2/payment_resource.rbs +17 -0
  865. data/sig/nfe/generated/nf_consumidor_v2/payment_type.rbs +15 -0
  866. data/sig/nfe/generated/nf_consumidor_v2/person_type.rbs +18 -0
  867. data/sig/nfe/generated/nf_consumidor_v2/pistax_resource.rbs +21 -0
  868. data/sig/nfe/generated/nf_consumidor_v2/presumed_credit_classification_code.rbs +18 -0
  869. data/sig/nfe/generated/nf_consumidor_v2/presumed_credit_details_resource.rbs +18 -0
  870. data/sig/nfe/generated/nf_consumidor_v2/presumed_credit_resource.rbs +18 -0
  871. data/sig/nfe/generated/nf_consumidor_v2/print_type.rbs +19 -0
  872. data/sig/nfe/generated/nf_consumidor_v2/pump_resource.rbs +21 -0
  873. data/sig/nfe/generated/nf_consumidor_v2/purpose_type.rbs +18 -0
  874. data/sig/nfe/generated/nf_consumidor_v2/reboque_resource.rbs +20 -0
  875. data/sig/nfe/generated/nf_consumidor_v2/receiver_state_tax_indicator.rbs +17 -0
  876. data/sig/nfe/generated/nf_consumidor_v2/reduction_tax_resource.rbs +17 -0
  877. data/sig/nfe/generated/nf_consumidor_v2/referenced_dfe_resource.rbs +17 -0
  878. data/sig/nfe/generated/nf_consumidor_v2/referenced_process_resource.rbs +18 -0
  879. data/sig/nfe/generated/nf_consumidor_v2/regular_taxation_resource.rbs +23 -0
  880. data/sig/nfe/generated/nf_consumidor_v2/request_cancellation_resource.rbs +19 -0
  881. data/sig/nfe/generated/nf_consumidor_v2/returned_tax_resource.rbs +16 -0
  882. data/sig/nfe/generated/nf_consumidor_v2/shipping_modality.rbs +19 -0
  883. data/sig/nfe/generated/nf_consumidor_v2/special_tax_regime.rbs +21 -0
  884. data/sig/nfe/generated/nf_consumidor_v2/state_code.rbs +42 -0
  885. data/sig/nfe/generated/nf_consumidor_v2/state_tax_processing_authorizer.rbs +15 -0
  886. data/sig/nfe/generated/nf_consumidor_v2/tax_coupon_information_resource.rbs +18 -0
  887. data/sig/nfe/generated/nf_consumidor_v2/tax_determination_resource.rbs +20 -0
  888. data/sig/nfe/generated/nf_consumidor_v2/tax_documents_reference_resource.rbs +18 -0
  889. data/sig/nfe/generated/nf_consumidor_v2/tax_regime.rbs +20 -0
  890. data/sig/nfe/generated/nf_consumidor_v2/taxpayer_comments_resource.rbs +17 -0
  891. data/sig/nfe/generated/nf_consumidor_v2/total_resource.rbs +21 -0
  892. data/sig/nfe/generated/nf_consumidor_v2/totals_withholdings.rbs +22 -0
  893. data/sig/nfe/generated/nf_consumidor_v2/transport_group_resource.rbs +24 -0
  894. data/sig/nfe/generated/nf_consumidor_v2/transport_information_resource.rbs +22 -0
  895. data/sig/nfe/generated/nf_consumidor_v2/transport_rate_resource.rbs +21 -0
  896. data/sig/nfe/generated/nf_consumidor_v2/transport_vehicle_resource.rbs +18 -0
  897. data/sig/nfe/generated/nf_consumidor_v2/vehicle_detail_resource.rbs +39 -0
  898. data/sig/nfe/generated/nf_consumidor_v2/volume_resource.rbs +21 -0
  899. data/sig/nfe/generated/nf_consumidor_v2/withdrawal_information_resource.rbs +23 -0
  900. data/sig/nfe/generated/nf_consumidor_v2/zfm_presumed_credit_resource.rbs +17 -0
  901. data/sig/nfe/generated/nf_produto_v2/activity_resource.rbs +18 -0
  902. data/sig/nfe/generated/nf_produto_v2/addition_resource.rbs +19 -0
  903. data/sig/nfe/generated/nf_produto_v2/additional_information_resource.rbs +24 -0
  904. data/sig/nfe/generated/nf_produto_v2/address_resource.rbs +24 -0
  905. data/sig/nfe/generated/nf_produto_v2/authorization_resource.rbs +18 -0
  906. data/sig/nfe/generated/nf_produto_v2/bill_resource.rbs +19 -0
  907. data/sig/nfe/generated/nf_produto_v2/billing_resource.rbs +17 -0
  908. data/sig/nfe/generated/nf_produto_v2/buyer_resource.rbs +26 -0
  909. data/sig/nfe/generated/nf_produto_v2/card_resource.rbs +21 -0
  910. data/sig/nfe/generated/nf_produto_v2/cideresource.rbs +18 -0
  911. data/sig/nfe/generated/nf_produto_v2/city_resource.rbs +17 -0
  912. data/sig/nfe/generated/nf_produto_v2/cofins_tax_resource.rbs +21 -0
  913. data/sig/nfe/generated/nf_produto_v2/consumer_presence_type.rbs +19 -0
  914. data/sig/nfe/generated/nf_produto_v2/consumer_type.rbs +15 -0
  915. data/sig/nfe/generated/nf_produto_v2/contingency_details.rbs +18 -0
  916. data/sig/nfe/generated/nf_produto_v2/delivery_information_resource.rbs +23 -0
  917. data/sig/nfe/generated/nf_produto_v2/destination.rbs +17 -0
  918. data/sig/nfe/generated/nf_produto_v2/disablement_resource.rbs +21 -0
  919. data/sig/nfe/generated/nf_produto_v2/document_electronic_invoice_resource.rbs +16 -0
  920. data/sig/nfe/generated/nf_produto_v2/document_invoice_reference_resource.rbs +21 -0
  921. data/sig/nfe/generated/nf_produto_v2/duduction_indicator.rbs +15 -0
  922. data/sig/nfe/generated/nf_produto_v2/duplicate_resource.rbs +18 -0
  923. data/sig/nfe/generated/nf_produto_v2/economic_activity_resource.rbs +17 -0
  924. data/sig/nfe/generated/nf_produto_v2/economic_activity_type.rbs +15 -0
  925. data/sig/nfe/generated/nf_produto_v2/environment_type.rbs +16 -0
  926. data/sig/nfe/generated/nf_produto_v2/error_resource.rbs +17 -0
  927. data/sig/nfe/generated/nf_produto_v2/errors_resource.rbs +16 -0
  928. data/sig/nfe/generated/nf_produto_v2/exempt_reason.rbs +16 -0
  929. data/sig/nfe/generated/nf_produto_v2/export_detail_resource.rbs +17 -0
  930. data/sig/nfe/generated/nf_produto_v2/export_hint_resource.rbs +18 -0
  931. data/sig/nfe/generated/nf_produto_v2/export_resource.rbs +18 -0
  932. data/sig/nfe/generated/nf_produto_v2/file_resource.rbs +16 -0
  933. data/sig/nfe/generated/nf_produto_v2/flag_card.rbs +42 -0
  934. data/sig/nfe/generated/nf_produto_v2/fuel_origin_resource.rbs +18 -0
  935. data/sig/nfe/generated/nf_produto_v2/fuel_resource.rbs +28 -0
  936. data/sig/nfe/generated/nf_produto_v2/icms_tax_resource.rbs +61 -0
  937. data/sig/nfe/generated/nf_produto_v2/icmstotal.rbs +44 -0
  938. data/sig/nfe/generated/nf_produto_v2/icmstotal_resource.rbs +44 -0
  939. data/sig/nfe/generated/nf_produto_v2/icmsufdestination_tax_resource.rbs +24 -0
  940. data/sig/nfe/generated/nf_produto_v2/iitax_resource.rbs +20 -0
  941. data/sig/nfe/generated/nf_produto_v2/import_declaration_resource.rbs +26 -0
  942. data/sig/nfe/generated/nf_produto_v2/integration_payment_type.rbs +15 -0
  943. data/sig/nfe/generated/nf_produto_v2/intermediate_resource.rbs +17 -0
  944. data/sig/nfe/generated/nf_produto_v2/intermediation_type.rbs +17 -0
  945. data/sig/nfe/generated/nf_produto_v2/international_transport_type.rbs +26 -0
  946. data/sig/nfe/generated/nf_produto_v2/invoice_events_resource_base.rbs +17 -0
  947. data/sig/nfe/generated/nf_produto_v2/invoice_item_resource.rbs +47 -0
  948. data/sig/nfe/generated/nf_produto_v2/invoice_item_tax_resource.rbs +22 -0
  949. data/sig/nfe/generated/nf_produto_v2/invoice_items_resource.rbs +20 -0
  950. data/sig/nfe/generated/nf_produto_v2/invoice_resource.rbs +40 -0
  951. data/sig/nfe/generated/nf_produto_v2/invoice_status.rbs +22 -0
  952. data/sig/nfe/generated/nf_produto_v2/invoice_without_events_resource.rbs +39 -0
  953. data/sig/nfe/generated/nf_produto_v2/ipitax_resource.rbs +26 -0
  954. data/sig/nfe/generated/nf_produto_v2/issqntotal.rbs +27 -0
  955. data/sig/nfe/generated/nf_produto_v2/issqntotal_resource.rbs +27 -0
  956. data/sig/nfe/generated/nf_produto_v2/issuer_from_request_resource.rbs +16 -0
  957. data/sig/nfe/generated/nf_produto_v2/issuer_resource.rbs +33 -0
  958. data/sig/nfe/generated/nf_produto_v2/legal_nature.rbs +51 -0
  959. data/sig/nfe/generated/nf_produto_v2/operation_type.rbs +15 -0
  960. data/sig/nfe/generated/nf_produto_v2/payment_detail_resource.rbs +23 -0
  961. data/sig/nfe/generated/nf_produto_v2/payment_method.rbs +29 -0
  962. data/sig/nfe/generated/nf_produto_v2/payment_resource.rbs +17 -0
  963. data/sig/nfe/generated/nf_produto_v2/payment_type.rbs +15 -0
  964. data/sig/nfe/generated/nf_produto_v2/person_type.rbs +18 -0
  965. data/sig/nfe/generated/nf_produto_v2/pistax_resource.rbs +21 -0
  966. data/sig/nfe/generated/nf_produto_v2/print_type.rbs +19 -0
  967. data/sig/nfe/generated/nf_produto_v2/product_invoice_events_resource.rbs +20 -0
  968. data/sig/nfe/generated/nf_produto_v2/product_invoice_queue_issue_resource.rbs +40 -0
  969. data/sig/nfe/generated/nf_produto_v2/product_invoices_resource.rbs +17 -0
  970. data/sig/nfe/generated/nf_produto_v2/pump_resource.rbs +21 -0
  971. data/sig/nfe/generated/nf_produto_v2/purpose_type.rbs +18 -0
  972. data/sig/nfe/generated/nf_produto_v2/queue_event_resource.rbs +16 -0
  973. data/sig/nfe/generated/nf_produto_v2/reboque_resource.rbs +20 -0
  974. data/sig/nfe/generated/nf_produto_v2/receiver_state_tax_indicator.rbs +17 -0
  975. data/sig/nfe/generated/nf_produto_v2/referenced_process_resource.rbs +18 -0
  976. data/sig/nfe/generated/nf_produto_v2/request_cancellation_resource.rbs +19 -0
  977. data/sig/nfe/generated/nf_produto_v2/shipping_modality.rbs +19 -0
  978. data/sig/nfe/generated/nf_produto_v2/special_tax_regime.rbs +21 -0
  979. data/sig/nfe/generated/nf_produto_v2/state_code.rbs +42 -0
  980. data/sig/nfe/generated/nf_produto_v2/state_tax_processing_authorizer.rbs +15 -0
  981. data/sig/nfe/generated/nf_produto_v2/tax_coupon_information_resource.rbs +18 -0
  982. data/sig/nfe/generated/nf_produto_v2/tax_determination_resource.rbs +20 -0
  983. data/sig/nfe/generated/nf_produto_v2/tax_documents_reference_resource.rbs +18 -0
  984. data/sig/nfe/generated/nf_produto_v2/tax_regime.rbs +20 -0
  985. data/sig/nfe/generated/nf_produto_v2/taxpayer_comments_resource.rbs +17 -0
  986. data/sig/nfe/generated/nf_produto_v2/total.rbs +17 -0
  987. data/sig/nfe/generated/nf_produto_v2/total_resource.rbs +17 -0
  988. data/sig/nfe/generated/nf_produto_v2/transport_group_resource.rbs +24 -0
  989. data/sig/nfe/generated/nf_produto_v2/transport_information_resource.rbs +22 -0
  990. data/sig/nfe/generated/nf_produto_v2/transport_rate_resource.rbs +21 -0
  991. data/sig/nfe/generated/nf_produto_v2/transport_vehicle_resource.rbs +18 -0
  992. data/sig/nfe/generated/nf_produto_v2/vehicle_detail_resource.rbs +39 -0
  993. data/sig/nfe/generated/nf_produto_v2/volume_resource.rbs +21 -0
  994. data/sig/nfe/generated/nf_produto_v2/withdrawal_information_resource.rbs +23 -0
  995. data/sig/nfe/generated/nfeio/batch_process_response.rbs +21 -0
  996. data/sig/nfe/generated/nfeio/environment.rbs +15 -0
  997. data/sig/nfe/generated/nfeio/file_parsing_options_request.rbs +17 -0
  998. data/sig/nfe/generated/nfeio/guid_pagination_cursor.rbs +16 -0
  999. data/sig/nfe/generated/nfeio/input_info_request.rbs +18 -0
  1000. data/sig/nfe/generated/nfeio/inputs_response.rbs +17 -0
  1001. data/sig/nfe/generated/nfeio/out_put_link_response.rbs +17 -0
  1002. data/sig/nfe/generated/nfeio/out_put_response.rbs +18 -0
  1003. data/sig/nfe/generated/nfeio/output_type.rbs +16 -0
  1004. data/sig/nfe/generated/nfeio/parsing_type.rbs +15 -0
  1005. data/sig/nfe/generated/nfeio/problem_details.rbs +20 -0
  1006. data/sig/nfe/generated/nfeio/processing_batch_detail_response.rbs +26 -0
  1007. data/sig/nfe/generated/nfeio/processing_batch_summary_response.rbs +28 -0
  1008. data/sig/nfe/generated/nfeio/processing_batch_summary_response_page.rbs +20 -0
  1009. data/sig/nfe/generated/nfeio/processing_batches_response.rbs +19 -0
  1010. data/sig/nfe/generated/nfeio/processing_metrics_response.rbs +18 -0
  1011. data/sig/nfe/generated/nfeio/resource_info.rbs +18 -0
  1012. data/sig/nfe/generated/nfeio/resource_info_request.rbs +18 -0
  1013. data/sig/nfe/generated/nfeio/sort_direction.rbs +15 -0
  1014. data/sig/nfe/generated/nfeio/sort_order.rbs +15 -0
  1015. data/sig/nfe/generated/nfeio/start_processing_job_request.rbs +20 -0
  1016. data/sig/nfe/generated/nfeio/status_process.rbs +20 -0
  1017. data/sig/nfe/generated/nfeio/zip_request.rbs +18 -0
  1018. data/sig/nfe/generated/product_invoice_rtc_v1/activity_resource.rbs +18 -0
  1019. data/sig/nfe/generated/product_invoice_rtc_v1/addition_resource.rbs +19 -0
  1020. data/sig/nfe/generated/product_invoice_rtc_v1/additional_information_resource.rbs +25 -0
  1021. data/sig/nfe/generated/product_invoice_rtc_v1/address_resource.rbs +24 -0
  1022. data/sig/nfe/generated/product_invoice_rtc_v1/advance_payment_item_resource.rbs +16 -0
  1023. data/sig/nfe/generated/product_invoice_rtc_v1/authorization_resource.rbs +19 -0
  1024. data/sig/nfe/generated/product_invoice_rtc_v1/bill_resource.rbs +19 -0
  1025. data/sig/nfe/generated/product_invoice_rtc_v1/billing_resource.rbs +17 -0
  1026. data/sig/nfe/generated/product_invoice_rtc_v1/buyer_resource.rbs +26 -0
  1027. data/sig/nfe/generated/product_invoice_rtc_v1/card_resource.rbs +21 -0
  1028. data/sig/nfe/generated/product_invoice_rtc_v1/cbstax_resource.rbs +20 -0
  1029. data/sig/nfe/generated/product_invoice_rtc_v1/cbstotals_resource.rbs +20 -0
  1030. data/sig/nfe/generated/product_invoice_rtc_v1/cideresource.rbs +18 -0
  1031. data/sig/nfe/generated/product_invoice_rtc_v1/city_resource.rbs +17 -0
  1032. data/sig/nfe/generated/product_invoice_rtc_v1/cofins_tax_resource.rbs +21 -0
  1033. data/sig/nfe/generated/product_invoice_rtc_v1/competence_adjustment_resource.rbs +18 -0
  1034. data/sig/nfe/generated/product_invoice_rtc_v1/consumer_presence_type.rbs +19 -0
  1035. data/sig/nfe/generated/product_invoice_rtc_v1/consumer_type.rbs +15 -0
  1036. data/sig/nfe/generated/product_invoice_rtc_v1/contingency_details.rbs +18 -0
  1037. data/sig/nfe/generated/product_invoice_rtc_v1/credit_reversal_resource.rbs +17 -0
  1038. data/sig/nfe/generated/product_invoice_rtc_v1/credit_reversal_totals_resource.rbs +17 -0
  1039. data/sig/nfe/generated/product_invoice_rtc_v1/credit_transfer_tax_resource.rbs +17 -0
  1040. data/sig/nfe/generated/product_invoice_rtc_v1/credit_type.rbs +18 -0
  1041. data/sig/nfe/generated/product_invoice_rtc_v1/debit_type.rbs +21 -0
  1042. data/sig/nfe/generated/product_invoice_rtc_v1/deferment_tax_resource.rbs +17 -0
  1043. data/sig/nfe/generated/product_invoice_rtc_v1/delivery_information_resource.rbs +23 -0
  1044. data/sig/nfe/generated/product_invoice_rtc_v1/destination.rbs +17 -0
  1045. data/sig/nfe/generated/product_invoice_rtc_v1/disablement_resource.rbs +21 -0
  1046. data/sig/nfe/generated/product_invoice_rtc_v1/document_electronic_invoice_resource.rbs +16 -0
  1047. data/sig/nfe/generated/product_invoice_rtc_v1/document_invoice_reference_resource.rbs +21 -0
  1048. data/sig/nfe/generated/product_invoice_rtc_v1/duduction_indicator.rbs +15 -0
  1049. data/sig/nfe/generated/product_invoice_rtc_v1/duplicate_resource.rbs +18 -0
  1050. data/sig/nfe/generated/product_invoice_rtc_v1/economic_activity_resource.rbs +17 -0
  1051. data/sig/nfe/generated/product_invoice_rtc_v1/economic_activity_type.rbs +15 -0
  1052. data/sig/nfe/generated/product_invoice_rtc_v1/environment_type.rbs +16 -0
  1053. data/sig/nfe/generated/product_invoice_rtc_v1/error_resource.rbs +17 -0
  1054. data/sig/nfe/generated/product_invoice_rtc_v1/errors_resource.rbs +16 -0
  1055. data/sig/nfe/generated/product_invoice_rtc_v1/exempt_reason.rbs +16 -0
  1056. data/sig/nfe/generated/product_invoice_rtc_v1/export_detail_resource.rbs +17 -0
  1057. data/sig/nfe/generated/product_invoice_rtc_v1/export_hint_resource.rbs +18 -0
  1058. data/sig/nfe/generated/product_invoice_rtc_v1/export_resource.rbs +18 -0
  1059. data/sig/nfe/generated/product_invoice_rtc_v1/file_resource.rbs +16 -0
  1060. data/sig/nfe/generated/product_invoice_rtc_v1/flag_card.rbs +42 -0
  1061. data/sig/nfe/generated/product_invoice_rtc_v1/fuel_origin_resource.rbs +18 -0
  1062. data/sig/nfe/generated/product_invoice_rtc_v1/fuel_resource.rbs +28 -0
  1063. data/sig/nfe/generated/product_invoice_rtc_v1/government_purchase_entity_type.rbs +17 -0
  1064. data/sig/nfe/generated/product_invoice_rtc_v1/government_purchase_operation_type.rbs +20 -0
  1065. data/sig/nfe/generated/product_invoice_rtc_v1/government_purchase_resource.rbs +18 -0
  1066. data/sig/nfe/generated/product_invoice_rtc_v1/government_purchase_tax_resource.rbs +21 -0
  1067. data/sig/nfe/generated/product_invoice_rtc_v1/ibs_zfm_presumed_credit_classification.rbs +18 -0
  1068. data/sig/nfe/generated/product_invoice_rtc_v1/ibscbstax_resource.rbs +31 -0
  1069. data/sig/nfe/generated/product_invoice_rtc_v1/ibscbstotals_resource.rbs +20 -0
  1070. data/sig/nfe/generated/product_invoice_rtc_v1/ibsmunicipal_tax_resource.rbs +20 -0
  1071. data/sig/nfe/generated/product_invoice_rtc_v1/ibsmunicipal_totals_resource.rbs +18 -0
  1072. data/sig/nfe/generated/product_invoice_rtc_v1/ibsstate_tax_resource.rbs +20 -0
  1073. data/sig/nfe/generated/product_invoice_rtc_v1/ibsstate_totals_resource.rbs +18 -0
  1074. data/sig/nfe/generated/product_invoice_rtc_v1/ibstotals_resource.rbs +20 -0
  1075. data/sig/nfe/generated/product_invoice_rtc_v1/icms_tax_resource.rbs +62 -0
  1076. data/sig/nfe/generated/product_invoice_rtc_v1/icmstotal.rbs +44 -0
  1077. data/sig/nfe/generated/product_invoice_rtc_v1/icmstotal_resource.rbs +44 -0
  1078. data/sig/nfe/generated/product_invoice_rtc_v1/icmsufdestination_tax_resource.rbs +24 -0
  1079. data/sig/nfe/generated/product_invoice_rtc_v1/iitax_resource.rbs +20 -0
  1080. data/sig/nfe/generated/product_invoice_rtc_v1/import_declaration_resource.rbs +27 -0
  1081. data/sig/nfe/generated/product_invoice_rtc_v1/integration_payment_type.rbs +15 -0
  1082. data/sig/nfe/generated/product_invoice_rtc_v1/intermediate_resource.rbs +17 -0
  1083. data/sig/nfe/generated/product_invoice_rtc_v1/intermediation_type.rbs +17 -0
  1084. data/sig/nfe/generated/product_invoice_rtc_v1/international_transport_type.rbs +26 -0
  1085. data/sig/nfe/generated/product_invoice_rtc_v1/invoice_events_resource.rbs +20 -0
  1086. data/sig/nfe/generated/product_invoice_rtc_v1/invoice_events_resource_base.rbs +17 -0
  1087. data/sig/nfe/generated/product_invoice_rtc_v1/invoice_item_resource.rbs +52 -0
  1088. data/sig/nfe/generated/product_invoice_rtc_v1/invoice_item_tax_resource.rbs +25 -0
  1089. data/sig/nfe/generated/product_invoice_rtc_v1/invoice_items_resource.rbs +20 -0
  1090. data/sig/nfe/generated/product_invoice_rtc_v1/invoice_resource.rbs +40 -0
  1091. data/sig/nfe/generated/product_invoice_rtc_v1/invoice_status.rbs +22 -0
  1092. data/sig/nfe/generated/product_invoice_rtc_v1/invoice_without_events_resource.rbs +39 -0
  1093. data/sig/nfe/generated/product_invoice_rtc_v1/ipitax_resource.rbs +26 -0
  1094. data/sig/nfe/generated/product_invoice_rtc_v1/issqntotal.rbs +27 -0
  1095. data/sig/nfe/generated/product_invoice_rtc_v1/issqntotal_resource.rbs +27 -0
  1096. data/sig/nfe/generated/product_invoice_rtc_v1/issuer_from_request_resource.rbs +16 -0
  1097. data/sig/nfe/generated/product_invoice_rtc_v1/issuer_resource.rbs +33 -0
  1098. data/sig/nfe/generated/product_invoice_rtc_v1/istax_resource.rbs +23 -0
  1099. data/sig/nfe/generated/product_invoice_rtc_v1/istotals_resource.rbs +16 -0
  1100. data/sig/nfe/generated/product_invoice_rtc_v1/legal_nature.rbs +51 -0
  1101. data/sig/nfe/generated/product_invoice_rtc_v1/monophase_cbstotals_resource.rbs +18 -0
  1102. data/sig/nfe/generated/product_invoice_rtc_v1/monophase_deferment_tax_resource.rbs +19 -0
  1103. data/sig/nfe/generated/product_invoice_rtc_v1/monophase_ibscbstax_resource.rbs +21 -0
  1104. data/sig/nfe/generated/product_invoice_rtc_v1/monophase_ibstotals_resource.rbs +18 -0
  1105. data/sig/nfe/generated/product_invoice_rtc_v1/monophase_previously_withheld_tax_resource.rbs +20 -0
  1106. data/sig/nfe/generated/product_invoice_rtc_v1/monophase_standard_tax_resource.rbs +20 -0
  1107. data/sig/nfe/generated/product_invoice_rtc_v1/monophase_totals_resource.rbs +17 -0
  1108. data/sig/nfe/generated/product_invoice_rtc_v1/monophase_withholding_tax_resource.rbs +20 -0
  1109. data/sig/nfe/generated/product_invoice_rtc_v1/operation_type.rbs +15 -0
  1110. data/sig/nfe/generated/product_invoice_rtc_v1/operational_presumed_credit_resource.rbs +19 -0
  1111. data/sig/nfe/generated/product_invoice_rtc_v1/payment_detail_resource.rbs +23 -0
  1112. data/sig/nfe/generated/product_invoice_rtc_v1/payment_method.rbs +33 -0
  1113. data/sig/nfe/generated/product_invoice_rtc_v1/payment_resource.rbs +17 -0
  1114. data/sig/nfe/generated/product_invoice_rtc_v1/payment_type.rbs +15 -0
  1115. data/sig/nfe/generated/product_invoice_rtc_v1/person_type.rbs +18 -0
  1116. data/sig/nfe/generated/product_invoice_rtc_v1/pistax_resource.rbs +21 -0
  1117. data/sig/nfe/generated/product_invoice_rtc_v1/presumed_credit_classification_code.rbs +18 -0
  1118. data/sig/nfe/generated/product_invoice_rtc_v1/presumed_credit_details_resource.rbs +18 -0
  1119. data/sig/nfe/generated/product_invoice_rtc_v1/presumed_credit_resource.rbs +18 -0
  1120. data/sig/nfe/generated/product_invoice_rtc_v1/print_type.rbs +19 -0
  1121. data/sig/nfe/generated/product_invoice_rtc_v1/product_invoice_request.rbs +47 -0
  1122. data/sig/nfe/generated/product_invoice_rtc_v1/product_invoices_resource.rbs +17 -0
  1123. data/sig/nfe/generated/product_invoice_rtc_v1/pump_resource.rbs +21 -0
  1124. data/sig/nfe/generated/product_invoice_rtc_v1/purchase_information_resource.rbs +18 -0
  1125. data/sig/nfe/generated/product_invoice_rtc_v1/purpose_type.rbs +18 -0
  1126. data/sig/nfe/generated/product_invoice_rtc_v1/queue_event_resource.rbs +16 -0
  1127. data/sig/nfe/generated/product_invoice_rtc_v1/reboque_resource.rbs +20 -0
  1128. data/sig/nfe/generated/product_invoice_rtc_v1/receiver_state_tax_indicator.rbs +17 -0
  1129. data/sig/nfe/generated/product_invoice_rtc_v1/reduction_tax_resource.rbs +17 -0
  1130. data/sig/nfe/generated/product_invoice_rtc_v1/referenced_dfe_resource.rbs +17 -0
  1131. data/sig/nfe/generated/product_invoice_rtc_v1/referenced_process_resource.rbs +18 -0
  1132. data/sig/nfe/generated/product_invoice_rtc_v1/regular_taxation_resource.rbs +23 -0
  1133. data/sig/nfe/generated/product_invoice_rtc_v1/request_cancellation_resource.rbs +19 -0
  1134. data/sig/nfe/generated/product_invoice_rtc_v1/returned_tax_resource.rbs +16 -0
  1135. data/sig/nfe/generated/product_invoice_rtc_v1/shipping_modality.rbs +19 -0
  1136. data/sig/nfe/generated/product_invoice_rtc_v1/special_tax_regime.rbs +20 -0
  1137. data/sig/nfe/generated/product_invoice_rtc_v1/state_code.rbs +42 -0
  1138. data/sig/nfe/generated/product_invoice_rtc_v1/state_tax_processing_authorizer.rbs +15 -0
  1139. data/sig/nfe/generated/product_invoice_rtc_v1/tax_coupon_information_resource.rbs +18 -0
  1140. data/sig/nfe/generated/product_invoice_rtc_v1/tax_determination_resource.rbs +20 -0
  1141. data/sig/nfe/generated/product_invoice_rtc_v1/tax_documents_reference_resource.rbs +18 -0
  1142. data/sig/nfe/generated/product_invoice_rtc_v1/tax_regime.rbs +20 -0
  1143. data/sig/nfe/generated/product_invoice_rtc_v1/taxpayer_comments_resource.rbs +17 -0
  1144. data/sig/nfe/generated/product_invoice_rtc_v1/total.rbs +21 -0
  1145. data/sig/nfe/generated/product_invoice_rtc_v1/total_resource.rbs +17 -0
  1146. data/sig/nfe/generated/product_invoice_rtc_v1/totals_withholdings.rbs +22 -0
  1147. data/sig/nfe/generated/product_invoice_rtc_v1/transport_group_resource.rbs +24 -0
  1148. data/sig/nfe/generated/product_invoice_rtc_v1/transport_information_resource.rbs +22 -0
  1149. data/sig/nfe/generated/product_invoice_rtc_v1/transport_rate_resource.rbs +21 -0
  1150. data/sig/nfe/generated/product_invoice_rtc_v1/transport_vehicle_resource.rbs +18 -0
  1151. data/sig/nfe/generated/product_invoice_rtc_v1/vehicle_detail_resource.rbs +39 -0
  1152. data/sig/nfe/generated/product_invoice_rtc_v1/volume_resource.rbs +21 -0
  1153. data/sig/nfe/generated/product_invoice_rtc_v1/withdrawal_information_resource.rbs +23 -0
  1154. data/sig/nfe/generated/product_invoice_rtc_v1/zfm_presumed_credit_resource.rbs +17 -0
  1155. data/sig/nfe/generated/product_register_pt_br_v1/cofins_tax_group.rbs +17 -0
  1156. data/sig/nfe/generated/product_register_pt_br_v1/custom_tax_scenario.rbs +20 -0
  1157. data/sig/nfe/generated/product_register_pt_br_v1/icms_tax_group.rbs +33 -0
  1158. data/sig/nfe/generated/product_register_pt_br_v1/inter_state_tax_group.rbs +19 -0
  1159. data/sig/nfe/generated/product_register_pt_br_v1/intra_state_tax_group.rbs +19 -0
  1160. data/sig/nfe/generated/product_register_pt_br_v1/issuer_tax_profile_enum.rbs +20 -0
  1161. data/sig/nfe/generated/product_register_pt_br_v1/pis_tax_group.rbs +17 -0
  1162. data/sig/nfe/generated/product_register_pt_br_v1/product.rbs +25 -0
  1163. data/sig/nfe/generated/product_register_pt_br_v1/product_input.rbs +24 -0
  1164. data/sig/nfe/generated/product_register_pt_br_v1/recipient_tax_profile_enum.rbs +30 -0
  1165. data/sig/nfe/generated/product_register_pt_br_v1/tax_regime_enum.rbs +17 -0
  1166. data/sig/nfe/generated/service_invoice_rtc_v1/activity_event.rbs +20 -0
  1167. data/sig/nfe/generated/service_invoice_rtc_v1/address_definition.rbs +23 -0
  1168. data/sig/nfe/generated/service_invoice_rtc_v1/approximate_tax.rbs +19 -0
  1169. data/sig/nfe/generated/service_invoice_rtc_v1/approximate_totals.rbs +20 -0
  1170. data/sig/nfe/generated/service_invoice_rtc_v1/benefit.rbs +18 -0
  1171. data/sig/nfe/generated/service_invoice_rtc_v1/construction.rbs +20 -0
  1172. data/sig/nfe/generated/service_invoice_rtc_v1/deduction.rbs +18 -0
  1173. data/sig/nfe/generated/service_invoice_rtc_v1/deduction_document.rbs +26 -0
  1174. data/sig/nfe/generated/service_invoice_rtc_v1/foreign_trade.rbs +25 -0
  1175. data/sig/nfe/generated/service_invoice_rtc_v1/ibs_cbs.rbs +35 -0
  1176. data/sig/nfe/generated/service_invoice_rtc_v1/lease.rbs +19 -0
  1177. data/sig/nfe/generated/service_invoice_rtc_v1/nfse_request.rbs +73 -0
  1178. data/sig/nfe/generated/service_invoice_rtc_v1/party_definition.rbs +26 -0
  1179. data/sig/nfe/generated/service_invoice_rtc_v1/real_estate.rbs +18 -0
  1180. data/sig/nfe/generated/service_invoice_rtc_v1/reference_substitution.rbs +18 -0
  1181. data/sig/nfe/generated/service_invoice_rtc_v1/service_amount_definitions.rbs +19 -0
  1182. data/sig/nfe/generated/service_invoice_rtc_v1/suspension.rbs +17 -0
  1183. data/sig/nfe/generated/service_invoice_rtc_v1/third_party_reimbursement_document.rbs +27 -0
  1184. data/sig/nfe/http/net_http.rbs +33 -0
  1185. data/sig/nfe/http/redactor.rbs +12 -0
  1186. data/sig/nfe/http/request.rbs +43 -0
  1187. data/sig/nfe/http/response.rbs +27 -0
  1188. data/sig/nfe/http/retry_policy.rbs +18 -0
  1189. data/sig/nfe/http/retrying_transport.rbs +27 -0
  1190. data/sig/nfe/http/transport.rbs +11 -0
  1191. data/sig/nfe/http/user_agent.rbs +7 -0
  1192. data/sig/nfe/id_validator.rbs +18 -0
  1193. data/sig/nfe/pagination.rbs +31 -0
  1194. data/sig/nfe/request_options.rbs +11 -0
  1195. data/sig/nfe/resources/abstract_resource.rbs +39 -0
  1196. data/sig/nfe/resources/addresses.rbs +12 -0
  1197. data/sig/nfe/resources/companies.rbs +39 -0
  1198. data/sig/nfe/resources/consumer_invoice_issued.rbs +16 -0
  1199. data/sig/nfe/resources/consumer_invoice_pending.rbs +17 -0
  1200. data/sig/nfe/resources/consumer_invoice_query.rbs +11 -0
  1201. data/sig/nfe/resources/consumer_invoices.rbs +33 -0
  1202. data/sig/nfe/resources/dto/addresses/address_lookup_response.rbs +40 -0
  1203. data/sig/nfe/resources/dto/company.rbs +27 -0
  1204. data/sig/nfe/resources/dto/consumer_invoice.rbs +24 -0
  1205. data/sig/nfe/resources/dto/consumer_invoice_query/tax_coupon.rbs +117 -0
  1206. data/sig/nfe/resources/dto/inbound_invoice_metadata.rbs +21 -0
  1207. data/sig/nfe/resources/dto/inbound_settings.rbs +20 -0
  1208. data/sig/nfe/resources/dto/legal_entity_lookup/legal_entity_responses.rbs +61 -0
  1209. data/sig/nfe/resources/dto/legal_entity_lookup/state_tax_legal_entity.rbs +71 -0
  1210. data/sig/nfe/resources/dto/legal_person.rbs +18 -0
  1211. data/sig/nfe/resources/dto/natural_person.rbs +17 -0
  1212. data/sig/nfe/resources/dto/natural_person_lookup/natural_person_status_response.rbs +15 -0
  1213. data/sig/nfe/resources/dto/nfe_file_resource.rbs +13 -0
  1214. data/sig/nfe/resources/dto/product_invoice.rbs +26 -0
  1215. data/sig/nfe/resources/dto/product_invoice_query/product_invoice_details.rbs +53 -0
  1216. data/sig/nfe/resources/dto/product_invoice_query/product_invoice_events_response.rbs +12 -0
  1217. data/sig/nfe/resources/dto/service_invoice.rbs +30 -0
  1218. data/sig/nfe/resources/dto/state_taxes/nfe_state_tax.rbs +17 -0
  1219. data/sig/nfe/resources/dto/tax_codes/tax_code_paginated_response.rbs +23 -0
  1220. data/sig/nfe/resources/dto/webhook.rbs +18 -0
  1221. data/sig/nfe/resources/inbound_product_invoices.rbs +36 -0
  1222. data/sig/nfe/resources/legal_entity_lookup.rbs +13 -0
  1223. data/sig/nfe/resources/legal_people.rbs +22 -0
  1224. data/sig/nfe/resources/natural_people.rbs +22 -0
  1225. data/sig/nfe/resources/natural_person_lookup.rbs +10 -0
  1226. data/sig/nfe/resources/product_invoice_query.rbs +13 -0
  1227. data/sig/nfe/resources/product_invoices.rbs +39 -0
  1228. data/sig/nfe/resources/product_invoices_rtc.rbs +38 -0
  1229. data/sig/nfe/resources/responses/product_invoice_issued.rbs +13 -0
  1230. data/sig/nfe/resources/responses/product_invoice_pending.rbs +14 -0
  1231. data/sig/nfe/resources/responses/product_invoice_rtc_issued.rbs +13 -0
  1232. data/sig/nfe/resources/responses/product_invoice_rtc_pending.rbs +14 -0
  1233. data/sig/nfe/resources/responses/service_invoice_issued.rbs +13 -0
  1234. data/sig/nfe/resources/responses/service_invoice_pending.rbs +14 -0
  1235. data/sig/nfe/resources/responses/service_invoice_rtc_issued.rbs +13 -0
  1236. data/sig/nfe/resources/responses/service_invoice_rtc_pending.rbs +14 -0
  1237. data/sig/nfe/resources/service_invoices.rbs +41 -0
  1238. data/sig/nfe/resources/service_invoices_rtc.rbs +21 -0
  1239. data/sig/nfe/resources/state_taxes.rbs +22 -0
  1240. data/sig/nfe/resources/tax_calculation.rbs +18 -0
  1241. data/sig/nfe/resources/tax_codes.rbs +17 -0
  1242. data/sig/nfe/resources/transportation_invoices.rbs +23 -0
  1243. data/sig/nfe/resources/webhooks.rbs +24 -0
  1244. data/sig/nfe/results.rbs +22 -0
  1245. data/sig/nfe/version.rbs +3 -0
  1246. data/sig/nfe/webhook.rbs +20 -0
  1247. data/sig/nfe/webhook_event.rbs +13 -0
  1248. data/sig/nfe.rbs +2 -0
  1249. metadata +1327 -61
  1250. data/.gitignore +0 -11
  1251. data/.rspec +0 -2
  1252. data/.ruby-gemset +0 -1
  1253. data/.ruby-version +0 -1
  1254. data/.travis.yml +0 -4
  1255. data/Gemfile +0 -4
  1256. data/Rakefile +0 -6
  1257. data/bin/console +0 -14
  1258. data/bin/setup +0 -7
  1259. data/lib/data/ssl-bundle.crt +0 -3738
  1260. data/lib/nfe/api_operations/cancel.rb +0 -15
  1261. data/lib/nfe/api_operations/create.rb +0 -15
  1262. data/lib/nfe/api_operations/delete.rb +0 -16
  1263. data/lib/nfe/api_operations/download.rb +0 -22
  1264. data/lib/nfe/api_operations/list.rb +0 -15
  1265. data/lib/nfe/api_operations/retrieve.rb +0 -16
  1266. data/lib/nfe/api_operations/update.rb +0 -22
  1267. data/lib/nfe/api_resource.rb +0 -84
  1268. data/lib/nfe/company.rb +0 -23
  1269. data/lib/nfe/errors/nfe_error.rb +0 -12
  1270. data/lib/nfe/legal_people.rb +0 -24
  1271. data/lib/nfe/natural_people.rb +0 -24
  1272. data/lib/nfe/nfe_object.rb +0 -111
  1273. data/lib/nfe/service_invoice.rb +0 -27
  1274. data/lib/nfe/util.rb +0 -31
  1275. data/nfe.gemspec +0 -36
data/MIGRATION.md ADDED
@@ -0,0 +1,793 @@
1
+ # Guia de migração — `0.x` → `1.0`
2
+
3
+ > ⚠️ A `v1.0.0` é uma **reescrita greenfield, sem camada de compatibilidade**.
4
+ > Nenhum símbolo da série `0.x` foi mantido. Não existe modo de transição, alias
5
+ > ou shim: o código `0.x` **não compila** contra a `1.0`. Migre de forma
6
+ > deliberada, recurso a recurso.
7
+
8
+ A `0.x` está **congelada** no branch `0.x-legacy` (sem backports — correções e
9
+ novos recursos só na `1.0+`). O branch `master` passa a ser a `v1`.
10
+
11
+ ## Sumário
12
+
13
+ A `1.0` substitui o estado global por instância (`Nfe.api_key`,
14
+ `Nfe::ServiceInvoice.company_id`) por um **cliente único** (`Nfe::Client`),
15
+ remove a dependência `rest-client` (agora **zero dependências de runtime**,
16
+ apenas a stdlib), exige **Ruby 3.2+**, troca os objetos dinâmicos por
17
+ **value objects imutáveis** (`Data.define`, `snake_case`) e introduz uma
18
+ **hierarquia de erros tipada** sob `Nfe::Error`. A emissão de notas passa a ter
19
+ um contrato **assíncrono explícito** (resposta `202` → `Pending`/`Issued`).
20
+
21
+ ---
22
+
23
+ ## 1. Visão geral das mudanças
24
+
25
+ | Tema | `0.x` (legado) | `1.0` |
26
+ |---|---|---|
27
+ | Entrada | API global: `Nfe.api_key("...")` + estado por classe | Cliente único: `Nfe::Client.new(api_key: "...")` |
28
+ | Configuração | `Nfe.configure { \|c\| c.url = ...; c.user_agent = ... }` | argumentos do construtor de `Nfe::Client` / `Nfe::Configuration` |
29
+ | Escopo de empresa | `Nfe::ServiceInvoice.company_id("...")` (estado mutável por classe) | `company_id:` por chamada |
30
+ | Roteamento de host | uma única `configuration.url` global | host **roteado por recurso** (multi-host automático) |
31
+ | Segunda chave de API | inexistente | `data_api_key:` com fallback para `api_key` |
32
+ | HTTP | dependência `rest-client` | zero deps — `Net::HTTP` da stdlib |
33
+ | Modelos | `NfeObject` dinâmico (`method_missing`, `reflesh_object`) | value objects imutáveis (`Data.define`), `snake_case` |
34
+ | Ruby | 2.x | 3.2 / 3.3 / 3.4 |
35
+ | Erros | `Nfe::NfeError` único (`http_status`, `json_message`) | hierarquia tipada sob `Nfe::Error` |
36
+ | Emissão | `create` retornava o objeto (sem distinção de `202`) | `create` retorna `*Pending` (202) **ou** `*Issued` (201) |
37
+ | Downloads | `download(id, :pdf).body` (objeto RestClient) | `String` binária (`ASCII-8BIT`) — exceto `product_invoices` (→ `NfeFileResource`) |
38
+ | Webhooks | esquema legado documentado (`X-NFe-Signature` / SHA-256) — **errado** | `X-Hub-Signature` + HMAC-SHA1 sobre os bytes crus |
39
+ | Thread-safety | estado global compartilhado (não seguro) | um `Nfe::Client` é seguro para compartilhar entre threads |
40
+
41
+ ---
42
+
43
+ ## 2. Instalação
44
+
45
+ Mudança de major — quebra intencional.
46
+
47
+ ```ruby
48
+ # 0.x — Gemfile
49
+ gem "nfe-io", "~> 0.3"
50
+
51
+ # 1.0 — Gemfile
52
+ gem "nfe-io", "~> 1.0"
53
+ ```
54
+
55
+ ```ruby
56
+ # require permanece igual
57
+ require "nfe-io" # ou require "nfe"
58
+ ```
59
+
60
+ A `1.0` **não declara nenhuma dependência de runtime**. As bibliotecas
61
+ `rest-client` e `json` (gem) deixam de ser exigidas; a `1.0` usa apenas a
62
+ biblioteca padrão: `net/http`, `json`, `openssl`, `uri`, `securerandom`,
63
+ `stringio`, `time`, `zlib`, `cgi`, `date`, `base64`.
64
+
65
+ ## 3. Versão do Ruby
66
+
67
+ | | `0.x` | `1.0` |
68
+ |---|---|---|
69
+ | Ruby mínimo | 2.x | **3.2** (`required_ruby_version = ">= 3.2"`) |
70
+ | Testado em CI | — | 3.2, 3.3, 3.4 |
71
+
72
+ A `1.0` usa `Data.define` (Ruby 3.2+), métodos de endpoint de uma linha
73
+ (`def x = ...`) e argumentos nomeados de forma generalizada. Não há
74
+ compatibilidade com Ruby 2.x.
75
+
76
+ ---
77
+
78
+ ## 4. Configuração
79
+
80
+ ### 4.1 Chave de API e cliente
81
+
82
+ Na `0.x`, a chave era um estado **global de processo** e a empresa um estado
83
+ **mutável por classe**. Na `1.0`, ambos são explícitos: a chave vai no
84
+ construtor do `Nfe::Client` e a empresa em cada chamada.
85
+
86
+ ```ruby
87
+ # 0.x — estado global + estado por classe
88
+ Nfe.api_key("c73d49f9649046eeba36dcf69f6334fd")
89
+ Nfe::ServiceInvoice.company_id("55df4dc6b6cd9007e4f13ee8")
90
+
91
+ # 1.0 — cliente único; nenhum estado global
92
+ client = Nfe::Client.new(api_key: "c73d49f9649046eeba36dcf69f6334fd")
93
+ ```
94
+
95
+ Construtor completo (todos os argumentos são nomeados, com os defaults reais):
96
+
97
+ ```ruby
98
+ client = Nfe::Client.new(
99
+ api_key: "...", # chave principal; fallback ENV NFE_API_KEY
100
+ data_api_key: nil, # chave de dados; fallback ENV NFE_DATA_API_KEY
101
+ environment: :production, # SÍMBOLO :production|:development (reservado p/ uso futuro)
102
+ timeout: 30, # read timeout (segundos)
103
+ max_retries: 3, # tentativas após a inicial
104
+ logger: nil, # objeto com #info/#warn/#error
105
+ user_agent_suffix: nil # sufixo anexado ao User-Agent do SDK
106
+ )
107
+ ```
108
+
109
+ > **`environment:` está reservado para uso futuro.** Hoje é validado mas não
110
+ > altera endpoints, chaves ou comportamento. A separação produção/teste
111
+ > (homologação) é definida na configuração da sua conta em https://app.nfe.io
112
+ > (lado servidor) — não pela chave de API nem pelo SDK; não existe "URL de
113
+ > sandbox". É um **símbolo** (`:production`), não uma string.
114
+
115
+ #### Fallback por variável de ambiente
116
+
117
+ A chave pode vir do argumento **ou** do ambiente — o argumento explícito sempre
118
+ vence; um valor vazio é tratado como ausente.
119
+
120
+ ```ruby
121
+ ENV["NFE_API_KEY"] # usado por api_key quando o argumento é nil/vazio
122
+ ENV["NFE_DATA_API_KEY"] # usado por data_api_key quando o argumento é nil/vazio
123
+ ```
124
+
125
+ #### Configuração avançada
126
+
127
+ Argumentos que não estão no atalho do `Client` (como `open_timeout`,
128
+ `base_url_overrides`, `ca_file`, `ca_path`, `proxy`) vivem em
129
+ `Nfe::Configuration`. Monte a configuração e injete-a:
130
+
131
+ ```ruby
132
+ config = Nfe::Configuration.new(
133
+ api_key: "...",
134
+ open_timeout: 10, # connect timeout (s)
135
+ base_url_overrides: { main: "https://api.exemplo" }, # escape hatch por família
136
+ ca_file: "/caminho/ca-bundle.crt", # ADICIONA CAs ao trust store
137
+ proxy: "http://proxy.interno:3128"
138
+ )
139
+ client = Nfe::Client.new(configuration: config)
140
+ # quando configuration: é passado, os demais atalhos do Client são ignorados.
141
+ ```
142
+
143
+ > **TLS:** `ca_file`/`ca_path` só **adicionam/substituem** o bundle de CAs usado
144
+ > para verificar o servidor. **Não existe** API para desativar a verificação do
145
+ > peer (sem `VERIFY_NONE`, sem `insecure_ssl`).
146
+
147
+ ### 4.2 Configuração global → por instância
148
+
149
+ | `0.x` | `1.0` |
150
+ |---|---|
151
+ | `Nfe.api_key("...")` | `Nfe::Client.new(api_key: "...")` |
152
+ | `Nfe.configure { \|c\| c.url = "..." }` | `Nfe::Configuration.new(base_url_overrides: { ... })` |
153
+ | `Nfe.configure { \|c\| c.user_agent = "..." }` | `Nfe::Client.new(user_agent_suffix: "...")` |
154
+ | `Nfe.configuration` / `Nfe.access_keys` | (removidos — sem estado global) |
155
+ | `Nfe::Configuration#url` (uma URL única) | host roteado por recurso (ver §4.4) |
156
+
157
+ ### 4.3 Escopo de empresa: por classe → por chamada
158
+
159
+ ```ruby
160
+ # 0.x — estado mutável por classe (não seguro entre threads)
161
+ Nfe::ServiceInvoice.company_id("55df4dc6b6cd9007e4f13ee8")
162
+ Nfe::ServiceInvoice.create(params)
163
+
164
+ # 1.0 — company_id é argumento de cada chamada
165
+ client.service_invoices.create(company_id: "55df4dc6b6cd9007e4f13ee8", data: { ... })
166
+ ```
167
+
168
+ ### 4.4 URL global → roteamento por recurso
169
+
170
+ Na `0.x` havia uma única `configuration.url` (`https://api.nfe.io`). Na `1.0`
171
+ **cada recurso declara sua família** e o host é resolvido automaticamente — você
172
+ não monta mais URLs.
173
+
174
+ | Família / host | Recursos roteados |
175
+ |---|---|
176
+ | `https://api.nfe.io` (`/v1`) | `service_invoices`, `companies`, `legal_people`, `natural_people`, `webhooks`, `service_invoices_rtc` |
177
+ | `https://api.nfse.io` (`/v2`) | `product_invoices`, `consumer_invoices`, `transportation_invoices`, `inbound_product_invoices`, `tax_calculation`, `tax_codes`, `state_taxes`, `product_invoices_rtc` |
178
+ | `https://address.api.nfe.io/v2` | `addresses` |
179
+ | `https://legalentity.api.nfe.io` | `legal_entity_lookup` |
180
+ | `https://naturalperson.api.nfe.io` | `natural_person_lookup` |
181
+ | `https://nfe.api.nfe.io` | `product_invoice_query`, `consumer_invoice_query` |
182
+
183
+ Para sobrescrever um host (ambiente de testes, proxy reverso), use
184
+ `base_url_overrides:` em `Nfe::Configuration` (chave = símbolo da família).
185
+
186
+ ### 4.5 Segunda chave de API (`data_api_key`)
187
+
188
+ Novidade da `1.0`. As **famílias de dados** preferem `data_api_key` e caem para
189
+ `api_key` quando ela não é informada; todas as outras usam `api_key`.
190
+
191
+ ```ruby
192
+ client = Nfe::Client.new(api_key: "EMISSAO", data_api_key: "CONSULTA")
193
+ ```
194
+
195
+ Famílias que usam `data_api_key` (com fallback para `api_key`):
196
+
197
+ - `addresses` (consulta de endereços)
198
+ - `legal_entity_lookup` (consulta de pessoa jurídica)
199
+ - `natural_person_lookup` (consulta de pessoa física)
200
+ - `product_invoice_query` e `consumer_invoice_query` (consulta de NF-e/NFC-e)
201
+
202
+ > ⚠️ A família `:cte` (`api.nfse.io` — emissão de NF-e/NFC-e/CT-e + tax-rules /
203
+ > tax-codes / state-taxes) usa a **`api_key` principal** e **não** é uma família
204
+ > de dados. Isso é uma divergência deliberada do SDK Node (que roteia
205
+ > `api.nfse.io` pela cadeia de fallback da chave de dados) — documentada em
206
+ > `lib/nfe/configuration.rb`.
207
+
208
+ ---
209
+
210
+ ## 5. Mapeamento de classes (`0.x` → acessores da `1.0`)
211
+
212
+ Na `0.x` você chamava métodos de classe diretamente (`Nfe::ServiceInvoice`,
213
+ `Nfe::Company`, ...). Na `1.0` tudo passa pelos **acessores `snake_case`**,
214
+ preguiçosos e memoizados, do `Nfe::Client`.
215
+
216
+ | Classe `0.x` | Acessor `1.0` |
217
+ |---|---|
218
+ | `Nfe::ServiceInvoice` | `client.service_invoices` |
219
+ | `Nfe::Company` | `client.companies` |
220
+ | `Nfe::NaturalPeople` | `client.natural_people` |
221
+ | `Nfe::LegalPeople` | `client.legal_people` |
222
+ | `Nfe::NfeObject` (base dinâmica) | value objects imutáveis (`Nfe::ServiceInvoice`, `Nfe::Company`, ... — apenas leitura) |
223
+ | `Nfe::NfeError` | hierarquia `Nfe::Error` (ver §10) |
224
+
225
+ A `1.0` expõe **19 acessores** (17 canônicos + 2 addons RTC), muito além das
226
+ classes da `0.x`:
227
+
228
+ ```
229
+ service_invoices product_invoice_query legal_entity_lookup
230
+ product_invoices consumer_invoice_query natural_person_lookup
231
+ consumer_invoices companies tax_calculation
232
+ transportation_invoices legal_people tax_codes
233
+ inbound_product_invoices natural_people state_taxes
234
+ webhooks addresses
235
+ service_invoices_rtc product_invoices_rtc (addons RTC)
236
+ ```
237
+
238
+ > ⚠️ Note a colisão de nomes: na `0.x`, `Nfe::ServiceInvoice` e `Nfe::Company`
239
+ > eram classes **ativas** (com métodos de criação). Na `1.0`, `Nfe::ServiceInvoice`
240
+ > e `Nfe::Company` são apenas **value objects de leitura**; o comportamento mora
241
+ > nos acessores `client.service_invoices` / `client.companies`.
242
+
243
+ ---
244
+
245
+ ## 6. Mapeamento de métodos por recurso
246
+
247
+ As notações abaixo refletem as assinaturas reais implementadas. Na `0.x`, os
248
+ recursos compartilhavam operações genéricas (`ApiOperations::Create`, `List`,
249
+ `Retrieve`, `Cancel`, `Update`, `Download`). Na `1.0`, cada método é explícito.
250
+
251
+ ### 6.1 Service invoices (NFS-e) — `client.service_invoices`
252
+
253
+ | `0.x` | `1.0` |
254
+ |---|---|
255
+ | `Nfe::ServiceInvoice.create(params)` | `client.service_invoices.create(company_id:, data:, idempotency_key: nil, request_options: nil)` |
256
+ | `Nfe::ServiceInvoice.list_all(params)` | `client.service_invoices.list(company_id:, **options)` |
257
+ | `Nfe::ServiceInvoice.retrieve(id)` | `client.service_invoices.retrieve(company_id:, invoice_id:)` |
258
+ | `Nfe::ServiceInvoice.cancel(id)` | `client.service_invoices.cancel(company_id:, invoice_id:)` |
259
+ | `Nfe::ServiceInvoice.update(...)` | `client.service_invoices.send_email(company_id:, invoice_id:)` (e demais ações dedicadas) |
260
+ | `Nfe::ServiceInvoice.download(id, :pdf)` | `client.service_invoices.download_pdf(company_id:, invoice_id: nil)` |
261
+ | `Nfe::ServiceInvoice.download(id, :xml)` | `client.service_invoices.download_xml(company_id:, invoice_id: nil)` |
262
+ | — (sem equivalente) | `client.service_invoices.get_status(company_id:, invoice_id:)` → `StatusResult` |
263
+
264
+ Opções de `list`: `page_index`, `page_count`, `issued_begin`, `issued_end`,
265
+ `created_begin`, `created_end`, `has_totals` (paginação **page-style**).
266
+ `download_pdf`/`download_xml` com `invoice_id: nil` baixam o **ZIP** da empresa.
267
+
268
+ ### 6.2 Companies — `client.companies`
269
+
270
+ | `0.x` | `1.0` |
271
+ |---|---|
272
+ | `Nfe::Company.create(params)` | `client.companies.create(data)` |
273
+ | `Nfe::Company.list_all(params)` | `client.companies.list(page_index: 0, page_count: 100)` |
274
+ | — | `client.companies.list_all` / `client.companies.list_each` (auto-paginação) |
275
+ | `Nfe::Company.retrieve(id)` | `client.companies.retrieve(company_id)` |
276
+ | `Nfe::Company.update(...)` | `client.companies.update(company_id, data)` |
277
+ | `Nfe::Company` + `ApiOperations::Delete` (`delete`) | `client.companies.remove(company_id)` → `{ deleted: true, id: }` |
278
+ | — | `client.companies.find_by_tax_number(tax_number)` |
279
+ | — | `client.companies.find_by_name(name)` |
280
+
281
+ Certificado digital (novo na `1.0`):
282
+
283
+ ```ruby
284
+ client.companies.validate_certificate(file:, password:) # local, sem HTTP
285
+ client.companies.upload_certificate(company_id, file:, password:, filename: nil)
286
+ client.companies.replace_certificate(company_id, file:, password:, filename: nil) # alias de upload
287
+ client.companies.get_certificate_status(company_id)
288
+ client.companies.check_certificate_expiration(company_id, threshold_days: 30)
289
+ client.companies.get_companies_with_certificates
290
+ client.companies.get_companies_with_expiring_certificates(threshold_days: 30)
291
+ ```
292
+
293
+ > ⚠️ **`delete` virou `remove`.** Em `companies`, a remoção chama-se `#remove`
294
+ > (paridade com os SDKs Node/PHP), não `#delete`.
295
+
296
+ ### 6.3 Legal people (PJ) — `client.legal_people`
297
+
298
+ | `0.x` | `1.0` |
299
+ |---|---|
300
+ | `Nfe::LegalPeople.company_id(id)` + `list_all` | `client.legal_people.list(company_id)` |
301
+ | `Nfe::LegalPeople.retrieve(id)` | `client.legal_people.retrieve(company_id, legal_person_id)` |
302
+ | — (não existia na `0.x`) | `client.legal_people.create(company_id, data)` |
303
+ | — | `client.legal_people.update(company_id, legal_person_id, data)` |
304
+ | — | `client.legal_people.delete(company_id, legal_person_id)` |
305
+ | — | `client.legal_people.create_batch(company_id, list)` (sequencial) |
306
+ | — | `client.legal_people.find_by_tax_number(company_id, federal_tax_number)` |
307
+
308
+ ### 6.4 Natural people (PF) — `client.natural_people`
309
+
310
+ | `0.x` | `1.0` |
311
+ |---|---|
312
+ | `Nfe::NaturalPeople.company_id(id)` + `list_all` | `client.natural_people.list(company_id)` |
313
+ | `Nfe::NaturalPeople.retrieve(id)` | `client.natural_people.retrieve(company_id, natural_person_id)` |
314
+ | — | `client.natural_people.create(company_id, data)` |
315
+ | — | `client.natural_people.update(company_id, natural_person_id, data)` |
316
+ | — | `client.natural_people.delete(company_id, natural_person_id)` |
317
+ | — | `client.natural_people.create_batch(company_id, list)` |
318
+ | — | `client.natural_people.find_by_tax_number(company_id, federal_tax_number)` |
319
+
320
+ ### 6.5 Recursos novos na `1.0` (sem equivalente na `0.x`)
321
+
322
+ Product invoices (NF-e) — `client.product_invoices`:
323
+
324
+ ```ruby
325
+ create(company_id:, data:, idempotency_key: nil, request_options: nil)
326
+ create_with_state_tax(company_id:, state_tax_id:, data:, idempotency_key: nil, request_options: nil)
327
+ list(company_id:, environment:, **options) # environment: "Production"/"Test" OBRIGATÓRIO
328
+ retrieve(company_id:, invoice_id:)
329
+ cancel(company_id:, invoice_id:, reason: nil)
330
+ list_items(company_id:, invoice_id:, limit: nil, starting_after: nil)
331
+ list_events(company_id:, invoice_id:, limit: nil, starting_after: nil)
332
+ send_correction_letter(company_id:, invoice_id:, reason:) # reason 15..1000 chars
333
+ disable(company_id:, invoice_id:, reason: nil)
334
+ disable_range(company_id:, data:)
335
+ download_pdf / download_xml / download_rejection_xml / download_epec_xml # → NfeFileResource (URI)
336
+ download_correction_letter_pdf / download_correction_letter_xml # → NfeFileResource (URI)
337
+ ```
338
+
339
+ Consumer invoices (NFC-e) — `client.consumer_invoices`: `create`,
340
+ `create_with_state_tax`, `list`, `retrieve`, `cancel`, `list_items`,
341
+ `list_events`, `disable_range`, `download_pdf`, `download_xml`,
342
+ `download_rejection_xml`. (Sem `send_correction_letter`, `download_epec_xml` ou
343
+ `disable` por documento — restrições da legislação para NFC-e.)
344
+
345
+ Transportation invoices (CT-e recebidos) — `client.transportation_invoices`:
346
+ `enable`, `disable`, `get_settings`, `retrieve(company_id:, access_key:)`,
347
+ `download_xml`, `get_event`, `download_event_xml`.
348
+
349
+ Inbound product invoices (NF-e recebidas) — `client.inbound_product_invoices`:
350
+ `enable_auto_fetch`, `disable_auto_fetch`, `get_settings`, `get_details`,
351
+ `get_product_invoice_details`, `get_event_details`,
352
+ `get_product_invoice_event_details`, `get_xml`, `get_event_xml`, `get_pdf`,
353
+ `get_json`, `manifest(company_id:, access_key:, tp_event: 210210)`,
354
+ `reprocess_webhook`.
355
+
356
+ Consultas — `client.product_invoice_query`: `retrieve(access_key)`,
357
+ `download_pdf(access_key)`, `download_xml(access_key)`,
358
+ `list_events(access_key)`. `client.consumer_invoice_query`:
359
+ `retrieve(access_key)`, `download_xml(access_key)`.
360
+
361
+ Lookups (famílias de dados):
362
+
363
+ ```ruby
364
+ client.addresses.lookup_by_postal_code(cep)
365
+ client.addresses.lookup_by_term(term)
366
+ client.addresses.search(filter: nil)
367
+ client.legal_entity_lookup.get_basic_info(cnpj, update_address: nil, update_city_code: nil)
368
+ client.legal_entity_lookup.get_state_tax_info(state, cnpj)
369
+ client.legal_entity_lookup.get_state_tax_for_invoice(state, cnpj)
370
+ client.legal_entity_lookup.get_suggested_state_tax_for_invoice(state, cnpj)
371
+ client.natural_person_lookup.get_status(cpf, birth_date)
372
+ ```
373
+
374
+ Fiscais (família `:cte`):
375
+
376
+ ```ruby
377
+ client.tax_calculation.calculate(tenant_id, request) # request: Hash
378
+ client.tax_codes.list_operation_codes(page_index: nil, page_count: nil)
379
+ client.tax_codes.list_acquisition_purposes(...)
380
+ client.tax_codes.list_issuer_tax_profiles(...)
381
+ client.tax_codes.list_recipient_tax_profiles(...)
382
+ client.state_taxes.list(company_id, starting_after: nil, ending_before: nil, limit: nil)
383
+ client.state_taxes.create(company_id, data)
384
+ client.state_taxes.retrieve(company_id, state_tax_id)
385
+ client.state_taxes.update(company_id, state_tax_id, data)
386
+ client.state_taxes.delete(company_id, state_tax_id)
387
+ ```
388
+
389
+ RTC (Reforma Tributária do Consumo) — addons da `1.0`:
390
+ `client.service_invoices_rtc` (`create`, `retrieve`, `cancel`,
391
+ `download_cancellation_xml`) e `client.product_invoices_rtc` (mesmo conjunto do
392
+ `product_invoices`). O layout RTC é selecionado pela **presença do grupo
393
+ `ibsCbs`** (NFS-e) ou `items[].tax.IBSCBS` (NF-e/NFC-e) no payload — mesmo
394
+ endpoint dos recursos clássicos, sem header/param discriminador.
395
+
396
+ > ⚠️ **`list` de product invoices exige `environment:`.** Em
397
+ > `client.product_invoices.list` e `client.product_invoices_rtc.list`,
398
+ > `environment:` é uma **String separada** (`"Production"`/`"Test"`),
399
+ > **distinta** do `environment:` do `Client` (que é um símbolo e seleciona a
400
+ > chave). Omiti-la levanta `Nfe::InvalidRequestError`.
401
+
402
+ ---
403
+
404
+ ## 7. Remoção do `rest-client`
405
+
406
+ A `0.x` dependia da gem `rest-client`; a `1.0` usa `Net::HTTP` da stdlib. Toda
407
+ exceção do `rest-client` que vazava do SDK desaparece.
408
+
409
+ | `0.x` (`rest-client`) | `1.0` |
410
+ |---|---|
411
+ | `RestClient::Exception` (rede/conexão) | `Nfe::ApiConnectionError` |
412
+ | timeout de conexão/leitura | `Nfe::TimeoutError` (subclasse de `ApiConnectionError`) |
413
+ | `RestClient::ExceptionWithResponse` (HTTP 4xx/5xx) | subclasse de `Nfe::Error` por status (ver §10) |
414
+ | `request.execute` retornando o objeto-resposta | objetos hidratados (`Data.define`) ou bytes (downloads) |
415
+
416
+ ```ruby
417
+ # 0.x
418
+ begin
419
+ Nfe::ServiceInvoice.create(params)
420
+ rescue RestClient::Exception => e
421
+ # tratar erro de rede/HTTP
422
+ end
423
+
424
+ # 1.0
425
+ begin
426
+ client.service_invoices.create(company_id:, data:)
427
+ rescue Nfe::ApiConnectionError => e # rede (inclui TimeoutError)
428
+ # ...
429
+ rescue Nfe::Error => e # qualquer erro do SDK
430
+ # ...
431
+ end
432
+ ```
433
+
434
+ ---
435
+
436
+ ## 8. Tratamento de erros
437
+
438
+ A `0.x` tinha um único `Nfe::NfeError(http_status, json_message, http_message,
439
+ message)`. A `1.0` traz uma **hierarquia tipada** sob `Nfe::Error` — capture a
440
+ base para pegar toda a família, ou subclasses específicas para tratar casos.
441
+
442
+ ```ruby
443
+ begin
444
+ client.service_invoices.create(company_id:, data:)
445
+ rescue Nfe::RateLimitError => e
446
+ sleep(e.retry_after || 5); retry
447
+ rescue Nfe::InvalidRequestError => e
448
+ logger.warn(e.to_h) # to_h é seguro para log (sem corpo/headers crus)
449
+ rescue Nfe::Error => e
450
+ # rede comum: status_code, request_id, error_code, response_body, response_headers
451
+ end
452
+ ```
453
+
454
+ | Classe `1.0` | Status HTTP | Quando |
455
+ |---|---|---|
456
+ | `Nfe::Error` | — | base de toda a hierarquia |
457
+ | `Nfe::AuthenticationError` | 401 | chave ausente ou inválida |
458
+ | `Nfe::AuthorizationError` | 403 | chave válida, mas sem permissão |
459
+ | `Nfe::InvalidRequestError` | 400 / 422 | requisição malformada ou inválida |
460
+ | `Nfe::NotFoundError` | 404 | recurso inexistente |
461
+ | `Nfe::ConflictError` | 409 | conflito com o estado atual |
462
+ | `Nfe::RateLimitError` | 429 | excesso de requisições (`#retry_after`) |
463
+ | `Nfe::ServerError` | 5xx | falha do servidor |
464
+ | `Nfe::ApiConnectionError` | — | falha de rede (DNS, conexão, TLS, reset) |
465
+ | `Nfe::TimeoutError` | — | timeout (subclasse de `ApiConnectionError`) |
466
+ | `Nfe::SignatureVerificationError` | — | assinatura de webhook inválida ou payload não-JSON |
467
+ | `Nfe::ConfigurationError` | — | SDK mal configurado (chave ausente, `environment` inválido) — antes de qualquer HTTP |
468
+ | `Nfe::InvoiceProcessingError` | — | resposta `202` sem `Location` utilizável |
469
+
470
+ Atributos disponíveis em erros derivados de resposta: `status_code`,
471
+ `request_id`, `error_code`, `response_body`, `response_headers`. O método
472
+ `#to_h` é **seguro para log** (omite `response_body`/`response_headers`, que
473
+ podem conter segredos/PII).
474
+
475
+ > ⚠️ Nomes que **não existem**: `Nfe::ConnectionError`, `Nfe::ValidationError`,
476
+ > `Nfe::PollingTimeoutError`. Use os nomes da tabela acima.
477
+
478
+ ---
479
+
480
+ ## 9. Respostas `202` (emissão assíncrona)
481
+
482
+ Na `0.x`, `create` simplesmente devolvia o objeto, sem distinguir emissão
483
+ síncrona de assíncrona. Na `1.0` o contrato é explícito: `create` retorna um
484
+ **resultado discriminado**.
485
+
486
+ - **HTTP 202** → `*Pending` (`invoice_id`, `location`; `pending? == true`,
487
+ `issued? == false`). A nota está enfileirada; o `invoice_id` vem do header
488
+ `Location`.
489
+ - **HTTP 201/200** → `*Issued` (`resource`; `issued? == true`,
490
+ `pending? == false`). A nota foi materializada na hora.
491
+
492
+ (Recursos: `ServiceInvoicePending`/`ServiceInvoiceIssued`,
493
+ `ProductInvoicePending`/`ProductInvoiceIssued`, e as variantes Consumer e RTC.)
494
+
495
+ ```ruby
496
+ result = client.service_invoices.create(company_id:, data:)
497
+
498
+ case result
499
+ in Nfe::Resources::ServiceInvoicePending => pending
500
+ # acompanhar via polling (ver abaixo)
501
+ in Nfe::Resources::ServiceInvoiceIssued => issued
502
+ nota = issued.resource
503
+ end
504
+ ```
505
+
506
+ ### Loop de polling
507
+
508
+ Não há `create_and_wait`/`create_batch` na `1.0` (ver §12). Faça o polling
509
+ manualmente com `Nfe::FlowStatus.terminal?`:
510
+
511
+ ```ruby
512
+ result = client.service_invoices.create(company_id:, data:)
513
+
514
+ if result.pending?
515
+ invoice = nil
516
+ loop do
517
+ invoice = client.service_invoices.retrieve(
518
+ company_id:, invoice_id: result.invoice_id
519
+ )
520
+ break if Nfe::FlowStatus.terminal?(invoice.flow_status)
521
+ sleep 2
522
+ end
523
+ # invoice.flow_status ∈ Issued | IssueFailed | Cancelled | CancelFailed
524
+ end
525
+ ```
526
+
527
+ Estados **terminais** (param o polling): `Issued`, `IssueFailed`, `Cancelled`,
528
+ `CancelFailed`. Para `service_invoices` há ainda o atalho
529
+ `client.service_invoices.get_status(company_id:, invoice_id:)`, que devolve um
530
+ `StatusResult` com `#complete?` e `#failed?` (derivado de `retrieve`, sem HTTP
531
+ extra além do `retrieve`).
532
+
533
+ ---
534
+
535
+ ## 10. Verificação de webhook
536
+
537
+ > ⚠️ A documentação **antiga** falava em header `X-NFe-Signature`, HMAC-**SHA256**
538
+ > e Base64. **Isso está errado** para o SDK `1.0` (e para o que a NFE.io de fato
539
+ > envia). O esquema correto é `X-Hub-Signature` + HMAC-**SHA1** sobre os **bytes
540
+ > crus** do corpo, em hex.
541
+
542
+ A verificação é **estática** (não precisa de `Nfe::Client`, não lê configuração,
543
+ não faz rede):
544
+
545
+ ```ruby
546
+ raw = request.body.read # BYTES CRUS — leia ANTES de parsear o JSON
547
+ sig = request.get_header("HTTP_X_HUB_SIGNATURE") # ou request.headers["X-Hub-Signature"]
548
+
549
+ if Nfe::Webhook.verify_signature(payload: raw, signature: sig, secret: ENV["NFE_WEBHOOK_SECRET"])
550
+ event = Nfe::Webhook.construct_event(payload: raw, signature: sig, secret: ENV["NFE_WEBHOOK_SECRET"])
551
+ # event.type, event.data, event.id, event.created_at
552
+ end
553
+ ```
554
+
555
+ Pontos críticos:
556
+
557
+ - **Bytes crus.** A NFE.io assina exatamente os bytes que entregou. Leia
558
+ `request.body.read` (ou `request.raw_post`) **antes** de parsear. **Nunca**
559
+ re-serialize um objeto parseado (`payload.to_json`) — ordem de chaves e espaços
560
+ diferem dos bytes assinados e a verificação falha de forma imprevisível.
561
+ - **HMAC-SHA1, hex, prefixo `sha1=`.** Comparação **case-insensitive** e
562
+ **timing-safe** (`OpenSSL.secure_compare`). Um header `sha256=` é rejeitado.
563
+ - **`verify_signature` NUNCA levanta exceção:** retorna `false` para qualquer
564
+ entrada ausente, malformada, algoritmo errado ou não-hex.
565
+ - **`construct_event` levanta `Nfe::SignatureVerificationError`** quando a
566
+ assinatura não confere ou o payload não é JSON válido.
567
+ - **Validade ≠ frescor.** A NFE.io não envia timestamp/nonce anti-replay. Uma
568
+ assinatura válida prova autenticidade, **não** frescor — seus handlers
569
+ **precisam ser idempotentes** e deduplicar por `event.id` (ou pelo id da nota).
570
+
571
+ Há ainda o atalho `client.webhooks.verify_signature(payload:, signature:,
572
+ secret:)`, mera delegação a `Nfe::Webhook` (a API canônica é o módulo).
573
+
574
+ ---
575
+
576
+ ## 11. Downloads
577
+
578
+ Na `0.x`, `download(id, :pdf)` retornava o objeto de resposta do `rest-client`
579
+ (você acessava `.body`). Na `1.0`, os métodos de download retornam a **`String`
580
+ binária** diretamente (encoding `ASCII-8BIT`), pronta para `File.binwrite` ou
581
+ `send_data`.
582
+
583
+ ```ruby
584
+ # 0.x
585
+ bytes = Nfe::ServiceInvoice.download("59443a...", :pdf).body
586
+
587
+ # 1.0 — String binária (bytes), sem .body
588
+ bytes = client.service_invoices.download_pdf(company_id: "55df...", invoice_id: "59443a...")
589
+ File.binwrite("nota.pdf", bytes)
590
+ ```
591
+
592
+ Retornam `String` binária (`ASCII-8BIT`): `service_invoices`,
593
+ `consumer_invoices`, `transportation_invoices`, `inbound_product_invoices`,
594
+ `product_invoice_query`, `consumer_invoice_query` (e
595
+ `service_invoices_rtc.download_cancellation_xml`).
596
+
597
+ > ⚠️ **Exceção — `product_invoices` e `product_invoices_rtc`.** Seus
598
+ > `download_*` **não** retornam bytes: retornam um `Nfe::NfeFileResource` (value
599
+ > object com `uri`, `name`, `content_type`, `size`). O host `api.nfse.io/v2`
600
+ > responde com um envelope JSON `{ uri }` apontando para o arquivo — baixe os
601
+ > bytes a partir de `resource.uri` por conta própria.
602
+
603
+ ```ruby
604
+ file = client.product_invoices.download_pdf(company_id:, invoice_id:)
605
+ file.uri # => "https://.../danfe.pdf" (não são bytes)
606
+ ```
607
+
608
+ ---
609
+
610
+ ## 12. Recursos diferidos na `1.0`
611
+
612
+ Funcionalidades que existiam (ou se esperariam) e foram **deliberadamente
613
+ adiadas** na `1.0`, com o respectivo contorno:
614
+
615
+ | Diferido | Contorno na `1.0` |
616
+ |---|---|
617
+ | `create_and_wait` (emitir e aguardar) | emitir + loop de polling com `Nfe::FlowStatus.terminal?` (ver §9) |
618
+ | `create_batch` para notas | iterar `create` na sua aplicação (há `create_batch` apenas em `legal_people`/`natural_people`, e sequencial) |
619
+ | `getStatus` como chamada dedicada | derivado de `retrieve`: `client.service_invoices.get_status(...)` (sem HTTP extra) ou `Nfe::FlowStatus.terminal?(invoice.flow_status)` |
620
+ | upload/replace de certificado via multipart "rico" | `upload_certificate` / `replace_certificate` já existem (multipart simples + validação local fail-fast); não há ainda fluxo multipart estendido |
621
+ | `validate` de certificado server-side | `validate_certificate(file:, password:)` valida **localmente** (sem HTTP) |
622
+
623
+ ---
624
+
625
+ ## Apêndice A — Exemplo vanilla, lado a lado (emissão de NFS-e + polling)
626
+
627
+ ### `0.x`
628
+
629
+ ```ruby
630
+ require "nfe-io"
631
+
632
+ Nfe.api_key("c73d49f9649046eeba36dcf69f6334fd")
633
+ Nfe::ServiceInvoice.company_id("55df4dc6b6cd9007e4f13ee8")
634
+
635
+ invoice = Nfe::ServiceInvoice.create(
636
+ borrower: { name: "Cliente Exemplo", federalTaxNumber: 12_345_678_000_199 },
637
+ cityServiceCode: "2690",
638
+ description: "Serviço de consultoria",
639
+ servicesAmount: 100.0
640
+ )
641
+
642
+ # sem distinção de 202; sem contrato de polling padronizado
643
+ pdf = Nfe::ServiceInvoice.download(invoice["id"], :pdf).body
644
+ File.open("nota.pdf", "wb") { |f| f.write(pdf) }
645
+ ```
646
+
647
+ ### `1.0`
648
+
649
+ ```ruby
650
+ require "nfe-io"
651
+
652
+ client = Nfe::Client.new(api_key: "c73d49f9649046eeba36dcf69f6334fd")
653
+ company_id = "55df4dc6b6cd9007e4f13ee8"
654
+
655
+ result = client.service_invoices.create(
656
+ company_id: company_id,
657
+ data: {
658
+ borrower: { name: "Cliente Exemplo", federalTaxNumber: "12345678000199" },
659
+ cityServiceCode: "2690",
660
+ description: "Serviço de consultoria",
661
+ servicesAmount: 100.0
662
+ }
663
+ )
664
+
665
+ invoice =
666
+ if result.pending?
667
+ loop do
668
+ current = client.service_invoices.retrieve(
669
+ company_id: company_id, invoice_id: result.invoice_id
670
+ )
671
+ break current if Nfe::FlowStatus.terminal?(current.flow_status)
672
+ sleep 2
673
+ end
674
+ else
675
+ result.resource
676
+ end
677
+
678
+ unless invoice.flow_status == "Issued"
679
+ raise "emissão falhou: #{invoice.flow_status}"
680
+ end
681
+
682
+ bytes = client.service_invoices.download_pdf(
683
+ company_id: company_id, invoice_id: invoice.id
684
+ )
685
+ File.binwrite("nota.pdf", bytes)
686
+ ```
687
+
688
+ ---
689
+
690
+ ## Apêndice B — Exemplo Rails
691
+
692
+ ### Initializer (`config/initializers/nfe.rb`) — `Nfe::Client` memoizado
693
+
694
+ Um único `Nfe::Client` é **seguro para compartilhar entre threads** (cada
695
+ acessor de recurso e cada transport é memoizado sob `Mutex`). Memoize-o:
696
+
697
+ ```ruby
698
+ # config/initializers/nfe.rb
699
+ require "nfe-io"
700
+
701
+ module NfeClient
702
+ def self.instance
703
+ @instance ||= Nfe::Client.new(
704
+ api_key: Rails.application.credentials.dig(:nfe, :api_key),
705
+ data_api_key: Rails.application.credentials.dig(:nfe, :data_api_key),
706
+ environment: Rails.env.production? ? :production : :development,
707
+ logger: Rails.logger
708
+ )
709
+ end
710
+ end
711
+ ```
712
+
713
+ ### Controller de webhook — validando sobre `request.raw_post`
714
+
715
+ ```ruby
716
+ # app/controllers/nfe_webhooks_controller.rb
717
+ class NfeWebhooksController < ApplicationController
718
+ skip_before_action :verify_authenticity_token
719
+
720
+ def create
721
+ raw = request.raw_post # BYTES CRUS — não parsear antes
722
+ sig = request.headers["X-Hub-Signature"]
723
+ secret = Rails.application.credentials.dig(:nfe, :webhook_secret)
724
+
725
+ event = Nfe::Webhook.construct_event(payload: raw, signature: sig, secret: secret)
726
+
727
+ # idempotência: a NFE.io não envia anti-replay — deduplique por event.id
728
+ return head(:ok) if WebhookReceipt.exists?(event_id: event.id)
729
+ WebhookReceipt.create!(event_id: event.id, event_type: event.type)
730
+
731
+ ProcessNfeEventJob.perform_later(event.type, event.data)
732
+ head :ok
733
+ rescue Nfe::SignatureVerificationError
734
+ head :bad_request
735
+ end
736
+ end
737
+ ```
738
+
739
+ ---
740
+
741
+ ## Resumo de breaking changes
742
+
743
+ **Entrada e configuração**
744
+
745
+ - Removido o estado global: `Nfe.api_key`, `Nfe.configure`, `Nfe.configuration`,
746
+ `Nfe.access_keys`. Use `Nfe::Client.new(api_key:)`.
747
+ - Removido o estado mutável por classe (`Nfe::ServiceInvoice.company_id(...)`).
748
+ `company_id:` agora é argumento de cada chamada.
749
+ - Removida a URL global única; o host é roteado por recurso (multi-host).
750
+ - Novo `data_api_key:` (com fallback para `api_key`) para famílias de dados.
751
+ - `environment:` (`:production`/`:development`) é um **símbolo reservado para uso
752
+ futuro** — hoje sem efeito; produção/teste é definido na conta em app.nfe.io.
753
+
754
+ **Dependências e runtime**
755
+
756
+ - Removida a dependência `rest-client` (e a gem `json`). Zero deps de runtime.
757
+ - Ruby mínimo passa de 2.x para **3.2**.
758
+
759
+ **Modelos e API**
760
+
761
+ - `NfeObject` dinâmico → value objects imutáveis (`Data.define`), atributos
762
+ `snake_case`.
763
+ - `Nfe::ServiceInvoice`/`Nfe::Company` deixam de ser classes ativas e viram
764
+ value objects de leitura; o comportamento mora nos acessores do `Client`.
765
+ - `companies` usa `#remove` (não `#delete`).
766
+ - `create` de notas retorna um resultado discriminado `*Pending`/`*Issued`
767
+ (antes retornava o objeto direto).
768
+ - `list` de `product_invoices`/`product_invoices_rtc` exige `environment:`
769
+ (String `"Production"`/`"Test"`).
770
+
771
+ **Erros**
772
+
773
+ - `Nfe::NfeError` único → hierarquia tipada sob `Nfe::Error`.
774
+ - Exceções do `rest-client` → `Nfe::ApiConnectionError`/`Nfe::TimeoutError`.
775
+
776
+ **Webhooks**
777
+
778
+ - Esquema corrigido para `X-Hub-Signature` + HMAC-SHA1 sobre bytes crus
779
+ (documentação antiga com `X-NFe-Signature`/SHA-256/Base64 estava errada).
780
+ - Handlers precisam ser idempotentes (sem anti-replay no provedor).
781
+
782
+ **Downloads**
783
+
784
+ - Retorno passa a ser `String` binária (`ASCII-8BIT`), sem `.body`.
785
+ - Exceção: `product_invoices`/`product_invoices_rtc` retornam
786
+ `Nfe::NfeFileResource` (`uri`), não bytes.
787
+
788
+ **Recursos diferidos**
789
+
790
+ - Sem `create_and_wait`/`create_batch` para notas; faça polling com
791
+ `Nfe::FlowStatus.terminal?`.
792
+ </content>
793
+ </invoke>