Description

URGENCE! Nos employés nous ont fait part d’un problème fréquent avec certains groupes durant le temps des Fêtes.

Plusieurs groupes donnent peu ou aucun pourboire, malgré la charge plus élevée de travail que requiert servir un groupe.

Nous avons donc pris la décision d’imposer un pourboire fixe configurable durant la temps des Fêtes pour les groupes. Les clients individuels ne sont donc pas affectés par cette règle.

Le taux de pourboire obligatoire est à 0% par défaut. Il impose un pourboire obligatoire sur le sous-total des factures des clients membre d’un groupe.

Exemple

Voici une facture de 10$ d’un client membre d’un groupe avec un taux de pourboire configuré à 15%:

{
  "orders": [...],
  "subtotal": 10,
  "taxes": 0,
  "tip": 1.50,
  "total": 11.50
}

Ce même client n’aurait pas eu de pourboire imposé s’il avait été seul:

{
  "orders": [...],
  "subtotal": 10,
  "taxes": 0,
  "tip": 0,
  "total": 10
}

Ça ne veut pas dire qu’il n’aurait pas laissé de pourboire, seulement que le pourboire n’aurait pas été précisé sur la facture du client.

Conditions de succès

# Description
1 Il est possible de configurer le café avec un taux de pourboire obligatoire ajouté sur la facturation des clients membre d’un groupe.
2 Par défaut, le taux de pourboire obligatoire est à 0%.
3 Le taux est ajouté automatiquement comme pourboire au checkout uniquement sur la facture des clients membre d’un groupe.
4 Le taux de pourboire obligatoire doit être entre 0 et 100, inclusivement.
5 Le taux de pourboire est ajouté sur le sous-total, avant les taxes.

API

:white_check_mark: Configuration du pourboire de groupe

Requête

POST /config

{
  "group_tip_rate": 0::number,
  ...
}

Attention: Toutes les configurations doivent être envoyées à chaque appel sans exception, mais toutes options supplémentaires (non reconnues) seront ignorées (voir comment faire en Java avec Jackson).

Réponses

:arrow_right: HTTP 200 Ok

:arrow_right: HTTP 400 Bad Request - Quand le taux est inférieur à 0% ou en haut de 100%.

{
  "error": "INVALID_GROUP_TIP_RATE"::string,
  "description": "The group tip rate must be set to a value between 0 to 100."::string
}

:white_check_mark: MISE-À-JOUR: Obtenir la facture

Requête

GET /customers/{CUSTOMER_ID}/bill

Réponses

:arrow_right: NOUVEAU: HTTP 200 OK

{
  "orders": ["Mocha", "Espresso"],
  "subtotal": 4.15::float,
  "taxes": 0.62::float,
  "tip": 0.22::float,
  "total": 5.00::float
}

Un pourboire peut maintenant être imposé sur la facture des clients membre d’un groupe.