REST API · v1

Documentation Développeurs

Intégrez Sendatip dans vos propres systèmes. Récupérez les pools, transactions et analyses directement via notre API REST.

Base URLhttps:/.sendatip.de/api/api/v1

Authentification

Toutes les requêtes API doivent être authentifiées avec une clé API valide. Envoyez la clé dans l'en-tête HTTP X-API-Key.

Vous pouvez créer des clés API dans vos paramètres. Aller aux paramètres →
curl https://api.sendatip.de/api/v1/pools \
  -H "X-API-Key: sk_live_your_key_here"
GET/v1/pools

Lister les pools

Retourne tous les pools de votre organisation – avec un lien de pourboire direct par pool.

Aucun paramètre de requête

Exemple de requête

curl https://api.sendatip.de/api/v1/pools \
  -H "X-API-Key: sk_live_your_key_here"

Exemple de réponse

{
  "success": true,
  "pools": [
    {
      "id": "uuid",
      "code": "HOTEL-BAR",
      "name": "Hotel Bar",
      "description": "Trinkgeld für die Hotelbar",
      "is_active": true,
      "created_at": "2026-01-15T10:00:00Z",
      "tip_url": "https://sendatip.de/tip/HOTEL-BAR"
    }
  ]
}
GET/v1/pools/:code/qr

Générer un QR code

Retourne le QR code d'un pool au format PNG ou SVG. Idéal pour les imprimantes de reçus, affichages POS ou mises en page print.

ParameterTypPflichtBeschreibung
codestringCode du pool (ex. HOTEL-BAR)
formatpng|svgFormat de sortie : png (défaut) ou svg
sizenumberLargeur en pixels (100–1000, défaut : 300)

Exemple de requête

# PNG herunterladen
curl "https://api.sendatip.de/api/v1/pools/HOTEL-BAR/qr?format=png&size=400" \
  -H "X-API-Key: sk_live_your_key_here" \
  --output qr-hotel-bar.png

# SVG als String
curl "https://api.sendatip.de/api/v1/pools/HOTEL-BAR/qr?format=svg" \
  -H "X-API-Key: sk_live_your_key_here"
GET/v1/transactions

Transactions

Retourne les transactions terminées de votre organisation. Filtrable par date et pool – idéal pour la comptabilité ou l'export.

ParameterTypPflichtBeschreibung
fromdateDate de début (AAAA-MM-JJ)
todateDate de fin (AAAA-MM-JJ)
pool_codestringSeulement les transactions d'un pool spécifique
limitnumberNombre de résultats (max. 500, défaut : 50)
offsetnumberDécalage pour la pagination (défaut : 0)

Exemple de requête

curl "https://api.sendatip.de/api/v1/transactions?from=2026-01-01&to=2026-06-30&limit=100" \
  -H "X-API-Key: sk_live_your_key_here"

Exemple de réponse

{
  "success": true,
  "transactions": [
    {
      "id": "uuid",
      "amount": 500,
      "currency": "eur",
      "status": "completed",
      "created_at": "2026-06-15T14:23:00Z",
      "pool": { "code": "HOTEL-BAR", "name": "Hotel Bar" },
      "recipient": { "display_name": "Maria M.", "email": "maria@example.com" }
    }
  ],
  "meta": { "limit": 100, "offset": 0 }
}
GET/v1/analytics/summary

Résumé Analytics

Retourne un résumé pour la période sélectionnée : revenu total, nombre de transactions, pourboire moyen et pool le plus performant.

ParameterTypPflichtBeschreibung
fromdateDate de début (AAAA-MM-JJ)
todateDate de fin (AAAA-MM-JJ)

Exemple de requête

curl "https://api.sendatip.de/api/v1/analytics/summary?from=2026-01-01&to=2026-06-30" \
  -H "X-API-Key: sk_live_your_key_here"

Exemple de réponse

{
  "success": true,
  "summary": {
    "total_amount": 125400,
    "transaction_count": 312,
    "average_amount": 402,
    "currency": "eur",
    "top_pool": {
      "code": "HOTEL-BAR",
      "name": "Hotel Bar",
      "amount": 48200
    }
  }
}

Codes d'erreur

Toutes les erreurs sont retournées en JSON avec les champs error.code et error.message.

HTTPCodeSignification
401INVALID_API_KEYClé API manquante, invalide ou mauvais format
401API_KEY_REVOKEDLa clé API a été révoquée
404POOL_NOT_FOUNDLe pool avec ce code n'existe pas ou n'appartient pas à votre organisation
429RATE_LIMITEDTrop de requêtes – veuillez respecter le rate limiting
500FETCH_ERRORErreur interne du serveur