ja, webhook.php
require_once 'Mollie/API/Autoloader.php';
$mollie = new Mollie_API_Client;
$mollie->setApiKey('test_sHkWPVSxt4QNuWs5p8FNpUygNnhtzf');
try
{
$payment = $mollie->payments->create(
array(
'amount' => $bedrag,
'description' => 'Algenie Optie A',
'redirectUrl' => 'http://
www.algenie.eu/test2/bedankt.php';, 'webhookUrl'=>'http://
www.algenie.eu/test2/webhook.php';,
'metadata' => array(
'order_id' => $order
)
)
);
/*
* Send the customer off to complete the payment.
*/
header("Location: " . $payment->getPaymentUrl());
exit;
}
catch (Mollie_API_Exception $e)
{
echo "API call failed: " . htmlspecialchars($e->getMessage()) . " on field " + htmlspecialchars($e->getField());
}
Toevoeging op 05/08/2015 23:23:23:
Ik heb in een foutenlogboek gezien dat het niet lukt om webhook.php aan te roepen:
Rapportage fouten logboek
Filter op URL:
Toon hele lijst
URL Type Start / Laatste Pogingen
http://www.algenie.eu/test2/webhook.php
id=tr_qAZQQ9Ugyk api 05-08-2015 16:54
05-08-2015 21:22 10x rotate clockwise
http://www.algenie.eu/test2/webhook.php
id=tr_FHq5d2krp3 api 05-08-2015 16:53
05-08-2015 21:21 10x rotate clockwise
webhook.php staat in de map test2
dus, lijkt me, moet de fout in de inhoud van webhook.php zitten
ik hb na het decoderen van de json string een updateopdracht gezet van een getalletje op een plaats, dus geen uitkomsten van de string gebruikt en dat werkt niet. de fout moet dan daarboven zitten
misschien een puntkomma waar het niet mag? typefout? maar ik zie de fout niet
<?php
$loginstring = "";
$host = "localhost";
$servermelding = "Helaas kan op dit moment geen verbinding met de database worden gemaakt, probeer het later nog eens";
$database = "algen23_crowd";
$user="algen23";
$password = "8x9S7sYO";
$t = @mysql_connect ($host, $user, $password) or die ($servermelding);
// INCLUDE CONNECTIE
try
{
// INCLUDE MOLLIE, ZIE GITHUB LINK
require_once 'Mollie/API/Autoloader.php';
$mollie = new Mollie_API_Client;
$mollie->setApiKey('test_sHkWPVSxt4QNuWs5p8FNpUygNnhtzf');
$payment = $mollie->payments->get($_POST["id"]);
$order_id = $payment->metadata->order_id;
$Mode = $payment->mode;
$ID = $payment->id;
$CrDate = $payment->createdDatetime;
$PDate = $payment->paidDatetime;
$CaDate = $payment->cancelledDatetime;
$EDate = $payment->expiredDatetime;
$Amount = $payment->amount;
$Description = $payment->description;
$Method = $payment->method;
$Details_Name = $payment->details->consumerName;
$Links = $payment->links->redirectUrl;
$Details_Account = $payment->details->consumerAccount;
// Update HIER je order, niet in het isPaid() deel, want stel, een betaling is geannuleerd (cancelled), dan wil je die ook updaten.
$update="update betaling set (payment_id='4555') where volgnummer='35'";
$res=mysql_query ($update);
if ($payment->isPaid() == TRUE)
{
// Wat je hier kunt doen is jezelf, je leverancier en/of je klant mailen
$to = '
[email protected]';
$from = 'From: betaalwebhookpagina';
$subject = 'succes';
$message = 'zo gaat i goed';
mail($to, $subject, $message, $from);
}
elseif ($payment->isOpen() == FALSE)
{
$to = '
[email protected]';
$from = 'From: betaalwebhookpagina';
$subject = 'nee';
$message = 'zo gaat i slecht';
mail($to, $subject, $message, $from);
}
}
catch (Mollie_API_Exception $e)
{
echo "API call failed: " . htmlspecialchars($e->getMessage());
error_log("Big trouble!", 1,
"
[email protected]");
}
Response
HTTP/1.1 200 OK
?>
</body>
</html>
de info achter // staat in 1 lange zin,niet afgebroken zoals het scherm hier doet
Toevoeging op 06/08/2015 09:08:27:
HET LUKT!
geen idee waarom, maar vooral stilzetten en niet bewegen en verder gaan :-)
bedankt