factpulse 1.0.0 → 1.0.8

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 (194) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -3
  3. data/Gemfile.lock +1 -1
  4. data/README.md +73 -119
  5. data/docs/AFNORPDPPADirectoryServiceApi.md +31 -1148
  6. data/docs/BodyAjouterFichierApiV1ChorusProTransversesAjouterFichierPost.md +22 -0
  7. data/docs/BodyCompleterFactureApiV1ChorusProFacturesCompleterPost.md +22 -0
  8. data/docs/BodyListerServicesStructureApiV1ChorusProStructuresIdStructureCppServicesGet.md +20 -0
  9. data/docs/BodyRechercherFacturesDestinataireApiV1ChorusProFacturesRechercherDestinatairePost.md +22 -0
  10. data/docs/BodyRechercherFacturesFournisseurApiV1ChorusProFacturesRechercherFournisseurPost.md +22 -0
  11. data/docs/BodyRecyclerFactureApiV1ChorusProFacturesRecyclerPost.md +22 -0
  12. data/docs/BodyTelechargerGroupeFacturesApiV1ChorusProFacturesTelechargerGroupePost.md +22 -0
  13. data/docs/BodyTraiterFactureRecueApiV1ChorusProFacturesTraiterFactureRecuePost.md +22 -0
  14. data/docs/BodyValideurConsulterFactureApiV1ChorusProFacturesValideurConsulterPost.md +22 -0
  15. data/docs/BodyValideurRechercherFacturesApiV1ChorusProFacturesValideurRechercherPost.md +22 -0
  16. data/docs/BodyValideurTraiterFactureApiV1ChorusProFacturesValideurTraiterPost.md +22 -0
  17. data/docs/ChorusProApi.md +70 -66
  18. data/docs/Destinataire.md +0 -4
  19. data/docs/{MontantAPayer.md → DirectionFlux.md} +2 -2
  20. data/docs/FactureEnrichieInfoInput.md +32 -0
  21. data/docs/{FactureEnrichieInfo.md → FactureEnrichieInfoOutput.md} +2 -2
  22. data/docs/FactureFacturX.md +0 -2
  23. data/docs/FluxResume.md +32 -0
  24. data/docs/Fournisseur.md +0 -2
  25. data/docs/LigneDePoste.md +2 -2
  26. data/docs/LigneDePosteMontantTotalLigneHt.md +15 -0
  27. data/docs/LigneDeTVA.md +2 -2
  28. data/docs/MontantTotal.md +5 -5
  29. data/docs/MontantTotalMontantRemiseGlobaleTtc.md +15 -0
  30. data/docs/{MontantBaseHt.md → Montantapayer.md} +2 -2
  31. data/docs/Montantbaseht.md +15 -0
  32. data/docs/Montanthttotal.md +15 -0
  33. data/docs/Montantttctotal.md +15 -0
  34. data/docs/{ErrorLevel.md → Montanttva.md} +2 -2
  35. data/docs/{ErrorSource.md → Montanttva1.md} +2 -2
  36. data/docs/Montantunitaireht.md +15 -0
  37. data/docs/OptionsProcessing.md +1 -1
  38. data/docs/PDPCredentials.md +24 -0
  39. data/docs/ProcessingEndpointsUnifisApi.md +147 -0
  40. data/docs/{StatutCelery.md → ProfilFlux.md} +2 -2
  41. data/docs/QuotaInfo.md +26 -0
  42. data/docs/ReponseHealthcheckAFNOR.md +22 -0
  43. data/docs/ReponseRechercheFlux.md +24 -0
  44. data/docs/ReponseSoumissionFlux.md +30 -0
  45. data/docs/RequeteRechercheFlux.md +34 -0
  46. data/docs/RequeteSoumissionFlux.md +28 -0
  47. data/docs/SantApi.md +0 -62
  48. data/docs/SignatureLectroniqueApi.md +315 -0
  49. data/docs/SoumettreFactureCompleteResponse.md +1 -1
  50. data/docs/SoumettreFactureRequest.md +3 -3
  51. data/docs/StatutAcquittement.md +15 -0
  52. data/docs/StatutTache.md +2 -2
  53. data/docs/SyntaxeFlux.md +15 -0
  54. data/docs/TraitementFactureApi.md +2 -2
  55. data/docs/TypeFlux.md +15 -0
  56. data/docs/Utilisateur.md +40 -0
  57. data/factpulse.gemspec +2 -2
  58. data/lib/factpulse/api/afnorpdppa_api.rb +1 -1
  59. data/lib/factpulse/api/afnorpdppa_directory_service_api.rb +30 -1014
  60. data/lib/factpulse/api/afnorpdppa_flow_service_api.rb +1 -1
  61. data/lib/factpulse/api/chorus_pro_api.rb +108 -95
  62. data/lib/factpulse/api/processing_endpoints_unifis_api.rb +158 -0
  63. data/lib/factpulse/api/sant_api.rb +1 -58
  64. data/lib/factpulse/api/signature_lectronique_api.rb +333 -0
  65. data/lib/factpulse/api/traitement_facture_api.rb +5 -5
  66. data/lib/factpulse/api/utilisateur_api.rb +1 -1
  67. data/lib/factpulse/api_client.rb +3 -7
  68. data/lib/factpulse/api_error.rb +1 -1
  69. data/lib/factpulse/api_model_base.rb +1 -1
  70. data/lib/factpulse/configuration.rb +1 -1
  71. data/lib/factpulse/models/adresse_electronique.rb +1 -1
  72. data/lib/factpulse/models/adresse_postale.rb +1 -1
  73. data/lib/factpulse/models/body_ajouter_fichier_api_v1_chorus_pro_transverses_ajouter_fichier_post.rb +202 -0
  74. data/lib/factpulse/models/body_completer_facture_api_v1_chorus_pro_factures_completer_post.rb +202 -0
  75. data/lib/factpulse/models/body_lister_services_structure_api_v1_chorus_pro_structures_id_structure_cpp_services_get.rb +174 -0
  76. data/lib/factpulse/models/body_rechercher_factures_destinataire_api_v1_chorus_pro_factures_rechercher_destinataire_post.rb +202 -0
  77. data/lib/factpulse/models/body_rechercher_factures_fournisseur_api_v1_chorus_pro_factures_rechercher_fournisseur_post.rb +202 -0
  78. data/lib/factpulse/models/body_recycler_facture_api_v1_chorus_pro_factures_recycler_post.rb +202 -0
  79. data/lib/factpulse/models/{api_error.rb → body_telecharger_groupe_factures_api_v1_chorus_pro_factures_telecharger_groupe_post.rb} +44 -47
  80. data/lib/factpulse/models/{note.rb → body_traiter_facture_recue_api_v1_chorus_pro_factures_traiter_facture_recue_post.rb} +55 -28
  81. data/lib/factpulse/models/body_valideur_consulter_facture_api_v1_chorus_pro_factures_valideur_consulter_post.rb +202 -0
  82. data/lib/factpulse/models/body_valideur_rechercher_factures_api_v1_chorus_pro_factures_valideur_rechercher_post.rb +202 -0
  83. data/lib/factpulse/models/body_valideur_traiter_facture_api_v1_chorus_pro_factures_valideur_traiter_post.rb +202 -0
  84. data/lib/factpulse/models/cadre_de_facturation.rb +1 -1
  85. data/lib/factpulse/models/categorie_tva.rb +11 -11
  86. data/lib/factpulse/models/certificate_info_response.rb +1 -1
  87. data/lib/factpulse/models/chorus_pro_credentials.rb +1 -1
  88. data/lib/factpulse/models/code_cadre_facturation.rb +1 -1
  89. data/lib/factpulse/models/code_raison_reduction.rb +9 -9
  90. data/lib/factpulse/models/consulter_facture_request.rb +1 -1
  91. data/lib/factpulse/models/consulter_facture_response.rb +1 -1
  92. data/lib/factpulse/models/consulter_structure_request.rb +1 -1
  93. data/lib/factpulse/models/consulter_structure_response.rb +1 -1
  94. data/lib/factpulse/models/credentials_afnor.rb +1 -1
  95. data/lib/factpulse/models/credentials_chorus_pro.rb +1 -1
  96. data/lib/factpulse/models/destinataire.rb +2 -22
  97. data/lib/factpulse/models/destination.rb +1 -1
  98. data/lib/factpulse/models/destination_afnor.rb +1 -1
  99. data/lib/factpulse/models/destination_chorus_pro.rb +1 -1
  100. data/lib/factpulse/models/{statut_celery.rb → direction_flux.rb} +7 -10
  101. data/lib/factpulse/models/donnees_facture_simplifiees.rb +1 -1
  102. data/lib/factpulse/models/facture_enrichie_info_input.rb +315 -0
  103. data/lib/factpulse/models/{facture_enrichie_info.rb → facture_enrichie_info_output.rb} +4 -4
  104. data/lib/factpulse/models/facture_factur_x.rb +2 -13
  105. data/lib/factpulse/models/flux_resume.rb +251 -0
  106. data/lib/factpulse/models/format_sortie.rb +1 -1
  107. data/lib/factpulse/models/fournisseur.rb +2 -12
  108. data/lib/factpulse/models/generate_certificate_request.rb +1 -1
  109. data/lib/factpulse/models/generate_certificate_response.rb +1 -1
  110. data/lib/factpulse/models/http_validation_error.rb +1 -1
  111. data/lib/factpulse/models/information_signature_api.rb +1 -1
  112. data/lib/factpulse/models/ligne_de_poste.rb +4 -3
  113. data/lib/factpulse/models/ligne_de_poste_montant_remise_ht.rb +2 -2
  114. data/lib/factpulse/models/{montant_total_ligne_ht.rb → ligne_de_poste_montant_total_ligne_ht.rb} +3 -3
  115. data/lib/factpulse/models/ligne_de_poste_taux_tva_manuel.rb +2 -2
  116. data/lib/factpulse/models/ligne_de_tva.rb +3 -3
  117. data/lib/factpulse/models/mode_depot.rb +1 -1
  118. data/lib/factpulse/models/mode_paiement.rb +1 -1
  119. data/lib/factpulse/models/montant_ht_total.rb +1 -2
  120. data/lib/factpulse/models/montant_total.rb +7 -6
  121. data/lib/factpulse/models/montant_total_acompte.rb +2 -2
  122. data/lib/factpulse/models/{montant_a_payer.rb → montant_total_montant_remise_globale_ttc.rb} +3 -3
  123. data/lib/factpulse/models/montant_ttc_total.rb +1 -2
  124. data/lib/factpulse/models/montant_tva.rb +1 -2
  125. data/lib/factpulse/models/{montant_tva_total.rb → montantapayer.rb} +3 -3
  126. data/lib/factpulse/models/{montant_tva_ligne.rb → montantbaseht.rb} +3 -3
  127. data/lib/factpulse/models/montanthttotal.rb +104 -0
  128. data/lib/factpulse/models/montantttctotal.rb +104 -0
  129. data/lib/factpulse/models/montanttva.rb +104 -0
  130. data/lib/factpulse/models/montanttva1.rb +104 -0
  131. data/lib/factpulse/models/{montant_unitaire_ht.rb → montantunitaireht.rb} +2 -2
  132. data/lib/factpulse/models/obtenir_id_chorus_pro_request.rb +1 -1
  133. data/lib/factpulse/models/obtenir_id_chorus_pro_response.rb +1 -1
  134. data/lib/factpulse/models/options_processing.rb +16 -2
  135. data/lib/factpulse/models/parametres_signature.rb +1 -1
  136. data/lib/factpulse/models/parametres_structure.rb +1 -1
  137. data/lib/factpulse/models/pdf_factur_x_info.rb +1 -1
  138. data/lib/factpulse/models/pdp_credentials.rb +247 -0
  139. data/lib/factpulse/models/piece_jointe_complementaire.rb +1 -1
  140. data/lib/factpulse/models/profil_api.rb +1 -1
  141. data/lib/factpulse/models/profil_flux.rb +41 -0
  142. data/lib/factpulse/models/quantite.rb +1 -1
  143. data/lib/factpulse/models/quota_info.rb +269 -0
  144. data/lib/factpulse/models/rechercher_services_response.rb +1 -1
  145. data/lib/factpulse/models/rechercher_structure_request.rb +1 -1
  146. data/lib/factpulse/models/rechercher_structure_response.rb +1 -1
  147. data/lib/factpulse/models/references.rb +1 -1
  148. data/lib/factpulse/models/reponse_healthcheck_afnor.rb +220 -0
  149. data/lib/factpulse/models/reponse_recherche_flux.rb +249 -0
  150. data/lib/factpulse/models/reponse_soumission_flux.rb +294 -0
  151. data/lib/factpulse/models/reponse_tache.rb +1 -1
  152. data/lib/factpulse/models/reponse_validation_erreur.rb +1 -1
  153. data/lib/factpulse/models/reponse_validation_succes.rb +1 -1
  154. data/lib/factpulse/models/requete_recherche_flux.rb +306 -0
  155. data/lib/factpulse/models/{validation_error_detail.rb → requete_soumission_flux.rb} +61 -68
  156. data/lib/factpulse/models/resultat_afnor.rb +1 -1
  157. data/lib/factpulse/models/resultat_chorus_pro.rb +1 -1
  158. data/lib/factpulse/models/resultat_validation_pdfapi.rb +1 -1
  159. data/lib/factpulse/models/scheme_id.rb +7 -7
  160. data/lib/factpulse/models/service_structure.rb +1 -1
  161. data/lib/factpulse/models/signature_info.rb +1 -1
  162. data/lib/factpulse/models/soumettre_facture_complete_request.rb +1 -1
  163. data/lib/factpulse/models/soumettre_facture_complete_response.rb +2 -2
  164. data/lib/factpulse/models/soumettre_facture_request.rb +7 -4
  165. data/lib/factpulse/models/soumettre_facture_response.rb +1 -1
  166. data/lib/factpulse/models/{error_level.rb → statut_acquittement.rb} +7 -6
  167. data/lib/factpulse/models/statut_facture.rb +1 -1
  168. data/lib/factpulse/models/statut_tache.rb +5 -30
  169. data/lib/factpulse/models/structure_info.rb +1 -1
  170. data/lib/factpulse/models/{error_source.rb → syntaxe_flux.rb} +10 -13
  171. data/lib/factpulse/models/tauxmanuel.rb +2 -2
  172. data/lib/factpulse/models/type_facture.rb +1 -1
  173. data/lib/factpulse/models/type_flux.rb +43 -0
  174. data/lib/factpulse/models/type_tva.rb +1 -1
  175. data/lib/factpulse/models/unite.rb +1 -1
  176. data/lib/factpulse/models/utilisateur.rb +328 -0
  177. data/lib/factpulse/models/validation_error.rb +1 -1
  178. data/lib/factpulse/models/validation_error_loc_inner.rb +1 -1
  179. data/lib/factpulse/version.rb +2 -2
  180. data/lib/factpulse.rb +39 -15
  181. metadata +79 -42
  182. data/docs/APIError.md +0 -22
  183. data/docs/MontantRemiseGlobaleTtc.md +0 -15
  184. data/docs/MontantTotalLigneHt.md +0 -15
  185. data/docs/MontantTvaLigne.md +0 -15
  186. data/docs/MontantTvaTotal.md +0 -15
  187. data/docs/MontantUnitaireHt.md +0 -15
  188. data/docs/Note.md +0 -20
  189. data/docs/ValidationErrorDetail.md +0 -26
  190. data/lib/factpulse/helpers/client.rb +0 -300
  191. data/lib/factpulse/helpers/exceptions.rb +0 -21
  192. data/lib/factpulse/helpers.rb +0 -13
  193. data/lib/factpulse/models/montant_base_ht.rb +0 -104
  194. data/lib/factpulse/models/montant_remise_globale_ttc.rb +0 -104
