CakePHP 3 et Paymill

Par Ragnar, il y a 10 ans


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

Aucune réponse