# Déploiement — backend PHP EUREKA BSD

## 1. Base de données
Dans le panneau de votre hébergeur (ex: OVH), créez une base MySQL, puis importez `schema.sql` via phpMyAdmin.
Notez l'hôte, le nom de la base, l'utilisateur et le mot de passe fournis.

## 2. Configuration
- `config.php` : renseignez `DB_HOST`, `DB_NAME`, `DB_USER`, `DB_PASS`.
- `monetico/config-monetico.php` : renseignez `MONETICO_TPE`, `MONETICO_CODE_SOCIETE`, `MONETICO_CLE` (fournis par CIC), et vos URLs de retour définitives une fois le domaine actif — à communiquer à CIC.

## 3. Upload
Déposez tout le dossier `backend-php/` (et les pages HTML du site) sur votre hébergement via FTP ou le gestionnaire de fichiers.

## 4. Compte admin
Un compte par défaut existe : `admin@eurekabsd.fr` / `changeme`.
**Connectez-vous immédiatement sur `admin/login.php` et changez ce mot de passe** (générez un nouveau hash avec `password_hash()` et mettez-le à jour en base — demandez à votre développeur de vous faire une page de changement de mot de passe si besoin, elle n'est pas incluse ici).

## 5. Monetico
- Testez d'abord en environnement d'homologation (URL de test fournie par CIC) avant de passer `MONETICO_URL` en production.
- Faites valider la fonction `monetico_compute_mac()` par votre développeur face au kit PHP officiel envoyé par CIC : c'est la partie la plus sensible (une erreur bloque les paiements).
- `monetico/retour-ok.php` contient un TODO explicite : la vérification de signature au retour doit être complétée avant mise en ligne réelle — sans elle, un tiers pourrait falsifier une confirmation de paiement.

## 6. Ce qui reste à connecter côté pages HTML
Les pages HTML actuelles (boutique, bon de commande, contact...) utilisent encore `localStorage` et des liens `mailto:`. Un développeur doit les faire pointer vers ces endpoints :
- Bon de Commande → `POST api/order.php`
- Paiement (carte) → rediriger vers `monetico/paiement-init.php?ref=<référence>`
- Contact → `POST api/contact.php`
- Pages admin → utiliser les fichiers de `admin/` fournis ici (remplacent les pages localStorage)
