use Omnipay\Omnipay;
$gateway = Omnipay::create('MoMo_POS');
$gateway->initialize([
'accessKey' => 'Do MoMo cấp',
'partnerCode' => 'Do MoMo cấp',
'secretKey' => 'Do MoMo cấp',
'publicKey' => 'Do MoMo cấp',
]);
$response = $gateway->purchase([
"partnerRefId" => "Merchant123556666",
"amount" => 30000,
"paymentCode" => "MM627755248085056826",
"storeId" => "001",
"storeName" => "Cửa hàng 01 của đối tác",
])->send();
if ($response->isSuccessful()) {
// TODO: xử lý đơn hàng và tạo request confirm.
print $response->amount;
var_dump($response->getData()); // Trả về toàn bộ dữ liệu do MoMo trả về.
} else {
print $response->getMessage();
}
Kham khảo thêm các tham trị khi tạo yêu cầu và MoMo trả về tại đây.
$response = $gateway->payConfirm([
"partnerRefId" => "Merchant123556666",
"requestType" => "capture",
"requestId" => "1512529262248",
"momoTransId" => "12436514111",
"customerNumber" => "0963181714",
])->send();
if ($response->isSuccessful()) {
// TODO: trả về response cho MoMo
print $response->amount;
var_dump($response->getData()); // Trả về toàn bộ dữ liệu do MoMo trả về.
} else {
print $response->getMessage();
}
Kham khảo thêm các tham trị khi tạo yêu cầu và MoMo trả về tại đây.
$response = $gateway->queryTransaction([
'partnerRefId' => '123',
'requestId' => '456',
])->send();
if ($response->isSuccessful()) {
// TODO: xử lý kết quả.
print $response->data['amount'];
var_dump($response->getData()); // toàn bộ data do MoMo gửi về.
} else {
print $response->getMessage();
}
Kham khảo thêm các tham trị khi tạo yêu cầu và MoMo trả về tại đây.
$response = $gateway->refund([
'partnerRefId' => '123',
'requestId' => '999',
'momoTransId' => 321,
'amount' => 50000,
])->send();
if ($response->isSuccessful()) {
// TODO: xử lý kết quả.
print $response->amount;
var_dump($response->getData()); // toàn bộ data do MoMo gửi về.
} else {
print $response->getMessage();
}
Kham khảo thêm các tham trị khi tạo yêu cầu và MoMo trả về tại đây.
Một số phương thức chung hổ trợ debug khi isSuccessful()
trả về FALSE
:
print $response->getCode(); // mã báo lỗi do MoMo gửi sang.
print $response->getMessage(); // câu thông báo lỗi do MoMo gửi sang.
Kham khảo bảng báo lỗi getCode()
chi tiết tại đây.