Des paiements protégés, de bout en bout
Aucun paiement Jɛmɛnipay ne se fait sans l'accord du client. Ajoutez à cela une API signée, des marchands vérifiés et une équipe qui traite chaque signalement.
Six protections, actives sur chaque paiement
Rien à activer : elles s'appliquent automatiquement, sans compliquer le paiement.
Validé par votre client
Chaque paiement est confirmé par le client lui-même dans son application Jɛmɛnipay : aucun débit sans son accord.
API protégée
Chaque appel est authentifié (clé API et jeton), horodaté et signé : une requête modifiée est refusée.
Données protégées
Échanges chiffrés (HTTPS), documents d'identité stockés de façon privée et journal des actions sensibles.
Marchands vérifiés
Les documents d'identité et d'entreprise de chaque marchand sont contrôlés par notre équipe avant la mise en production.
Requêtes à durée limitée
Une requête d'API n'est valable que 5 minutes, et ne peut pas être rejouée en production.
Comptes suspendus
Un marchand bloqué ne peut plus encaisser : ses paiements sont refusés immédiatement.
Une équipe qui traite chaque signalement
Un paiement vous semble suspect ? Contactez-nous : voici comment il est traité.
Signalement
Une transaction suspecte est signalée à notre équipe, qui l'examine.
Remboursement
Si nécessaire, la transaction est annulée et le client remboursé.
Fidélité protégée
Les points JemeniPoint gagnés sur une transaction frauduleuse sont annulés, et le compte de fidélité concerné est suspendu.
Vérifiez l'origine de chaque notification
Chaque webhook est signé avec votre clé secrète. Recalculez la signature : si elle ne correspond pas, ignorez le message.
- Signature HMAC-SHA512 dans l'en-tête X-Jemeni-Signature.
- Nouvelles tentatives automatiques après 1, 5 puis 30 minutes en cas d'échec.
- Adresse de secours utilisée si votre adresse principale ne répond pas.
// Corps brut reçu et signature envoyée par Jɛmɛnipay $payload = file_get_contents('php://input'); $signature = $_SERVER['HTTP_X_JEMENI_SIGNATURE'] ?? ''; $attendue = hash_hmac('sha512', $payload, $secretWebhook); if (!hash_equals($attendue, $signature)) { http_response_code(401); // message non authentique exit; }
Prêt à encaisser ?
Créez votre compte gratuitement et testez tout dans l'environnement de test. Notre équipe vous accompagne jusqu'à la mise en production.