@@ -0,0 +1,32 @@
1
+ # FactPulse::FluxResume
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **flow_id** | **String** | | |
8
+ | **tracking_id** | **String** | | [optional] |
9
+ | **nom** | **String** | | |
10
+ | **type_flux** | **String** | | [optional] |
11
+ | **direction_flux** | **String** | | [optional] |
12
+ | **statut_acquittement** | **String** | | [optional] |
13
+ | **date_creation** | **String** | | [optional] |
14
+ | **date_maj** | **String** | | [optional] |
15
+
16
+ ## Example
17
+
18
+ ```ruby
19
+ require 'factpulse'
20
+
21
+ instance = FactPulse::FluxResume.new(
22
+ flow_id: null,
23
+ tracking_id: null,
24
+ nom: null,
25
+ type_flux: null,
26
+ direction_flux: null,
27
+ statut_acquittement: null,
28
+ date_creation: null,
29
+ date_maj: null
30
+ )
31
+ ```
32
+
data/docs/Fournisseur.md CHANGED
@@ -9,7 +9,6 @@
9
9
  | **code_coordonnees_bancaires_fournisseur** | **Integer** | | [optional] |
10
10
  | **id_service_fournisseur** | **Integer** | | [optional] |
11
11
  | **nom** | **String** | | [optional] |
