factpulse 2.0.37__py3-none-any.whl → 3.0.7__py3-none-any.whl
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.
Potentially problematic release.
This version of factpulse might be problematic. Click here for more details.
- factpulse/__init__.py +265 -197
- factpulse/api/__init__.py +5 -4
- factpulse/api/afnorpdppa_api.py +34 -34
- factpulse/api/afnorpdppa_directory_service_api.py +59 -59
- factpulse/api/afnorpdppa_flow_service_api.py +23 -23
- factpulse/api/chorus_pro_api.py +211 -211
- factpulse/api/document_conversion_api.py +1506 -0
- factpulse/api/{sant_api.py → health_api.py} +22 -22
- factpulse/api/invoice_processing_api.py +3437 -0
- factpulse/api/{vrification_pdfxml_api.py → pdfxml_verification_api.py} +240 -240
- factpulse/api/{utilisateur_api.py → user_api.py} +17 -17
- factpulse/api_client.py +3 -3
- factpulse/configuration.py +3 -3
- factpulse/exceptions.py +2 -2
- factpulse/models/__init__.py +128 -95
- factpulse/models/acknowledgment_status.py +38 -0
- factpulse/models/additional_document.py +115 -0
- factpulse/models/afnor_credentials.py +106 -0
- factpulse/models/afnor_destination.py +127 -0
- factpulse/models/afnor_health_check_response.py +91 -0
- factpulse/models/afnor_result.py +105 -0
- factpulse/models/allowance_charge.py +147 -0
- factpulse/models/allowance_reason_code.py +42 -0
- factpulse/models/allowance_total_amount.py +145 -0
- factpulse/models/amount.py +139 -0
- factpulse/models/amount_due.py +139 -0
- factpulse/models/api_error.py +5 -5
- factpulse/models/async_task_status.py +97 -0
- factpulse/models/base_amount.py +145 -0
- factpulse/models/bounding_box_schema.py +10 -10
- factpulse/models/celery_status.py +40 -0
- factpulse/models/certificate_info_response.py +24 -24
- factpulse/models/charge_total_amount.py +145 -0
- factpulse/models/chorus_pro_destination.py +108 -0
- factpulse/models/chorus_pro_result.py +101 -0
- factpulse/models/contact.py +113 -0
- factpulse/models/convert_error_response.py +105 -0
- factpulse/models/convert_pending_input_response.py +114 -0
- factpulse/models/convert_resume_request.py +87 -0
- factpulse/models/convert_success_response.py +126 -0
- factpulse/models/convert_validation_failed_response.py +120 -0
- factpulse/models/delivery_party.py +121 -0
- factpulse/models/destination.py +27 -27
- factpulse/models/document_type_info.py +91 -0
- factpulse/models/electronic_address.py +90 -0
- factpulse/models/enriched_invoice_info.py +133 -0
- factpulse/models/error_level.py +2 -2
- factpulse/models/error_source.py +2 -2
- factpulse/models/extraction_info.py +93 -0
- factpulse/models/factur_x_invoice.py +320 -0
- factpulse/models/factur_x_profile.py +39 -0
- factpulse/models/factur_xpdf_info.py +91 -0
- factpulse/models/facture_electronique_rest_api_schemas_chorus_pro_chorus_pro_credentials.py +95 -0
- factpulse/models/facture_electronique_rest_api_schemas_processing_chorus_pro_credentials.py +115 -0
- factpulse/models/field_status.py +40 -0
- factpulse/models/file_info.py +94 -0
- factpulse/models/files_info.py +106 -0
- factpulse/models/flow_direction.py +37 -0
- factpulse/models/flow_profile.py +38 -0
- factpulse/models/flow_summary.py +131 -0
- factpulse/models/flow_syntax.py +40 -0
- factpulse/models/flow_type.py +40 -0
- factpulse/models/generate_certificate_request.py +26 -26
- factpulse/models/generate_certificate_response.py +15 -15
- factpulse/models/get_chorus_pro_id_request.py +100 -0
- factpulse/models/get_chorus_pro_id_response.py +98 -0
- factpulse/models/get_invoice_request.py +98 -0
- factpulse/models/get_invoice_response.py +142 -0
- factpulse/models/get_structure_request.py +100 -0
- factpulse/models/get_structure_response.py +142 -0
- factpulse/models/global_allowance_amount.py +139 -0
- factpulse/models/gross_unit_price.py +145 -0
- factpulse/models/http_validation_error.py +2 -2
- factpulse/models/incoming_invoice.py +196 -0
- factpulse/models/incoming_supplier.py +144 -0
- factpulse/models/invoice_format.py +38 -0
- factpulse/models/invoice_line.py +354 -0
- factpulse/models/invoice_line_allowance_amount.py +145 -0
- factpulse/models/invoice_note.py +94 -0
- factpulse/models/invoice_references.py +194 -0
- factpulse/models/invoice_status.py +96 -0
- factpulse/models/invoice_totals.py +177 -0
- factpulse/models/invoice_totals_prepayment.py +145 -0
- factpulse/models/invoice_type_code.py +51 -0
- factpulse/models/invoicing_framework.py +110 -0
- factpulse/models/invoicing_framework_code.py +39 -0
- factpulse/models/line_net_amount.py +145 -0
- factpulse/models/line_total_amount.py +145 -0
- factpulse/models/mandatory_note_schema.py +124 -0
- factpulse/models/manual_rate.py +139 -0
- factpulse/models/manual_vat_rate.py +139 -0
- factpulse/models/missing_field.py +107 -0
- factpulse/models/operation_nature.py +49 -0
- factpulse/models/output_format.py +37 -0
- factpulse/models/page_dimensions_schema.py +89 -0
- factpulse/models/payee.py +168 -0
- factpulse/models/payment_card.py +99 -0
- factpulse/models/payment_means.py +41 -0
- factpulse/models/pdf_validation_result_api.py +169 -0
- factpulse/models/pdp_credentials.py +15 -15
- factpulse/models/percentage.py +145 -0
- factpulse/models/postal_address.py +134 -0
- factpulse/models/price_allowance_amount.py +145 -0
- factpulse/models/price_basis_quantity.py +145 -0
- factpulse/models/processing_options.py +94 -0
- factpulse/models/product_characteristic.py +89 -0
- factpulse/models/product_classification.py +101 -0
- factpulse/models/quantity.py +139 -0
- factpulse/models/recipient.py +167 -0
- factpulse/models/rounding_amount.py +145 -0
- factpulse/models/scheme_id.py +10 -4
- factpulse/models/search_flow_request.py +143 -0
- factpulse/models/search_flow_response.py +101 -0
- factpulse/models/search_services_response.py +101 -0
- factpulse/models/search_structure_request.py +119 -0
- factpulse/models/search_structure_response.py +101 -0
- factpulse/models/signature_info.py +6 -6
- factpulse/models/signature_info_api.py +122 -0
- factpulse/models/signature_parameters.py +133 -0
- factpulse/models/simplified_invoice_data.py +124 -0
- factpulse/models/structure_info.py +14 -14
- factpulse/models/structure_parameters.py +91 -0
- factpulse/models/structure_service.py +93 -0
- factpulse/models/submission_mode.py +38 -0
- factpulse/models/submit_complete_invoice_request.py +116 -0
- factpulse/models/submit_complete_invoice_response.py +145 -0
- factpulse/models/submit_flow_request.py +123 -0
- factpulse/models/submit_flow_response.py +109 -0
- factpulse/models/submit_gross_amount.py +139 -0
- factpulse/models/submit_invoice_request.py +176 -0
- factpulse/models/submit_invoice_response.py +103 -0
- factpulse/models/submit_net_amount.py +139 -0
- factpulse/models/submit_vat_amount.py +139 -0
- factpulse/models/supplementary_attachment.py +95 -0
- factpulse/models/supplier.py +225 -0
- factpulse/models/task_response.py +87 -0
- factpulse/models/tax_representative.py +95 -0
- factpulse/models/taxable_amount.py +139 -0
- factpulse/models/total_gross_amount.py +139 -0
- factpulse/models/total_net_amount.py +139 -0
- factpulse/models/total_vat_amount.py +139 -0
- factpulse/models/unit_net_price.py +139 -0
- factpulse/models/unit_of_measure.py +41 -0
- factpulse/models/validation_error.py +2 -2
- factpulse/models/validation_error_detail.py +6 -6
- factpulse/models/validation_error_loc_inner.py +2 -2
- factpulse/models/validation_error_response.py +87 -0
- factpulse/models/validation_info.py +105 -0
- factpulse/models/validation_success_response.py +87 -0
- factpulse/models/vat_accounting_code.py +39 -0
- factpulse/models/vat_amount.py +139 -0
- factpulse/models/vat_category.py +44 -0
- factpulse/models/vat_line.py +140 -0
- factpulse/models/vat_point_date_code.py +38 -0
- factpulse/models/vat_rate.py +145 -0
- factpulse/models/verification_success_response.py +135 -0
- factpulse/models/verified_field_schema.py +129 -0
- factpulse/rest.py +2 -2
- factpulse-3.0.7.dist-info/METADATA +292 -0
- factpulse-3.0.7.dist-info/RECORD +168 -0
- factpulse_helpers/__init__.py +34 -34
- factpulse_helpers/client.py +1019 -795
- factpulse_helpers/exceptions.py +68 -68
- factpulse/api/traitement_facture_api.py +0 -3437
- factpulse/models/adresse_electronique.py +0 -90
- factpulse/models/adresse_postale.py +0 -120
- factpulse/models/cadre_de_facturation.py +0 -110
- factpulse/models/categorie_tva.py +0 -44
- factpulse/models/champ_verifie_schema.py +0 -129
- factpulse/models/chorus_pro_credentials.py +0 -95
- factpulse/models/code_cadre_facturation.py +0 -39
- factpulse/models/code_raison_reduction.py +0 -42
- factpulse/models/consulter_facture_request.py +0 -98
- factpulse/models/consulter_facture_response.py +0 -142
- factpulse/models/consulter_structure_request.py +0 -100
- factpulse/models/consulter_structure_response.py +0 -142
- factpulse/models/credentials_afnor.py +0 -106
- factpulse/models/credentials_chorus_pro.py +0 -115
- factpulse/models/destinataire.py +0 -130
- factpulse/models/destination_afnor.py +0 -127
- factpulse/models/destination_chorus_pro.py +0 -108
- factpulse/models/dimension_page_schema.py +0 -89
- factpulse/models/direction_flux.py +0 -37
- factpulse/models/donnees_facture_simplifiees.py +0 -124
- factpulse/models/facture_enrichie_info.py +0 -133
- factpulse/models/facture_entrante.py +0 -196
- factpulse/models/facture_factur_x.py +0 -183
- factpulse/models/flux_resume.py +0 -131
- factpulse/models/format_facture.py +0 -38
- factpulse/models/format_sortie.py +0 -37
- factpulse/models/fournisseur.py +0 -153
- factpulse/models/fournisseur_entrant.py +0 -144
- factpulse/models/information_signature_api.py +0 -122
- factpulse/models/ligne_de_poste.py +0 -183
- factpulse/models/ligne_de_poste_montant_remise_ht.py +0 -145
- factpulse/models/ligne_de_poste_taux_tva_manuel.py +0 -145
- factpulse/models/ligne_de_tva.py +0 -132
- factpulse/models/mode_depot.py +0 -38
- factpulse/models/mode_paiement.py +0 -41
- factpulse/models/montant_a_payer.py +0 -139
- factpulse/models/montant_base_ht.py +0 -139
- factpulse/models/montant_ht_total.py +0 -139
- factpulse/models/montant_remise_globale_ttc.py +0 -139
- factpulse/models/montant_total.py +0 -133
- factpulse/models/montant_total_acompte.py +0 -145
- factpulse/models/montant_total_ligne_ht.py +0 -139
- factpulse/models/montant_ttc_total.py +0 -139
- factpulse/models/montant_tva.py +0 -139
- factpulse/models/montant_tva_ligne.py +0 -139
- factpulse/models/montant_tva_total.py +0 -139
- factpulse/models/montant_unitaire_ht.py +0 -139
- factpulse/models/nature_operation.py +0 -49
- factpulse/models/note.py +0 -94
- factpulse/models/note_obligatoire_schema.py +0 -124
- factpulse/models/obtenir_id_chorus_pro_request.py +0 -100
- factpulse/models/obtenir_id_chorus_pro_response.py +0 -98
- factpulse/models/options_processing.py +0 -94
- factpulse/models/parametres_signature.py +0 -133
- factpulse/models/parametres_structure.py +0 -91
- factpulse/models/pdf_factur_x_info.py +0 -91
- factpulse/models/piece_jointe_complementaire.py +0 -95
- factpulse/models/profil_api.py +0 -39
- factpulse/models/profil_flux.py +0 -38
- factpulse/models/quantite.py +0 -139
- factpulse/models/rechercher_services_response.py +0 -101
- factpulse/models/rechercher_structure_request.py +0 -119
- factpulse/models/rechercher_structure_response.py +0 -101
- factpulse/models/references.py +0 -124
- factpulse/models/reponse_healthcheck_afnor.py +0 -91
- factpulse/models/reponse_recherche_flux.py +0 -101
- factpulse/models/reponse_soumission_flux.py +0 -109
- factpulse/models/reponse_tache.py +0 -87
- factpulse/models/reponse_validation_erreur.py +0 -87
- factpulse/models/reponse_validation_succes.py +0 -87
- factpulse/models/reponse_verification_succes.py +0 -135
- factpulse/models/requete_recherche_flux.py +0 -143
- factpulse/models/requete_soumission_flux.py +0 -123
- factpulse/models/resultat_afnor.py +0 -105
- factpulse/models/resultat_chorus_pro.py +0 -101
- factpulse/models/resultat_validation_pdfapi.py +0 -169
- factpulse/models/service_structure.py +0 -93
- factpulse/models/soumettre_facture_complete_request.py +0 -116
- factpulse/models/soumettre_facture_complete_response.py +0 -145
- factpulse/models/soumettre_facture_request.py +0 -176
- factpulse/models/soumettre_facture_response.py +0 -103
- factpulse/models/statut_acquittement.py +0 -38
- factpulse/models/statut_celery.py +0 -40
- factpulse/models/statut_champ_api.py +0 -40
- factpulse/models/statut_facture.py +0 -96
- factpulse/models/statut_tache.py +0 -97
- factpulse/models/syntaxe_flux.py +0 -40
- factpulse/models/tauxmanuel.py +0 -139
- factpulse/models/type_document.py +0 -40
- factpulse/models/type_facture.py +0 -37
- factpulse/models/type_flux.py +0 -40
- factpulse/models/type_tva.py +0 -39
- factpulse/models/unite.py +0 -41
- factpulse-2.0.37.dist-info/METADATA +0 -292
- factpulse-2.0.37.dist-info/RECORD +0 -134
- {factpulse-2.0.37.dist-info → factpulse-3.0.7.dist-info}/WHEEL +0 -0
- {factpulse-2.0.37.dist-info → factpulse-3.0.7.dist-info}/licenses/LICENSE +0 -0
- {factpulse-2.0.37.dist-info → factpulse-3.0.7.dist-info}/top_level.txt +0 -0
factpulse/api/afnorpdppa_api.py
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
FactPulse REST API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
REST API for electronic invoicing in France: Factur-X, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄 Factur-X Invoice Generation - **Formats**: XML only or PDF/A-3 with embedded XML - **Profiles**: MINIMUM, BASIC, EN16931, EXTENDED - **Standards**: EN 16931 (EU directive 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT) - **🆕 Simplified Format**: Generation from SIRET + auto-enrichment (Chorus Pro API + Business Search) ### ✅ Validation and Compliance - **XML Validation**: Schematron (45 to 210+ rules depending on profile) - **PDF Validation**: PDF/A-3, Factur-X XMP metadata, electronic signatures - **VeraPDF**: Strict PDF/A validation (146+ ISO 19005-3 rules) - **Asynchronous Processing**: Celery support for heavy validations (VeraPDF) ### 📡 AFNOR PDP/PA Integration (XP Z12-013) - **Flow Submission**: Send invoices to Partner Dematerialization Platforms - **Flow Search**: View submitted invoices - **Download**: Retrieve PDF/A-3 with XML - **Directory Service**: Company search (SIREN/SIRET) - **Multi-client**: Support for multiple PDP configs per user (stored credentials or zero-storage) ### ✍️ PDF Electronic Signature - **Standards**: PAdES-B-B, PAdES-B-T (RFC 3161 timestamping), PAdES-B-LT (long-term archival) - **eIDAS Levels**: SES (self-signed), AdES (commercial CA), QES (QTSP) - **Validation**: Cryptographic integrity and certificate verification - **Certificate Generation**: Self-signed X.509 certificates for testing ### 🔄 Asynchronous Processing - **Celery**: Asynchronous generation, validation and signing - **Polling**: Status tracking via `/tasks/{task_id}/status` - **No timeout**: Ideal for large files or heavy validations ## 🔒 Authentication All requests require a **JWT token** in the Authorization header: ``` Authorization: Bearer YOUR_JWT_TOKEN ``` ### How to obtain a JWT token? #### 🔑 Method 1: `/api/token/` API (Recommended) **URL:** `https://www.factpulse.fr/api/token/` This method is **recommended** for integration in your applications and CI/CD workflows. **Prerequisites:** Having set a password on your account **For users registered via email/password:** - You already have a password, use it directly **For users registered via OAuth (Google/GitHub):** - You must first set a password at: https://www.factpulse.fr/accounts/password/set/ - Once the password is created, you can use the API **Request example:** ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"your_email@example.com\", \"password\": \"your_password\" }' ``` **Optional `client_uid` parameter:** To select credentials for a specific client (PA/PDP, Chorus Pro, signing certificates), add `client_uid`: ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"your_email@example.com\", \"password\": \"your_password\", \"client_uid\": \"550e8400-e29b-41d4-a716-446655440000\" }' ``` The `client_uid` will be included in the JWT and allow the API to automatically use: - AFNOR/PDP credentials configured for this client - Chorus Pro credentials configured for this client - Electronic signature certificates configured for this client **Response:** ```json { \"access\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\", // Access token (validity: 30 min) \"refresh\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\" // Refresh token (validity: 7 days) } ``` **Advantages:** - ✅ Full automation (CI/CD, scripts) - ✅ Programmatic token management - ✅ Refresh token support for automatic access renewal - ✅ Easy integration in any language/tool #### 🖥️ Method 2: Dashboard Generation (Alternative) **URL:** https://www.factpulse.fr/dashboard/ This method is suitable for quick tests or occasional use via the graphical interface. **How it works:** - Log in to the dashboard - Use the \"Generate Test Token\" or \"Generate Production Token\" buttons - Works for **all** users (OAuth and email/password), without requiring a password **Token types:** - **Test Token**: 24h validity, 1000 calls/day quota (free) - **Production Token**: 7 days validity, quota based on your plan **Advantages:** - ✅ Quick for API testing - ✅ No password required - ✅ Simple visual interface **Disadvantages:** - ❌ Requires manual action - ❌ No refresh token - ❌ Less suited for automation ### 📚 Full Documentation For more information on authentication and API usage: https://www.factpulse.fr/documentation-api/
|
|
7
7
|
|
|
8
8
|
The version of the OpenAPI document: 1.0.0
|
|
9
9
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
@@ -18,7 +18,7 @@ from typing_extensions import Annotated
|
|
|
18
18
|
|
|
19
19
|
from pydantic import StrictBool, StrictStr
|
|
20
20
|
from typing import Any, Optional
|
|
21
|
-
from factpulse.models.
|
|
21
|
+
from factpulse.models.incoming_invoice import IncomingInvoice
|
|
22
22
|
|
|
23
23
|
from factpulse.api_client import ApiClient, RequestSerialized
|
|
24
24
|
from factpulse.api_response import ApiResponse
|
|
@@ -54,9 +54,9 @@ class AFNORPDPPAApi:
|
|
|
54
54
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
55
55
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
56
56
|
) -> object:
|
|
57
|
-
"""
|
|
57
|
+
"""Retrieve stored AFNOR credentials
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
Retrieves stored AFNOR/PDP credentials for the JWT's client_uid. This endpoint is used by the SDK in 'stored' mode to retrieve credentials before performing AFNOR OAuth itself.
|
|
60
60
|
|
|
61
61
|
:param _request_timeout: timeout setting for this request. If one
|
|
62
62
|
number provided, it will be total request
|
|
@@ -120,9 +120,9 @@ class AFNORPDPPAApi:
|
|
|
120
120
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
121
121
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
122
122
|
) -> ApiResponse[object]:
|
|
123
|
-
"""
|
|
123
|
+
"""Retrieve stored AFNOR credentials
|
|
124
124
|
|
|
125
|
-
|
|
125
|
+
Retrieves stored AFNOR/PDP credentials for the JWT's client_uid. This endpoint is used by the SDK in 'stored' mode to retrieve credentials before performing AFNOR OAuth itself.
|
|
126
126
|
|
|
127
127
|
:param _request_timeout: timeout setting for this request. If one
|
|
128
128
|
number provided, it will be total request
|
|
@@ -186,9 +186,9 @@ class AFNORPDPPAApi:
|
|
|
186
186
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
187
187
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
188
188
|
) -> RESTResponseType:
|
|
189
|
-
"""
|
|
189
|
+
"""Retrieve stored AFNOR credentials
|
|
190
190
|
|
|
191
|
-
|
|
191
|
+
Retrieves stored AFNOR/PDP credentials for the JWT's client_uid. This endpoint is used by the SDK in 'stored' mode to retrieve credentials before performing AFNOR OAuth itself.
|
|
192
192
|
|
|
193
193
|
:param _request_timeout: timeout setting for this request. If one
|
|
194
194
|
number provided, it will be total request
|
|
@@ -294,7 +294,7 @@ class AFNORPDPPAApi:
|
|
|
294
294
|
|
|
295
295
|
|
|
296
296
|
@validate_call
|
|
297
|
-
def
|
|
297
|
+
def get_flux_entrant_api_v1_afnor_incoming_flows_flow_id_get(
|
|
298
298
|
self,
|
|
299
299
|
flow_id: StrictStr,
|
|
300
300
|
include_document: Optional[StrictBool] = None,
|
|
@@ -310,10 +310,10 @@ class AFNORPDPPAApi:
|
|
|
310
310
|
_content_type: Optional[StrictStr] = None,
|
|
311
311
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
312
312
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
313
|
-
) ->
|
|
314
|
-
"""
|
|
313
|
+
) -> IncomingInvoice:
|
|
314
|
+
"""Retrieve and extract an incoming invoice
|
|
315
315
|
|
|
316
|
-
|
|
316
|
+
Downloads an incoming flow from the AFNOR PDP and extracts invoice metadata into a unified JSON format. Supports Factur-X, CII, and UBL formats.
|
|
317
317
|
|
|
318
318
|
:param flow_id: (required)
|
|
319
319
|
:type flow_id: str
|
|
@@ -341,7 +341,7 @@ class AFNORPDPPAApi:
|
|
|
341
341
|
:return: Returns the result object.
|
|
342
342
|
""" # noqa: E501
|
|
343
343
|
|
|
344
|
-
_param = self.
|
|
344
|
+
_param = self._get_flux_entrant_api_v1_afnor_incoming_flows_flow_id_get_serialize(
|
|
345
345
|
flow_id=flow_id,
|
|
346
346
|
include_document=include_document,
|
|
347
347
|
_request_auth=_request_auth,
|
|
@@ -351,7 +351,7 @@ class AFNORPDPPAApi:
|
|
|
351
351
|
)
|
|
352
352
|
|
|
353
353
|
_response_types_map: Dict[str, Optional[str]] = {
|
|
354
|
-
'200': "
|
|
354
|
+
'200': "IncomingInvoice",
|
|
355
355
|
'400': None,
|
|
356
356
|
'401': None,
|
|
357
357
|
'404': None,
|
|
@@ -370,7 +370,7 @@ class AFNORPDPPAApi:
|
|
|
370
370
|
|
|
371
371
|
|
|
372
372
|
@validate_call
|
|
373
|
-
def
|
|
373
|
+
def get_flux_entrant_api_v1_afnor_incoming_flows_flow_id_get_with_http_info(
|
|
374
374
|
self,
|
|
375
375
|
flow_id: StrictStr,
|
|
376
376
|
include_document: Optional[StrictBool] = None,
|
|
@@ -386,10 +386,10 @@ class AFNORPDPPAApi:
|
|
|
386
386
|
_content_type: Optional[StrictStr] = None,
|
|
387
387
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
388
388
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
389
|
-
) -> ApiResponse[
|
|
390
|
-
"""
|
|
389
|
+
) -> ApiResponse[IncomingInvoice]:
|
|
390
|
+
"""Retrieve and extract an incoming invoice
|
|
391
391
|
|
|
392
|
-
|
|
392
|
+
Downloads an incoming flow from the AFNOR PDP and extracts invoice metadata into a unified JSON format. Supports Factur-X, CII, and UBL formats.
|
|
393
393
|
|
|
394
394
|
:param flow_id: (required)
|
|
395
395
|
:type flow_id: str
|
|
@@ -417,7 +417,7 @@ class AFNORPDPPAApi:
|
|
|
417
417
|
:return: Returns the result object.
|
|
418
418
|
""" # noqa: E501
|
|
419
419
|
|
|
420
|
-
_param = self.
|
|
420
|
+
_param = self._get_flux_entrant_api_v1_afnor_incoming_flows_flow_id_get_serialize(
|
|
421
421
|
flow_id=flow_id,
|
|
422
422
|
include_document=include_document,
|
|
423
423
|
_request_auth=_request_auth,
|
|
@@ -427,7 +427,7 @@ class AFNORPDPPAApi:
|
|
|
427
427
|
)
|
|
428
428
|
|
|
429
429
|
_response_types_map: Dict[str, Optional[str]] = {
|
|
430
|
-
'200': "
|
|
430
|
+
'200': "IncomingInvoice",
|
|
431
431
|
'400': None,
|
|
432
432
|
'401': None,
|
|
433
433
|
'404': None,
|
|
@@ -446,7 +446,7 @@ class AFNORPDPPAApi:
|
|
|
446
446
|
|
|
447
447
|
|
|
448
448
|
@validate_call
|
|
449
|
-
def
|
|
449
|
+
def get_flux_entrant_api_v1_afnor_incoming_flows_flow_id_get_without_preload_content(
|
|
450
450
|
self,
|
|
451
451
|
flow_id: StrictStr,
|
|
452
452
|
include_document: Optional[StrictBool] = None,
|
|
@@ -463,9 +463,9 @@ class AFNORPDPPAApi:
|
|
|
463
463
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
464
464
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
465
465
|
) -> RESTResponseType:
|
|
466
|
-
"""
|
|
466
|
+
"""Retrieve and extract an incoming invoice
|
|
467
467
|
|
|
468
|
-
|
|
468
|
+
Downloads an incoming flow from the AFNOR PDP and extracts invoice metadata into a unified JSON format. Supports Factur-X, CII, and UBL formats.
|
|
469
469
|
|
|
470
470
|
:param flow_id: (required)
|
|
471
471
|
:type flow_id: str
|
|
@@ -493,7 +493,7 @@ class AFNORPDPPAApi:
|
|
|
493
493
|
:return: Returns the result object.
|
|
494
494
|
""" # noqa: E501
|
|
495
495
|
|
|
496
|
-
_param = self.
|
|
496
|
+
_param = self._get_flux_entrant_api_v1_afnor_incoming_flows_flow_id_get_serialize(
|
|
497
497
|
flow_id=flow_id,
|
|
498
498
|
include_document=include_document,
|
|
499
499
|
_request_auth=_request_auth,
|
|
@@ -503,7 +503,7 @@ class AFNORPDPPAApi:
|
|
|
503
503
|
)
|
|
504
504
|
|
|
505
505
|
_response_types_map: Dict[str, Optional[str]] = {
|
|
506
|
-
'200': "
|
|
506
|
+
'200': "IncomingInvoice",
|
|
507
507
|
'400': None,
|
|
508
508
|
'401': None,
|
|
509
509
|
'404': None,
|
|
@@ -517,7 +517,7 @@ class AFNORPDPPAApi:
|
|
|
517
517
|
return response_data.response
|
|
518
518
|
|
|
519
519
|
|
|
520
|
-
def
|
|
520
|
+
def _get_flux_entrant_api_v1_afnor_incoming_flows_flow_id_get_serialize(
|
|
521
521
|
self,
|
|
522
522
|
flow_id,
|
|
523
523
|
include_document,
|
|
@@ -570,7 +570,7 @@ class AFNORPDPPAApi:
|
|
|
570
570
|
|
|
571
571
|
return self.api_client.param_serialize(
|
|
572
572
|
method='GET',
|
|
573
|
-
resource_path='/api/v1/afnor/
|
|
573
|
+
resource_path='/api/v1/afnor/incoming-flows/{flow_id}',
|
|
574
574
|
path_params=_path_params,
|
|
575
575
|
query_params=_query_params,
|
|
576
576
|
header_params=_header_params,
|
|
@@ -602,9 +602,9 @@ class AFNORPDPPAApi:
|
|
|
602
602
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
603
603
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
604
604
|
) -> object:
|
|
605
|
-
"""
|
|
605
|
+
"""OAuth2 endpoint for AFNOR authentication
|
|
606
606
|
|
|
607
|
-
|
|
607
|
+
OAuth2 proxy endpoint to obtain an AFNOR access token. Proxies to AFNOR mock (sandbox) or real PDP depending on MOCK_AFNOR_BASE_URL. This endpoint is public (no Django auth required) as it is called by the AFNOR SDK.
|
|
608
608
|
|
|
609
609
|
:param _request_timeout: timeout setting for this request. If one
|
|
610
610
|
number provided, it will be total request
|
|
@@ -666,9 +666,9 @@ class AFNORPDPPAApi:
|
|
|
666
666
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
667
667
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
668
668
|
) -> ApiResponse[object]:
|
|
669
|
-
"""
|
|
669
|
+
"""OAuth2 endpoint for AFNOR authentication
|
|
670
670
|
|
|
671
|
-
|
|
671
|
+
OAuth2 proxy endpoint to obtain an AFNOR access token. Proxies to AFNOR mock (sandbox) or real PDP depending on MOCK_AFNOR_BASE_URL. This endpoint is public (no Django auth required) as it is called by the AFNOR SDK.
|
|
672
672
|
|
|
673
673
|
:param _request_timeout: timeout setting for this request. If one
|
|
674
674
|
number provided, it will be total request
|
|
@@ -730,9 +730,9 @@ class AFNORPDPPAApi:
|
|
|
730
730
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
731
731
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
732
732
|
) -> RESTResponseType:
|
|
733
|
-
"""
|
|
733
|
+
"""OAuth2 endpoint for AFNOR authentication
|
|
734
734
|
|
|
735
|
-
|
|
735
|
+
OAuth2 proxy endpoint to obtain an AFNOR access token. Proxies to AFNOR mock (sandbox) or real PDP depending on MOCK_AFNOR_BASE_URL. This endpoint is public (no Django auth required) as it is called by the AFNOR SDK.
|
|
736
736
|
|
|
737
737
|
:param _request_timeout: timeout setting for this request. If one
|
|
738
738
|
number provided, it will be total request
|