Bonjour,
Je suis actuellement en train de mettre en place un système de paiement en ligne et j'ai décidé d'utiliser PayMill.
Cependant, je trouve que malheureusement, il n'y a pas vraiment de ligne directrice à suivre selon les guides , j'ai donc entrepris d'imaginer mon concept moi-même.
Pour le moment, je crée un client , je crée une transaction et j'aimerais faire le paiement de cette transaction.
Voici mon début de code :
public function index (){
$this->autoRender = false;
//Test de requête avec la clé
$apiKey = '42cc934e3735d27797aea2bb7281a073';
$request = new \Paymill\Request($apiKey);
$token = mt_rand(1, 9999999999999) . time();
$client = new \Paymill\Models\Request\Client();
$list_clients = $request->getAll($client);
$client_email = $this->Auth->user()['email'];
//On parcourt la liste des clients, et si le client existe déjà on fait la transaction
foreach ($list_clients as $client){
if ($client['email'] == $client_email){
//On doit d'abord récupérer quel client est connecté
$connected_client = $client['id'];
//On prépare la transaction
$transaction = new \Paymill\Models\Request\Transaction();
$transaction->setAmount(4200) // e.g. "4200" for 42.00 EUR
->setCurrency('EUR')
->setClient($connected_client)
->setPayment('pay_2f82a672574647cd911d')
->setDescription('Test Transaction');
$response = $request->create($transaction);
var_dump($response);exit;
//Ensuite on effectue le paiement
$payment = new \Paymill\Models\Request\Payment();
$payment->setToken($token)
->setClient($connected_client);
$response = $request->create($payment);
}
//Sinon on crée le client
else {
$names_connected = $this->Auth->user()['firstname'] . " " . $this->Auth->user()['lastname'];
$client->setEmail($client_email)
->setDescription($names_connected);
$response = $request->create($client);
var_dump($response);
exit;
}
}
}
public function forceSSL(){
return $this->redirect('https://' . env('SERVER_NAME') . $this->request->here);
}
}
Mon problème est que je n'arrive pas créer la transaction, cependant , lorsque je la vardump, je la récupère correctement.
Est-ce que des personnes connaissent un peu cette API ?
J'ai essayé de chercher mais franchement, c'est le néant sur le net.
Merci d'avance