https://github.com/smdlabtech/vat-vies-validator-batch-eu-excel-file
đOpen GitHub - VAT VIES Validator Batch EU Excel File đ€Shared đApp
https://github.com/smdlabtech/vat-vies-validator-batch-eu-excel-file
api-rest app checker eu european-union streamlit tva ue validator vat web web-app
Last synced: about 2 months ago
JSON representation
đOpen GitHub - VAT VIES Validator Batch EU Excel File đ€Shared đApp
- Host: GitHub
- URL: https://github.com/smdlabtech/vat-vies-validator-batch-eu-excel-file
- Owner: smdlabtech
- License: mit
- Created: 2025-09-17T17:51:56.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-09-17T18:24:54.000Z (9 months ago)
- Last Synced: 2025-10-09T03:46:02.040Z (8 months ago)
- Topics: api-rest, app, checker, eu, european-union, streamlit, tva, ue, validator, vat, web, web-app
- Language: Python
- Homepage:
- Size: 85.9 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# VIES TVA Validator - Batch Excel
[](https://your-app-url.streamlit.app)
Une application web Streamlit pour la vérification en masse de numéros de TVA européens via l'API VIES (Validation Information Exchange System) de la Commission Européenne.
## đŻ FonctionnalitĂ©s
- **Validation en masse** : Traitement de fichiers Excel contenant plusieurs numéros TVA
- **Interface intuitive** : Interface web simple et claire avec Streamlit
- **Gestion d'erreurs robuste** : Retry automatique, gestion des timeouts, traitement par lots
- **Export multiple formats** : Téléchargement des résultats en Excel et CSV
- **Statistiques en temps réel** : Suivi de la progression et statistiques de validation
- **Configuration avancée** : ParamÚtres personnalisables pour les délais et tentatives
## đ Format du fichier Excel
### Colonnes requises
- `MS Code` : Code pays Ă 2 lettres (FR, DE, IT, ES, etc.)
- `VAT Number` : Numéro de TVA à valider
### Colonnes optionnelles
- `Requester MS Code` : Code pays du demandeur
- `Requester VAT Number` : Numéro TVA du demandeur
Si les colonnes optionnelles sont absentes, les valeurs par défaut configurées dans l'interface seront utilisées.
### Exemple de fichier
```
MS Code | VAT Number | Requester MS Code | Requester VAT Number
FR | 12345678901 | FR | 98765432109
DE | 123456789 | |
IT | 12345678901 | |
```
## đ Utilisation
1. **Charger un fichier Excel** avec les colonnes requises
2. **Configurer les paramÚtres** dans la barre latérale (optionnel)
3. **Lancer la vérification** et suivre la progression
4. **Consulter les résultats** et statistiques
5. **Télécharger** les résultats en Excel ou CSV
## âïž Configuration
### ParamĂštres essentiels
- **Requester MS** : Code pays par défaut du demandeur (défaut: FR)
- **Requester VAT** : Numéro TVA par défaut du demandeur
### ParamÚtres avancés
- **Delay** : DĂ©lai entre les requĂȘtes API (dĂ©faut: 1.5s)
- **Retries** : Nombre de tentatives en cas d'échec (défaut: 2)
- **Chunk size** : Taille des lots de traitement (défaut: 10)
- **Chunk pause** : Pause entre les lots (défaut: 3s)
- **Timeout** : Timeout des requĂȘtes HTTP (dĂ©faut: 10s)
## đ ïž Installation locale
### Prérequis
- Python 3.8+
- pip
### Installation
```bash
# Cloner le repository
git clone https://github.com/votre-username/smdlabtech-vat-vies-validator-batch-excel.git
cd smdlabtech-vat-vies-validator-batch-excel
# Installer les dépendances
pip install -r requirements.txt
# Lancer l'application
streamlit run app/main.py
```
L'application sera disponible sur `http://localhost:8501`
## đ API VIES
Cette application utilise l'API REST VIES officielle de la Commission Européenne :
- **URL** : `https://ec.europa.eu/taxation_customs/vies/rest-api/check-vat-number`
- **Méthode** : POST
- **Format** : JSON
- **Limite de taux** : Respect nĂ©cessaire des limites (d'oĂč les dĂ©lais configurables)
### Pays supportés
Tous les pays membres de l'Union Européenne :
AT, BE, BG, CY, CZ, DE, DK, EE, ES, FI, FR, GR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK
## đ RĂ©sultats
### Colonnes de sortie
- **MS Code** : Code pays d'origine
- **VAT Number** : Numéro TVA vérifié
- **valid** : Statut de validation (True/False)
- **name** : Nom de l'entreprise (si disponible)
- **address** : Adresse de l'entreprise (si disponible)
- **Requester MS Code** : Code pays du demandeur
- **Requester VAT Number** : Numéro TVA du demandeur
- **Attempts** : Nombre de tentatives effectuées
- **timestamp** : Horodatage de la vérification
- **error** : Message d'erreur (si applicable)
## đ§ Structure du projet
```
smdlabtech-vat-vies-validator-batch-excel/
âââ app/
â âââ main.py # Application Streamlit principale
âââ requirements.txt # DĂ©pendances Python
âââ .streamlit/
â âââ config.toml # Configuration Streamlit
âââ README.md # Documentation
âââ LICENSE # Licence MIT
âââ Test_Check_VAT.xlsx # Fichier de test
```
## đ Licence
Ce projet est sous licence MIT. Voir le fichier [LICENSE](LICENSE) pour plus de détails.
## â ïž Limitations et bonnes pratiques
### Limitations
- **Timeout Streamlit Cloud** : Sessions limitées à quelques minutes
- **Taille de fichier** : Limité par la mémoire disponible
- **Pas de stockage persistant** : Les données ne sont pas sauvegardées entre les sessions
### Bonnes pratiques
- **Fichiers volumineux** : Diviser en plusieurs fichiers plus petits
- **Erreurs 429** : Augmenter les dĂ©lais entre requĂȘtes
- **Timeouts** : Augmenter la valeur du timeout pour les connexions lentes
- **Traitement par lots** : Ajuster la taille des chunks selon les performances
## đ ProblĂšmes connus
- L'API VIES peut ĂȘtre temporairement indisponible
- Certains numĂ©ros TVA valides peuvent ĂȘtre rejetĂ©s par l'API
- Les réponses peuvent varier selon la charge du serveur VIES
## đ Support
Pour signaler un bug ou demander une fonctionnalité :
1. Ouvrir une issue sur GitHub
2. Fournir un fichier de test Excel
3. Inclure les paramÚtres utilisés et les messages d'erreur
## đ Contribution
Les contributions sont les bienvenues ! Merci de :
1. Fork le projet
2. Créer une branche pour votre fonctionnalité
3. Commiter vos changements
4. Pousser vers la branche
5. Ouvrir une Pull Request