Intégration dans Windev®
Guide pas à pas pour intégrer l'API DevVersPA dans vos projets Windev®, toutes versions compatibles SOAP.
Prérequis
- Windev® version 22 ou supérieure (recommandé), toutes versions avec support SOAP acceptées.
- Windev® version antérieure à 22 possible, nous consulter.
- Un compte DevVersPA actif (email + mot de passe fournis par SEALOG).
- Accès réseau sortant vers
https://devverspa.fr(port 443).
Étape 1 — Importer le WSDL dans l'IDE
Dans Windev®, importez le service web pour générer automatiquement les fonctions proxy :
- Ouvrez votre projet Windev®.
- Dans l'explorateur de projet, faites un clic droit sur « Webservices importés », puis choisissez Utiliser un Webservice SOAP…
- Collez l'URL du WSDL dans le champ prévu :
https://devverspa.fr/DEVVERSPA_WEB/awws/DevVersPA.awws?wsdl - Cliquez sur Suivant — Windev® analyse le WSDL et détecte les 8 opérations.
- Validez avec Terminer. Windev® génère les fonctions WLangage correspondantes.
Après l'import, les fonctions WS_1_ConnexionDevVersPA, WS_2_CreerFacturX, etc.
sont directement disponibles dans votre code WLangage, comme des fonctions Windev® natives.
Étape 2 — Connexion et obtention du token
Toutes les opérations nécessitent un token obtenu via WS_1_ConnexionDevVersPA.
À effectuer en début de session, ou lorsqu'un appel renvoie une erreur de token expiré.
// ── Connexion DevVersPA ──────────────────────────────────
// Variables globales recommandées (déclarées dans une procédure globale)
gsTokenDevVersPA est chaîne // Token de session
// Procédure de connexion
PROCÉDURE ConnexionDevVersPA()
gsTokenDevVersPA = WS_1_ConnexionDevVersPA(
"votre_email@exemple.com", // P_Login
"votre_motdepasse_crypté" // P_MotDePasse (fourni par SEALOG)
)
SI Gauche(gsTokenDevVersPA, 5) = "ERREUR" ALORS
Erreur("Connexion DevVersPA échouée :" + RC + gsTokenDevVersPA)
gsTokenDevVersPA = ""
RENVOYER Faux
FIN
RENVOYER Vrai // Connexion réussie Sécurité : ne stockez jamais le mot de passe en clair dans votre code source. Utilisez les paramètres Windev® ou une table de configuration chiffrée pour le conserver.
Étape 3 — Exemple complet : envoyer une facture de vente
Cet exemple illustre le flux complet : connexion → création Factur-X → envoi. Les exemples détaillés de chaque paramètre (JSON de facture, etc.) seront complétés prochainement.
// ── Envoi d'une facture de vente ─────────────────────────
PROCÉDURE EnvoyerFactureVente()
// 1. Connexion si nécessaire
SI gsTokenDevVersPA = "" ALORS
SI PAS ConnexionDevVersPA() ALORS RETOUR FIN
FIN
// 2. Préparer les données de la facture
sJsonFacture est chaîne
// sJsonFacture = ... (structure JSON DevVersPA, voir documentation WS_2)
// À compléter selon votre modèle de données
// 3. Lire le PDF source (votre facture au format PDF classique)
sCheminPDF est chaîne = "C:\Factures\FAC_2026_001.pdf"
bufFichierPDF est buffer = fChargeBuffer(sCheminPDF, fUnicode)
// Encodage Base64 du PDF
sContenuPDF est chaîne = Encodage(bufFichierPDF, encodageBase64URL)
// 4. Créer le Factur-X
sFacturX est chaîne
sFacturX = WS_2_CreerFacturX(
gsTokenDevVersPA, // Token
sJsonFacture, // JSON de la facture
sContenuPDF // PDF en Base64
)
SI Gauche(sFacturX, 5) = "Erreur" ALORS
Erreur("Création Factur-X échouée :" + RC + sFacturX)
RETOUR
FIN
// 5. Envoyer à la Plateforme Agréée
sResultat est chaîne
sResultat = WS_8_EnvoyerFactureDeVente(
gsTokenDevVersPA, // Token
sFacturX // Factur-X en Base64
)
SI Gauche(sResultat, 5) = "Erreur" ALORS
Erreur("Envoi échoué :" + RC + sResultat)
SINON
// sResultat contient l'identifiant DevVersPA de la facture, à enregistrer dans votre base de données
Info("Facture envoyée. ID DevVersPA : " + sResultat)
FIN Étape 4 — Vérifier le statut d'une facture émise
// ── Lecture du statut ────────────────────────────────────
PROCÉDURE LireStatutFacture(nIdFacture est entier)
sStatuts est chaîne
sStatuts = WS_5_LectureStatut(
gsTokenDevVersPA, // Token
nIdFacture, // ID retourné par WS_8
0 // IdEvenementDebut : 0 = tous les événements
)
SI Gauche(sStatuts, 5) = "Erreur" ALORS
Erreur("Erreur lecture statut :" + RC + sStatuts)
SINON
// sStatuts est un JSON contenant la liste des événements
Info(sStatuts)
FIN Gestion des erreurs
Toutes les fonctions DevVersPA retournent une chaîne. En cas d'erreur, cette chaîne commence par Erreur:. Il est recommandé de systématiquement tester ce préfixe avant tout traitement.
// Pattern de gestion d'erreur générique
sRetour est chaîne = WS_X_NomDeLaFonction(...)
SI Gauche(sRetour, 5) = "Erreur" ALORS
// Journaliser l'erreur
TraceErreur("DevVersPA WS_X : " + sRetour)
// Afficher un message utilisateur
Erreur("Une erreur est survenue lors de l'appel à l'API DevVersPA.")
SINON
// Traitement normal
...
FIN Exemples supplémentaires
Des exemples concrets supplémentaires (structure JSON de facture, cas d'usage complets) seront ajoutés prochainement dans cette page.
Documentation API
Retour