1. Go to this page and download the library: Download tendopay/tendopay-sdk-php library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
tendopay / tendopay-sdk-php example snippets
use TendoPay\SDK\TendoPayClient;
$client = new TendoPayClient();
use TendoPay\SDK\Exception\TendoPayConnectionException;
use TendoPay\SDK\Models\Payment;
use TendoPay\SDK\V2\TendoPayClient;
### S:Merchant set proper values
$merchant_order_id = $_POST['tp_merchant_order_id'];
$request_order_amount = $_POST['tp_amount'];
$request_order_title = $_POST['tp_description'];
$redirectUrl = $_POST['tp_redirect_url'] ?? '';
### E:Merchant set proper values
$client = new TendoPayClient();
try {
$payment = new Payment();
$payment->setMerchantOrderId($merchant_order_id)
->setDescription($request_order_title)
->setRequestAmount($request_order_amount)
->setCurrency('PHP')
->setRedirectUrl($redirectUrl);
$client->setPayment($payment);
$redirectURL = $client->getAuthorizeLink();
header('Location: '.$redirectURL);
} catch (TendoPayConnectionException $e) {
echo 'Connection Error:'.$e->getMessage();
} catch (Exception $e) {
echo 'Runtime Error:'.$e->getMessage();
}
use TendoPay\SDK\Exception\TendoPayConnectionException;
use TendoPay\SDK\Models\VerifyTransactionRequest;
use TendoPay\SDK\V2\TendoPayClient;
$client = new TendoPayClient();
try {
if (TendoPayClient::isCallBackRequest($_REQUEST)) {
$transaction = $client->verifyTransaction(new VerifyTransactionRequest($_REQUEST));
if (!$transaction->isVerified()) {
throw new UnexpectedValueException('Invalid signature for the verification');
}
if ($transaction->getStatus() == \TendoPay\SDK\V2\ConstantsV2::STATUS_SUCCESS) {
// PAID
// Save $transactionNumber here
// Proceed merchant post order process
} else if ($transaction->getStatus() == \TendoPay\SDK\V2\ConstantsV2::STATUS_FAILURE) {
// FAILED
// do something in failure case
// error message $transaction->getMessage()
}
}
} catch (TendoPayConnectionException $e) {
echo 'Connection Error:'.$e->getMessage();
} catch (Exception $e) {
echo 'Runtime Error:'.$e->getMessage();
}
use TendoPay\SDK\Exception\TendoPayConnectionException;
use TendoPay\SDK\V2\TendoPayClient;
$client = new TendoPayClient();
try {
$client->cancelPayment($transactionNumber);
// merchant process here
} catch (TendoPayConnectionException $e) {
echo 'Connection Error:'.$e->getMessage();
} catch (Exception $e) {
echo 'Runtime Error:'.$e->getMessage();
}
use TendoPay\SDK\Exception\TendoPayConnectionException;
use TendoPay\SDK\V2\TendoPayClient;
$client = new TendoPayClient();
try {
$transaction = $client->getTransactionDetail($transactionNumber);
// merchant process here
// $transaction->getMerchantId();
// $transaction->getMerchantOrderId();
// $transaction->getAmount();
// $transaction->getTransactionNumber();
// $transaction->getCreatedAt();
// $transaction->getStatus();
} catch (TendoPayConnectionException $e) {
echo 'Connection Error:'.$e->getMessage();
} catch (Exception $e) {
echo 'Runtime Error:'.$e->getMessage();
}