12
- | **siren** | **String** | | [optional] |
13
12
  | **siret** | **String** | | [optional] |
14
13
  | **numero_tva_intra** | **String** | | [optional] |
15
14
  | **iban** | **String** | | [optional] |
@@ -26,7 +25,6 @@ instance = FactPulse::Fournisseur.new(
26
25
  code_coordonnees_bancaires_fournisseur: null,
27
26
  id_service_fournisseur: null,
28
27
  nom: null,
29
- siren: null,
30
28
  siret: null,
31
29
  numero_tva_intra: null,
32
30
  iban: null,
data/docs/LigneDePoste.md CHANGED
@@ -9,9 +9,9 @@
9
9
  | **denomination** | **String** | | |
10
10
  | **quantite** | [**Quantite**](Quantite.md) | | |
11
11
  | **unite** | [**Unite**](Unite.md) | | |
12
- | **montant_unitaire_ht** | [**MontantUnitaireHt**](MontantUnitaireHt.md) | | |
12
+ | **montant_unitaire_ht** | [**Montantunitaireht**](Montantunitaireht.md) | | |
13
13
  | **montant_remise_ht** | [**LigneDePosteMontantRemiseHt**](LigneDePosteMontantRemiseHt.md) | | [optional] |
14
- | **montant_total_ligne_ht** | [**MontantTotalLigneHt**](MontantTotalLigneHt.md) | | [optional] |
14
+ | **montant_total_ligne_ht** | [**LigneDePosteMontantTotalLigneHt**](LigneDePosteMontantTotalLigneHt.md) | | [optional] |
15
15
  | **taux_tva** | **String** | | [optional] |
16
16
  | **taux_tva_manuel** | [**LigneDePosteTauxTvaManuel**](LigneDePosteTauxTvaManuel.md) | | [optional] |
17
17
  | **categorie_tva** | [**CategorieTVA**](CategorieTVA.md) | | [optional] |
@@ -0,0 +1,15 @@
1
+ # FactPulse::LigneDePosteMontantTotalLigneHt
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'factpulse'
12
+
13
+ instance = FactPulse::LigneDePosteMontantTotalLigneHt.new()
14
+ ```
15
+
data/docs/LigneDeTVA.md CHANGED
@@ -4,8 +4,8 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **montant_base_ht** | [**MontantBaseHt**](MontantBaseHt.md) | | |
8
- | **montant_tva** | [**MontantTvaLigne**](MontantTvaLigne.md) | | |
7
+ | **montant_base_ht** | [**Montantbaseht**](Montantbaseht.md) | | |
8
+ | **montant_tva** | [**Montanttva**](Montanttva.md) | | |
9
9
  | **taux** | **String** | | [optional] |
10
10
  | **taux_manuel** | [**Tauxmanuel**](Tauxmanuel.md) | | [optional] |
11
11
  | **categorie** | [**CategorieTVA**](CategorieTVA.md) | | [optional] |
data/docs/MontantTotal.md CHANGED
@@ -4,12 +4,12 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **montant_ht_total** | [**MontantHtTotal**](MontantHtTotal.md) | | |
8
- | **montant_tva** | [**MontantTvaTotal**](MontantTvaTotal.md) | | |
9
- | **montant_ttc_total** | [**MontantTtcTotal**](MontantTtcTotal.md) | | |
10
- | **montant_a_payer** | [**MontantAPayer**](MontantAPayer.md) | | |
7
+ | **montant_ht_total** | [**Montanthttotal**](Montanthttotal.md) | | |
8
+ | **montant_tva** | [**Montanttva1**](Montanttva1.md) | | |
9
+ | **montant_ttc_total** | [**Montantttctotal**](Montantttctotal.md) | | |
10
+ | **montant_a_payer** | [**Montantapayer**](Montantapayer.md) | | |
11
11
  | **acompte** | [**MontantTotalAcompte**](MontantTotalAcompte.md) | | [optional] |
12
- | **montant_remise_globale_ttc** | [**MontantRemiseGlobaleTtc**](MontantRemiseGlobaleTtc.md) | | [optional] |
12
+ | **montant_remise_globale_ttc** | [**MontantTotalMontantRemiseGlobaleTtc**](MontantTotalMontantRemiseGlobaleTtc.md) | | [optional] |
13
13
  | **motif_remise_globale_ttc** | **String** | | [optional] |
14
14
 
15
15
  ## Example
@@ -0,0 +1,15 @@
1
+ # FactPulse::MontantTotalMontantRemiseGlobaleTtc
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'factpulse'
12
+
13
+ instance = FactPulse::MontantTotalMontantRemiseGlobaleTtc.new()
14
+ ```
15
+
@@ -1,4 +1,4 @@
1
- # FactPulse::MontantBaseHt
1
+ # FactPulse::Montantapayer
2
2
 
3
3
  ## Properties
4
4
 
@@ -10,6 +10,6 @@
10
10
  ```ruby
11
11
  require 'factpulse'
12
12
 
13
- instance = FactPulse::MontantBaseHt.new()
13
+ instance = FactPulse::Montantapayer.new()
14
14
  ```
15
15
 
@@ -0,0 +1,15 @@
1
+ # FactPulse::Montantbaseht
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'factpulse'
12
+
13
+ instance = FactPulse::Montantbaseht.new()
14
+ ```
15
+
@@ -0,0 +1,15 @@
1
+ # FactPulse::Montanthttotal
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'factpulse'
12
+
13
+ instance = FactPulse::Montanthttotal.new()
14
+ ```
15
+
@@ -0,0 +1,15 @@
1
+ # FactPulse::Montantttctotal
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'factpulse'
12
+
13
+ instance = FactPulse::Montantttctotal.new()
14
+ ```
15
+
@@ -1,4 +1,4 @@
1
- # FactPulse::ErrorLevel
1
+ # FactPulse::Montanttva
2
2
 
3
3
  ## Properties
4
4
 
@@ -10,6 +10,6 @@
10
10
  ```ruby
11
11
  require 'factpulse'
12
12
 
13
- instance = FactPulse::ErrorLevel.new()
13
+ instance = FactPulse::Montanttva.new()
14
14
  ```
15
15
 
@@ -1,4 +1,4 @@
1
- # FactPulse::ErrorSource
1
+ # FactPulse::Montanttva1
2
2
 
3
3
  ## Properties
4
4
 
@@ -10,6 +10,6 @@
10
10
  ```ruby
11
11
  require 'factpulse'
12
12
 
13
- instance = FactPulse::ErrorSource.new()
13
+ instance = FactPulse::Montanttva1.new()
14
14
  ```
15
15
 
@@ -0,0 +1,15 @@
1
+ # FactPulse::Montantunitaireht
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'factpulse'
12
+
13
+ instance = FactPulse::Montantunitaireht.new()
14
+ ```
15
+
@@ -4,7 +4,7 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **profil_facturx** | [**ProfilAPI**](ProfilAPI.md) | Profil Factur-X à utiliser | [optional] |
7
+ | **profil_facturx** | **String** | Profil Factur-X à utiliser | [optional][default to 'EN16931'] |
8
8
  | **auto_enrichir** | **Boolean** | Auto-enrichir les données (APIs Entreprises, Chorus Pro, etc.) | [optional][default to true] |
9
9
  | **valider** | **Boolean** | Valider le XML Factur-X avec Schematron | [optional][default to true] |
10
10
  | **verifier_parametres_destination** | **Boolean** | Vérifier les paramètres requis par la destination (ex: code_service pour Chorus) | [optional][default to true] |
@@ -0,0 +1,24 @@
1
+ # FactPulse::PDPCredentials
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **flow_service_url** | **String** | URL de base du Flow Service AFNOR | |
8
+ | **token_url** | **String** | URL du serveur OAuth2 | |
9
+ | **client_id** | **String** | Client ID OAuth2 | |
10
+ | **client_secret** | **String** | Client Secret OAuth2 (sensible) | |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'factpulse'
16
+
17
+ instance = FactPulse::PDPCredentials.new(
18
+ flow_service_url: https://api.pdp-example.fr/flow/v1,
19
+ token_url: https://auth.pdp-example.fr/oauth/token,
20
+ client_id: factpulse_prod_abc123,
21
+ client_secret: secret_xyz789
22
+ )
23
+ ```
24
+
@@ -0,0 +1,147 @@
1
+ # FactPulse::ProcessingEndpointsUnifisApi
2
+
3
+ All URIs are relative to *http://localhost*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post**](ProcessingEndpointsUnifisApi.md#soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post) | **POST** /api/v1/traitement/factures/soumettre-complete | Soumettre une facture complète (génération + signature + soumission) |
8
+ | [**soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post**](ProcessingEndpointsUnifisApi.md#soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post) | **POST** /api/v1/traitement/factures/soumettre-complete-async | Soumettre une facture complète (asynchrone avec Celery) |
9
+
10
+
11
+ ## soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post
12
+
13
+ > <SoumettreFactureCompleteResponse> soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post(soumettre_facture_complete_request)
14
+
15
+ Soumettre une facture complète (génération + signature + soumission)
16
+
17
+ Endpoint unifié pour soumettre une facture complète vers différentes destinations. **Workflow automatisé :** 1. **Auto-enrichissement** (optionnel) : récupère les données via APIs publiques et Chorus Pro/AFNOR 2. **Génération PDF Factur-X** : crée un PDF/A-3 avec XML embarqué 3. **Signature électronique** (optionnelle) : signe le PDF avec un certificat 4. **Soumission** : envoie vers la destination choisie (Chorus Pro ou AFNOR PDP) **Destinations supportées :** - **Chorus Pro** : plateforme B2G française (factures vers secteur public) - **AFNOR PDP** : Plateformes de Dématérialisation Partenaires **Credentials de destination - 2 modes disponibles :** **Mode 1 - Récupération via JWT (recommandé) :** - Les credentials sont récupérés automatiquement via le `client_uid` du JWT - Ne pas fournir le champ `credentials` dans `destination` - Architecture 0-trust : aucun secret dans le payload - Exemple : `\"destination\": {\"type\": \"chorus_pro\"}` **Mode 2 - Credentials dans le payload :** - Fournir les credentials directement dans le payload - Utile pour tests ou intégrations tierces - Exemple : `\"destination\": {\"type\": \"chorus_pro\", \"credentials\": {...}}` **Signature électronique (optionnelle) - 2 modes disponibles :** **Mode 1 - Certificat stocké (recommandé) :** - Le certificat est récupéré automatiquement via le `client_uid` du JWT - Aucune clé à fournir dans le payload - Signature PAdES-B-LT avec horodatage (conforme eIDAS) - Exemple : `\"signature\": {\"raison\": \"Conformité Factur-X\"}` **Mode 2 - Clés dans le payload (pour tests) :** - Fournir `key_pem` et `cert_pem` directement - Format PEM accepté : brut ou base64 - Utile pour tests ou cas spéciaux sans certificat stocké - Exemple : `\"signature\": {\"key_pem\": \"-----BEGIN...\", \"cert_pem\": \"-----BEGIN...\"}` Si `key_pem` et `cert_pem` sont fournis → Mode 2 Sinon → Mode 1 (certificat récupéré via `client_uid`)
18
+
19
+ ### Examples
20
+
21
+ ```ruby
22
+ require 'time'
23
+ require 'factpulse'
24
+ # setup authorization
25
+ FactPulse.configure do |config|
26
+ # Configure Bearer authorization: HTTPBearer
27
+ config.access_token = 'YOUR_BEARER_TOKEN'
28
+ end
29
+
30
+ api_instance = FactPulse::ProcessingEndpointsUnifisApi.new
31
+ soumettre_facture_complete_request = FactPulse::SoumettreFactureCompleteRequest.new({donnees_facture: FactPulse::DonneesFactureSimplifiees.new({numero: 'numero_example', emetteur: { key: 3.56}, destinataire: { key: 3.56}, lignes: [{ key: 3.56}]}), pdf_source: 'pdf_source_example', destination: FactPulse::DestinationAFNOR.new}) # SoumettreFactureCompleteRequest |
32
+
33
+ begin
34
+ # Soumettre une facture complète (génération + signature + soumission)
35
+ result = api_instance.soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post(soumettre_facture_complete_request)
36
+ p result
37
+ rescue FactPulse::ApiError => e
38
+ puts "Error when calling ProcessingEndpointsUnifisApi->soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post: #{e}"
39
+ end
40
+ ```
41
+
42
+ #### Using the soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post_with_http_info variant
43
+
44
+ This returns an Array which contains the response data, status code and headers.
45
+
46
+ > <Array(<SoumettreFactureCompleteResponse>, Integer, Hash)> soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post_with_http_info(soumettre_facture_complete_request)
47
+
48
+ ```ruby
49
+ begin
50
+ # Soumettre une facture complète (génération + signature + soumission)
51
+ data, status_code, headers = api_instance.soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post_with_http_info(soumettre_facture_complete_request)
52
+ p status_code # => 2xx
53
+ p headers # => { ... }
54
+ p data # => <SoumettreFactureCompleteResponse>
55
+ rescue FactPulse::ApiError => e
56
+ puts "Error when calling ProcessingEndpointsUnifisApi->soumettre_facture_complete_api_v1_traitement_factures_soumettre_complete_post_with_http_info: #{e}"
57
+ end
58
+ ```
59
+
60
+ ### Parameters
61
+
62
+ | Name | Type | Description | Notes |
63
+ | ---- | ---- | ----------- | ----- |
64
+ | **soumettre_facture_complete_request** | [**SoumettreFactureCompleteRequest**](SoumettreFactureCompleteRequest.md) | | |
65
+
66
+ ### Return type
67
+
68
+ [**SoumettreFactureCompleteResponse**](SoumettreFactureCompleteResponse.md)
69
+
70
+ ### Authorization
71
+
72
+ [HTTPBearer](../README.md#HTTPBearer)
73
+
74
+ ### HTTP request headers
75
+
76
+ - **Content-Type**: application/json
77
+ - **Accept**: application/json
78
+
79
+
80
+ ## soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post
81
+
82
+ > <ReponseTache> soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post(soumettre_facture_complete_request)
83
+
84
+ Soumettre une facture complète (asynchrone avec Celery)
85
+
86
+ Version asynchrone de l'endpoint `/factures/soumettre-complete` utilisant Celery pour le traitement en arrière-plan. **Workflow automatisé (identique à la version synchrone) :** 1. **Auto-enrichissement** (optionnel) : récupère les données via APIs publiques et Chorus Pro/AFNOR 2. **Génération PDF Factur-X** : crée un PDF/A-3 avec XML embarqué 3. **Signature électronique** (optionnelle) : signe le PDF avec un certificat 4. **Soumission** : envoie vers la destination choisie (Chorus Pro ou AFNOR PDP) **Destinations supportées :** - **Chorus Pro** : plateforme B2G française (factures vers secteur public) - **AFNOR PDP** : Plateformes de Dématérialisation Partenaires **Différences avec la version synchrone :** - ✅ **Non-bloquant** : Retourne immédiatement un `id_tache` (HTTP 202 Accepted) - ✅ **Traitement en arrière-plan** : La facture est traitée par un worker Celery - ✅ **Suivi d'avancement** : Utilisez `/taches/{id_tache}/statut` pour suivre le statut - ✅ **Idéal pour gros volumes** : Permet de traiter de nombreuses factures en parallèle **Comment utiliser :** 1. **Soumission** : Appelez cet endpoint avec vos données de facture 2. **Retour immédiat** : Vous recevez un `id_tache` (ex: \"abc123-def456\") 3. **Suivi** : Appelez `/taches/{id_tache}/statut` pour vérifier l'avancement 4. **Résultat** : Quand `statut = \"SUCCESS\"`, le champ `resultat` contient la réponse complète **Credentials et signature** : Mêmes modes que la version synchrone (JWT ou payload).
87
+
88
+ ### Examples
89
+
90
+ ```ruby
91
+ require 'time'
92
+ require 'factpulse'
93
+ # setup authorization
94
+ FactPulse.configure do |config|
95
+ # Configure Bearer authorization: HTTPBearer
96
+ config.access_token = 'YOUR_BEARER_TOKEN'
97
+ end
98
+
99
+ api_instance = FactPulse::ProcessingEndpointsUnifisApi.new
100
+ soumettre_facture_complete_request = FactPulse::SoumettreFactureCompleteRequest.new({donnees_facture: FactPulse::DonneesFactureSimplifiees.new({numero: 'numero_example', emetteur: { key: 3.56}, destinataire: { key: 3.56}, lignes: [{ key: 3.56}]}), pdf_source: 'pdf_source_example', destination: FactPulse::DestinationAFNOR.new}) # SoumettreFactureCompleteRequest |
101
+
102
+ begin
103
+ # Soumettre une facture complète (asynchrone avec Celery)
104
+ result = api_instance.soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post(soumettre_facture_complete_request)
105
+ p result
106
+ rescue FactPulse::ApiError => e
107
+ puts "Error when calling ProcessingEndpointsUnifisApi->soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post: #{e}"
108
+ end
109
+ ```
110
+
111
+ #### Using the soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post_with_http_info variant
112
+
113
+ This returns an Array which contains the response data, status code and headers.
114
+
115
+ > <Array(<ReponseTache>, Integer, Hash)> soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post_with_http_info(soumettre_facture_complete_request)
116
+
117
+ ```ruby
118
+ begin
119
+ # Soumettre une facture complète (asynchrone avec Celery)
120
+ data, status_code, headers = api_instance.soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post_with_http_info(soumettre_facture_complete_request)
121
+ p status_code # => 2xx
122
+ p headers # => { ... }
123
+ p data # => <ReponseTache>
124
+ rescue FactPulse::ApiError => e
125
+ puts "Error when calling ProcessingEndpointsUnifisApi->soumettre_facture_complete_async_api_v1_traitement_factures_soumettre_complete_async_post_with_http_info: #{e}"
126
+ end
127
+ ```
128
+
129
+ ### Parameters
130
+
131
+ | Name | Type | Description | Notes |
132
+ | ---- | ---- | ----------- | ----- |
133
+ | **soumettre_facture_complete_request** | [**SoumettreFactureCompleteRequest**](SoumettreFactureCompleteRequest.md) | | |
134
+
135
+ ### Return type
136
+
137
+ [**ReponseTache**](ReponseTache.md)
138
+
139
+ ### Authorization
140
+
141
+ [HTTPBearer](../README.md#HTTPBearer)
142
+
143
+ ### HTTP request headers
144
+
145
+ - **Content-Type**: application/json
146
+ - **Accept**: application/json
147
+
@@ -1,4 +1,4 @@
1
- # FactPulse::StatutCelery
1
+ # FactPulse::ProfilFlux
2
2
 
3
3
  ## Properties
4
4
 
@@ -10,6 +10,6 @@
10
10
  ```ruby
11
11
  require 'factpulse'
12
12
 
13
- instance = FactPulse::StatutCelery.new()
13
+ instance = FactPulse::ProfilFlux.new()
14
14
  ```
15
15
 
data/docs/QuotaInfo.md ADDED
@@ -0,0 +1,26 @@
1
+ # FactPulse::QuotaInfo
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **limit** | **Integer** | | |
8
+ | **usage** | **Integer** | | |
9
+ | **remaining** | **Integer** | | |
10
+ | **reset_date** | **String** | | |
11
+ | **plan** | **String** | | |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'factpulse'
17
+
18
+ instance = FactPulse::QuotaInfo.new(
19
+ limit: null,
20
+ usage: null,
21
+ remaining: null,
22
+ reset_date: null,
23
+ plan: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,22 @@
1
+ # FactPulse::ReponseHealthcheckAFNOR
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **flow_service_ok** | **Boolean** | État du Flow Service API | |
8
+ | **directory_service_ok** | **Boolean** | État du Directory Service API | |
9
+ | **message** | **String** | Message descriptif de l&#39;état | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'factpulse'
15
+
16
+ instance = FactPulse::ReponseHealthcheckAFNOR.new(
17
+ flow_service_ok: null,
18
+ directory_service_ok: null,
19
+ message: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,24 @@
1
+ # FactPulse::ReponseRechercheFlux
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **total** | **Integer** | Nombre total de résultats | |
8
+ | **offset** | **Integer** | Décalage appliqué | |
9
+ | **limit** | **Integer** | Limite de résultats | |
10
+ | **resultats** | [**Array&lt;FluxResume&gt;**](FluxResume.md) | Liste des flux trouvés | |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'factpulse'
16
+
17
+ instance = FactPulse::ReponseRechercheFlux.new(
18
+ total: null,
19
+ offset: null,
20
+ limit: null,
21
+ resultats: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,30 @@
1
+ # FactPulse::ReponseSoumissionFlux
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **flow_id** | **String** | Identifiant unique du flux généré par la PDP | |
8
+ | **tracking_id** | **String** | | [optional] |
9
+ | **nom** | **String** | Nom du flux | |
10
+ | **syntaxe_flux** | **String** | Syntaxe du flux (CII, UBL, etc.) | |
11
+ | **profil_flux** | **String** | | [optional] |
12
+ | **sha256** | **String** | Hash SHA256 du fichier soumis | |
13
+ | **message** | **String** | Message de confirmation | |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'factpulse'
19
+
20
+ instance = FactPulse::ReponseSoumissionFlux.new(
21
+ flow_id: null,
22
+ tracking_id: null,
23
+ nom: null,
24
+ syntaxe_flux: null,
25
+ profil_flux: null,
26
+ sha256: null,
27
+ message: null
28
+ )
29
+ ```
30
+
@@ -0,0 +1,34 @@
1
+ # FactPulse::RequeteRechercheFlux
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **date_maj_apres** | **Time** | | [optional] |
8
+ | **date_maj_avant** | **Time** | | [optional] |
9
+ | **type_flux** | [**Array&lt;TypeFlux&gt;**](TypeFlux.md) | | [optional] |
10
+ | **direction_flux** | [**Array&lt;DirectionFlux&gt;**](DirectionFlux.md) | | [optional] |
11
+ | **tracking_id** | **String** | | [optional] |
12
+ | **flow_id** | **String** | | [optional] |
13
+ | **statut_acquittement** | [**StatutAcquittement**](StatutAcquittement.md) | | [optional] |
14
+ | **offset** | **Integer** | Décalage pour la pagination | [optional][default to 0] |
15
+ | **limit** | **Integer** | Nombre maximum de résultats (max 100) | [optional][default to 25] |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'factpulse'
21
+
22
+ instance = FactPulse::RequeteRechercheFlux.new(
23
+ date_maj_apres: null,
24
+ date_maj_avant: null,
25
+ type_flux: null,
26
+ direction_flux: null,
27
+ tracking_id: null,
28
+ flow_id: null,
29
+ statut_acquittement: null,
30
+ offset: null,
31
+ limit: null
32
+ )
33
+ ```
34
+
@@ -0,0 +1,28 @@
1
+ # FactPulse::RequeteSoumissionFlux
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **nom_flux** | **String** | Nom du flux (ex: &#39;Facture 2025-001&#39;) | |
8
+ | **syntaxe_flux** | [**SyntaxeFlux**](SyntaxeFlux.md) | Syntaxe du flux (CII pour Factur-X) | [optional] |
9
+ | **profil_flux** | [**ProfilFlux**](ProfilFlux.md) | | [optional] |
10
+ | **tracking_id** | **String** | | [optional] |
11
+ | **request_id** | **String** | | [optional] |
12
+ | **pdp_credentials** | [**PDPCredentials**](PDPCredentials.md) | | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'factpulse'
18
+
19
+ instance = FactPulse::RequeteSoumissionFlux.new(
20
+ nom_flux: Facture 2025-001,
21
+ syntaxe_flux: null,
22
+ profil_flux: null,
23
+ tracking_id: null,
24
+ request_id: null,
25
+ pdp_credentials: null
26
+ )
27
+ ```
28
+