-
Notifications
You must be signed in to change notification settings - Fork 191
/
list-payments.php
84 lines (68 loc) · 2.94 KB
/
list-payments.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php
/*
* How to list your payments.
*/
try {
/*
* Initialize the Mollie API library with your API key.
*
* See: https://www.mollie.com/dashboard/developers/api-keys
*/
require "../initialize.php";
/*
* Determine the url parts to these example files.
*/
$protocol = isset($_SERVER['HTTPS']) && strcasecmp('off', $_SERVER['HTTPS']) !== 0 ? "https" : "http";
$hostname = $_SERVER['HTTP_HOST'];
$path = dirname($_SERVER['REQUEST_URI'] ?? $_SERVER['PHP_SELF']);
/*
* Get the all payments for this API key ordered by newest.
*/
$payments = $mollie->payments->page();
echo "<ul>";
foreach ($payments as $payment) {
echo "<li>";
echo "<strong style='font-family: monospace'>" . htmlspecialchars($payment->id) . "</strong><br />";
echo htmlspecialchars($payment->description) . "<br />";
echo htmlspecialchars($payment->amount->currency) . " " . htmlspecialchars($payment->amount->value) . "<br />";
echo "Status: " . htmlspecialchars($payment->status) . "<br />";
if ($payment->hasRefunds()) {
echo "Payment has been (partially) refunded.<br />";
}
if ($payment->hasChargebacks()) {
echo "Payment has been charged back.<br />";
}
if ($payment->canBeRefunded() && $payment->amountRemaining->currency === 'EUR' && $payment->amountRemaining->value >= '2.00') {
echo " (<a href=\"{$protocol}://{$hostname}{$path}/refund-payment.php?payment_id=" . htmlspecialchars($payment->id) . "\">refund</a>)";
}
echo "</li>";
}
echo "</ul>";
/**
* Get the next set of Payments if applicable
*/
$nextPayments = $payments->next();
if (! empty($nextPayments)) {
echo "<ul>";
foreach ($nextPayments as $payment) {
echo "<li>";
echo "<strong style='font-family: monospace'>" . htmlspecialchars($payment->id) . "</strong><br />";
echo htmlspecialchars($payment->description) . "<br />";
echo htmlspecialchars($payment->amount->currency) . " " . htmlspecialchars($payment->amount->value) . "<br />";
echo "Status: " . htmlspecialchars($payment->status) . "<br />";
if ($payment->hasRefunds()) {
echo "Payment has been (partially) refunded.<br />";
}
if ($payment->hasChargebacks()) {
echo "Payment has been charged back.<br />";
}
if ($payment->canBeRefunded() && $payment->amountRemaining->currency === 'EUR' && $payment->amountRemaining->value >= '2.00') {
echo " (<a href=\"{$protocol}://{$hostname}{$path}/refund-payment.php?payment_id=" . htmlspecialchars($payment->id) . "\">refund</a>)";
}
echo "</li>";
}
echo "</ul>";
}
} catch (\Mollie\Api\Exceptions\ApiException $e) {
echo "API call failed: " . htmlspecialchars($e->getMessage());
}