Aller au contenu

Bons d'activité

Un bon d'activité est un bon cadeau lié à une activité spécifique. Contrairement à la carte cadeau monétaire, le bon est pré-configuré pour une activité et des options précises.

Créer un bon d'activité

Pour créer un bon, vous devez connaître l'id de l'activité et les id des options tarifaires (obtenus via GET /listing/{slug}).

curl -X POST 'https://www.funbooker.com/api/partner/v1/voucher/create?apikey=VOTRE_CLE_API' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
    "listingId": 12345,
    "listingItems": [
      {
        "listingItemId": 111,
        "quantity": 2,
        "unitPrice": 29900
      }
    ],
    "giftName": "Marie",
    "giftReceiverName": "Pierre",
    "giftMessage": "Joyeux anniversaire !"
  }'

Paramètres de la requête :

Champ Type Requis Description
listingId integer Oui ID de l'activité
listingItems array Oui Options sélectionnées (voir ci-dessous)
giftName string Non Nom de la personne qui offre
giftReceiverName string Non Nom du bénéficiaire
giftMessage string Non Message personnalisé sur le bon

Structure de listingItems :

Champ Type Description
listingItemId integer ID de l'option tarifaire
quantity integer Quantité
unitPrice integer Prix unitaire en centimes

Réponse :

{
  "voucherCode": "XFKDJL456413",
  "bookingUrl": "https://www.funbooker.com/useVoucher/XFKDJL456413",
  "price": {
    "amount": 59800,
    "currency": "EUR"
  }
}

Détails de la réponse :

Champ Description
voucherCode Code du bon à transmettre au bénéficiaire
bookingUrl URL pour convertir le bon en réservation
price Prix total en centimes (somme des items x quantités)

Workflow du bon d'activité

sequenceDiagram
    participant C as Client
    participant R as Site Revendeur
    participant API as Partner API
    participant F as Funbooker
    participant B as Bénéficiaire

    Note over R: 1. Le revendeur consulte le catalogue
    R->>API: GET /listing/saut-en-parachute-paris
    API-->>R: {id: 12345, listingItems: [{id: 111, label: "Saut tandem", price: 29900}]}

    Note over R: 2. Le client achète le bon
    C->>R: Achète un bon "Saut tandem x2"
    R->>API: POST /voucher/create (listingId: 12345, items: [{id: 111, qty: 2}])
    API-->>R: {voucherCode: "XFKDJL456413", bookingUrl: "..."}
    R-->>C: Transmet le code et l'URL de réservation

    Note over B: 3. Le bénéficiaire utilise le bon
    C->>B: Offre le bon d'activité
    B->>F: Utilise le code pour réserver une date
    F->>F: Réservation confirmée