Aller au contenu

Sandbox et mise en production

Le sandbox est une copie complète et séparée de Localoge : son propre serveur, sa propre base de données, son propre stockage de photos. Rien de ce que vous y faites ne peut atteindre la production, et la production ne lit jamais le sandbox.

Sandbox Production
Site https://sandbox.localoge.com https://localoge.com
API https://sandbox.localoge.com/api/v1/channel https://localoge.com/api/v1/channel
Clés acceptées lok_test_… uniquement lok_live_… uniquement
Espace développeur https://sandbox.localoge.com/app/dev https://developers.localoge.com/app/dev
E-mails Aucun ne sort : boîte de test consultable Envoyés
Paiements Aucun Réels

Une clé présentée à la mauvaise instance est refusée, avec un message qui dit où aller :

{
"success": false,
"error": {
"code": "UNAUTHORIZED",
"message": "Invalid or missing API key: test keys (lok_test_) only work on https://sandbox.localoge.com/api/v1/channel",
"request_id": "…"
}
}

GET https://sandbox.localoge.com/instance (sans authentification) répond { "instance": "sandbox", … } : pratique pour afficher dans votre interface sur quelle instance un compte est branché.

Connectez-vous sur https://sandbox.localoge.com/app/dev. Votre compte y est créé depuis votre espace de production (bouton « Accéder au sandbox »), avec une clé lok_test_ affichée une seule fois.

  • Vos logements s’affichent comme sur le vrai site : fiche, photos, calendrier, prix. Ce que vous poussez, vous le voyez tel qu’un voyageur le verrait.
  • Les logements de test des autres Channel Managers y sont visibles aussi. Le sandbox est un site partagé entre intégrateurs : n’y mettez que des données fictives, jamais les adresses ou les photos réelles d’un client.
  • Aucun e-mail ne sort. Tout ce que Localoge aurait envoyé (confirmation de réservation, message au voyageur, alerte à l’hôte) atterrit dans une boîte de test, consultable depuis l’espace développeur ou par GET /sandbox/emails.
  • Aucun paiement réel. Le circuit de paiement n’est pas branché sur de l’argent.

Dès que votre demande d’intégration est acceptée, trois comptes sont créés pour vous dans le sandbox, en même temps que votre clé de test. L’e-mail d’ouverture et l’accueil de votre espace sandbox en donnent les adresses :

Compte Adresse Pour quoi faire
Hôte de démonstration votre adresse Les logements que votre logiciel envoie sans host_ref y arrivent. Il encaisse en mode test (compte Stripe de test déjà configuré).
Second hôte hote-test.<votre-slug>@sandbox.localoge.invalid Sans logement : pour éprouver le parcours où un hôte autorise votre logiciel et vous obtenez un host_ref.
Voyageur voyageur.<votre-slug>@sandbox.localoge.invalid Pour réserver sur https://sandbox.localoge.com et payer.

Aucun mot de passe n’est envoyé. Les trois comptes prennent le mot de passe que vous choisissez en activant votre espace sandbox (et en le réinitialisant). Un collègue que vous invitez reçoit, lui aussi, son lien d’activation du sandbox dans son invitation.

Les paiements du sandbox passent par le mode test de Stripe : carte 4242 4242 4242 4242, n’importe quelle date future, n’importe quel code. Aucun argent réel ne circule, et vous recevez les mêmes événements qu’en production (reservation.created, payment.succeeded, reservation.cancelled, payment.refunded).

Vous pouvez éprouver le parcours d’autorisation d’un hôte de bout en bout : créez un compte hôte de test sur https://sandbox.localoge.com, faites-le passer par la page d’autorisation, échangez le code contre un host_ref (POST /oauth/token), puis poussez ses logements. Voir Connecter un hôte.

Sans host_ref, un logement poussé avec une clé de test est rattaché au compte hôte de test de votre société.

Trois routes n’existent qu’en sandbox (elles répondent 404 NOT_FOUND en production) :

Route Rôle
POST /sandbox/simulate Faire réserver un voyageur fictif, lui faire écrire, publier un avis, valider un logement. Voir Simulateur.
POST /sandbox/reset Supprimer vos logements, séjours et messages de test, pour repartir d’une page blanche.
GET /sandbox/emails?limit= Lire les e-mails que le sandbox aurait envoyés.

Les mêmes gestes existent en boutons dans l’espace développeur du sandbox.

Tout le reste se comporte exactement comme en production, y compris les refus : nuits déjà prises, idempotence, limites de débit, signature des webhooks.

La page Conformité liste les contrôles, et GET /conformance vous dit, à partir de votre propre journal d’appels, lesquels sont passés. En résumé :

  1. Créer un logement, le relire, le republier à l’identique et vérifier unchanged: true.
  2. Le publier réellement : trois photos, et regarder missing se vider.
  3. Fermer puis rouvrir des nuits, et lire skipped.
  4. Pousser des tarifs.
  5. Nous envoyer une réservation, puis rejouer exactement le même appel : 200 et le même identifiant, jamais un doublon.
  6. Réserver ces mêmes nuits une seconde fois, avec un autre identifiant : 409 DATES_UNAVAILABLE.
  7. Annuler.
  8. Déclarer un webhook, en recevoir un en 2xx, et refuser une signature falsifiée.
  9. Respecter un 429 et son Retry-After.
  10. Parcourir une liste avec next_cursor.
  1. Votre conformité est au vert dans l’espace développeur du sandbox.
  2. Dans l’espace de production (https://developers.localoge.com/app/dev), vous demandez l’accès. La demande est refusée tant qu’un contrôle de conformité échoue (409 conformite_incomplete, avec le détail).
  3. Un administrateur Localoge accorde l’accès ; vous en êtes prévenu par e-mail.
  4. Vous créez votre clé lok_live_… et redéclarez votre webhook avec elle : les abonnements ne traversent pas les instances.
  5. Vous poussez un premier logement réel. Il passe en pending_validation : un administrateur le relit avant publication. Les suivants se publient automatiquement dès qu’ils sont complets. Voir Cycle de vie.
  6. Vous importez votre parc.

Gardez votre accès au sandbox. C’est là que vous éprouverez vos évolutions sans toucher à votre parc en vente.