refactoring, airtelmoney test
This commit is contained in:
50
app/Library/AirtelMoneyMw/callback.php
Normal file
50
app/Library/AirtelMoneyMw/callback.php
Normal file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
/*
|
||||
Developer: David Kumwenda
|
||||
Contact: 0881161942 or 0996139030
|
||||
App: Mpamba 4 MSE
|
||||
Date: 30 August 2025
|
||||
Duration: 1 day dev work*/
|
||||
|
||||
|
||||
// Read raw POST data
|
||||
$rawData = file_get_contents("php://input");
|
||||
|
||||
// Decode JSON
|
||||
$data = json_decode($rawData, true);
|
||||
|
||||
// Basic logging (optional, useful for debugging)
|
||||
file_put_contents("logs/callback_log_".date('Ymd').'.txt', date("Y-m-d H:i:s") . " - " . $rawData . PHP_EOL, FILE_APPEND); exit();
|
||||
|
||||
// Validate required fields
|
||||
if (isset($data["receipt_number"], $data["result_code"], $data["transaction_id"])) {
|
||||
|
||||
$receiptNumber = $data["receipt_number"];
|
||||
$resultCode = $data["result_code"];
|
||||
$resultDescription = $data["result_description"] ?? "";
|
||||
$resultTime = $data["result_time"] ?? date("Y-m-d H:i:s");
|
||||
$transactionId = $data["transaction_id"];
|
||||
$success = $data["success"] ?? false;
|
||||
|
||||
// Example: Save to database
|
||||
// (Replace this with your actual DB insert/update code)
|
||||
/*
|
||||
$conn = mysqli_connect("localhost", "user", "password", "dbname");
|
||||
$stmt = mysqli_prepare($conn, "INSERT INTO payments (transaction_id, receipt_number, result_code, result_description, result_time, success) VALUES (?, ?, ?, ?, ?, ?)");
|
||||
mysqli_stmt_bind_param($stmt, "ssissi", $transactionId, $receiptNumber, $resultCode, $resultDescription, $resultTime, $success);
|
||||
mysqli_stmt_execute($stmt);
|
||||
mysqli_stmt_close($stmt);
|
||||
mysqli_close($conn);
|
||||
*/
|
||||
|
||||
// Respond with 200 OK to acknowledge receipt
|
||||
http_response_code(200);
|
||||
echo json_encode(["status" => "callback received"]);
|
||||
|
||||
} else {
|
||||
// Missing required fields
|
||||
http_response_code(400);
|
||||
echo json_encode(["error" => "Invalid callback payload"]);
|
||||
}
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user