Closed xorgxx closed 7 years ago
As-tu vérifié l'url de prod ? Et la version ? SERVEUR_PREPROD
et VERSION
Dans app/config/services.yml
serveur:
# URL pour la prod ex: "https://ssl.paiement.cic-banques.fr/"
SERVEUR_PROD: "MON_URL"
# URL pour la préprod ex: "https://ssl.paiement.cic-banques.fr/test/"
SERVEUR_PREPROD: "MON_URL"
VERSION: "3.0"
pour info je suis toujours en test mode
SERVEUR_PREPROD: "https://p.monetico-services.com/test/"
VERSION: "3.0"
Il ne peut y avoir qu'un seul mode actif avec ce genre de système, prod OU preprod. Donc si l'un st actif l'autre n'est pas disponible.
je croix que la cle est en ver 1 VERSION 1 : E26870860228D268.........
# URL pour la prod ex: "https://ssl.paiement.cic-banques.fr/"
SERVEUR_PROD: "MON_URL"
# URL pour la préprod ex: "https://ssl.paiement.cic-banques.fr/test/"
SERVEUR_PREPROD: "https://p.monetico-services.com/test/"
VERSION: "3.0"```
j'ai trouvé cela dans le TpeService :
if ($kernel->getEnvironment() != "prod") {
$this->serveur = $configServeur['SERVEUR_PREPROD'];
} else {
$this->serveur = $configServeur['SERVEUR_PROD'];
}
hors moi je n'ai pas de url de retour dans le parametre SERVEUR_PROD:
du config.yml
donc je récapitule ::
le seul souci c'est que la réponse est erronée. ver=2; cdr=015
au final la transaction est validée des deux cotés mais je retourne une mauvaise réponse au CM.
Version Sf 3.2.6, rollincode/paiementcmcic-bundle dev-master 00d1e3c Add CMCIC TPE
dans ce code
public function retourServeurAction(Request $request) {
$servicePayment = $this->get('cmcic_tpe');
$serviceLogicPayment = $this->get('cmcic_logic_tpe');
if ($request->isMethod('POST')) {
$parameters = $request->request->all();
} else {
$parameters = $request->query->all();
}
$verified = $servicePayment->verifieSignature($parameters);
if ($verified) {
// traite payment back in this logic ==========================
$serviceLogicPayment->handlePaymentLogic($parameters);
}
$receipt = $servicePayment->getFinalReceipt();
$response = new Response();
$response->setContent(printf($servicePayment::$receipt, $receipt));
$response->setStatusCode(Response::HTTP_OK);
$response->headers->set('Content-Type', 'text/plain');
$response->headers->set('Pragma', 'no-cache');
return $response;
}
debug ---> $servicePayment::$receipt = 0; $receipt = 0
je pense que $servicePayment->verifieSignature($parameters);
bug, tout est bien vérifier et validé.
dans la fonction verifieSignature
$this->setFinalReceipt($this->handleReceipt($verified, $cgiRetour));
$verified = true
$cgiRetour = un array
$receipt = $servicePayment->getFinalReceipt();
$receipt = 0
c'est lui qui n'est pas bon !!! $servicePayment::$receipt
voila erreur !!!!
dans : public function retourServeurAction
from
$response->setContent(printf($servicePayment::$receipt, $receipt));
to
$response->setContent(sprintf($servicePayment::$receipt, $receipt));
ce matin tout fonctionne .... pour combien de temps ???
Bonjour, en test tout fonction bien. je veux passer en mode prod la le CM ne dit que les codes de retour sont faux !??? (ver = 2; cdr = 015)
Merci d'une aide.