Transaction
Nous souhaitons ajouter une nouvelle route à notre API, spécifiquement pour les transactions effectuées par nos partenaires. L’objectif est de permettre un échange sécurisé de métadonnées concernant les voyages.
Cette route est actuellement en développement, cette page sera prochainement mise à jour avec le schéma complet.
Requête
POST https://connect.visamundi.io/v3/partner/{name}/transaction
Dans cette requête, {name} doit être remplacé par votre identifiant. Celui-ci, en association avec votre clé API, vous permettra d’obtenir les informations souhaités.
Paramètres de la requête
Paramètre | Description | |
---|---|---|
access_token | Requis | La clé permettant de vous authentifier auprès de l’API. En savoir plus sur la clé API |
language | Optionnel | En savoir plus sur les langues disponibles |
Corps de la requête
Champs obligatoires
Il y a 5 champs requis: external_identifier, booking_email, journey.arrival_date, journey.destination.cca3 et journey.metrics.external_services.
Ci-dessous vous trouverez une description des cinq champs obligatoires.
Valeur | Explication |
---|---|
external_identifier | Représente votre identifiant ou username donné lors de la création de votre compte. |
booking_email | L’adresse email utilisée pour la réservation du vol, nous n’acceptons qu’une seule adresse email valide. |
arrival_date | Date au format ISO 8601 YYYY-MM-DD. |
cca3 | Code pays à 3 lettres aussi connu sous le nom de code ISO 3166-1 alpha-3. Exemple: IND pour l’Inde. |
external_services | Booléen pour nous donner l’autorisation de proposer nos services supplémentaires (assurances, indemnisations). Par défaut la valeur est à false. |
Champs optionnels
Valeur | Explication |
---|---|
cca2 | Code pays à 2 lettres aussi connu sous le nom de code ISO 3166-1 alpha-2. Exemple: IN pour l’Inde. |
iata | Code à 3 lettres attribué à chaque aéroport à travers le monde. |
icao | Code à 4 lettres attribué à chaque aéroport à travers le monde. |
travellers_count | Nombre total de voyageurs. |
journey_duration | Durée totale du voyage en jours. Exemple: 3 pour un voyage d’une durée de trois jours. |
currency_display | La monnaie affichée sur le formulaire envoyé aux voyageurs. Vous avez le choix entre ces cinq monnaies: EUR, GBP, CAD, USD, XOF. « EUR » est sélectionné par défaut. |
language | Le language d’affichage du formulaire envoyé aux voyageurs. Vous avez le choix entre ces cinq langues: fr, en, de, es, it, pt. « en » est sélectionné par défaut. |
departure_date | La date de départ des voyageurs au format ISO 8601 (YYYY-MM-DD). |
home_departure_date | La date de départ du domicile des voyageurs, cela nous permet de planifier en cas de transit. |
travellers | Liste d’objets comportant certaines données concernant les voyageurs. |
id | Index du voyageur. |
full_name | Nom complet du voyageur. |
nationality | Nationalité du voyageur en format ISO 3166-1 alpha-3. |
birthdate | Date de naissance du voyageur en format ISO 8601 (YYYY-MM-DD). |
booking_id | Numéro de booking de la réservation du vol. |
payment_timestamp | Timestamp du paiement ISO 8601 (YYYY-MM-DD’T’hh:mm:ssTZD) |
sales_channel | Canal de vente utilisé pour la transaction. Vous avez le choix entre web, mobile ou physical. Pas de valeur par défaut. |
client_type | Type de client ayant effectué la transaction. Vous avez le choix entre individuals ou corporate. Pas de valeur par défaut. |
{
"external_identifier": "<string>", // required
"booking_email": // required,
"journey": {
"arrival_date": "<string>", // required
"destination": {
"cca3": "<string>", // required
"cca2": "<string>",
"iata": "<string>",
"icao": "<string>"
},
"metrics": {
"external_services": "<boolean>", // required
"travellers_count": "<integer>",
"journey_duration": "<integer>",
"currency_display": "<string>",
"language": "<string>"
},
"departure_date": "<string>",
"home_departure_date": "<string>",
"origin": {
"cca2": "<string>",
"cca3": "<string>",
"iata": "<string>",
"icao": "<string>"
},
"travellers": [
{
"id": "<string>",
"full_name": "<string>",
"nationality": "<string>",
"birthdate": "<string>"
},
{
"id": "<string>",
"full_name": "<string>",
"nationality": "<string>",
"birthdate": "<string>"
}
]
},
"booking_id": "<string>",
"payment_timestamp": "<string>",
"metadata": {
"sales_channel": "call_center",
"client_type": "<string>"
}
}
Codes et messages d’erreur
En plus des codes et messages d’erreur de l’API, ce endpoint peut renvoyer certains autres codes et messages :
StatusCode | Code | Description |
---|---|---|
200 | no_country_found | « No country found » La requête s’est bien déroulée mais les pays passés avec les paramètres nationality ou destination n’ont pas été trouvé. |
400 | required_parameters_error | « Missing or incorrect required parameters » Le paramètre {name} n’a pas été envoyé avec la requête ou ne respecte pas le format attendu. |
400 | invalid_request_body | « Invalid request body. Body should not be an array but an object. » Le corps de la requête est invalide. Le corps de la requête ne peut pas être une liste, uniquement un objet. |
403 | forbidden | « Partner ID and API key do not match » Le paramètre {name} dans l’url du endpoint ne correspond pas à la clé d’authentification. |
404 | user_not_found | « User not found » Utilisateur non-trouvé. |