PHP code example of developertugrul / garanti-pos
1. Go to this page and download the library: Download developertugrul/garanti-pos 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/ */
developertugrul / garanti-pos example snippets
use Developertugrul\GarantiPos\Facades\GarantiPos;
$formHtml = GarantiPos::build3DForm(
['order_id' => 'Siparis123', 'amount' => '1000', 'installment' => '', 'security_level' => '3D_PAY'],
['number' => '5400...', 'expire_month' => '12', 'expire_year' => '25', 'cvv' => '123'],
route('payment.success'),
route('payment.error')
);
$formHtml = GarantiPos::build3DOOSForm(
['order_id' => 'Siparis123', 'amount' => '1000'],
route('payment.success'),
route('payment.error')
);
$formHtml = GarantiPos::buildGarantiPayForm([
'order_id' => 'Siparis123',
'amount' => '1000',
'company_name' => 'Magaza',
'bnsuseflag' => 'Y',
'installments' => [
['number' => '2', 'amount' => '1000'],
],
'items' => [
['number' => '1', 'product_id' => 'SKU-1', 'product_code' => 'SKU-1', 'quantity' => '1', 'price' => '1000', 'total_amount' => '1000'],
],
], route('payment.success'), route('payment.error'));
$response = GarantiPos::garantiPayDataRequest([
'order_id' => 'Siparis123',
'amount' => '1000',
'company_name' => 'Magaza',
'bnsuseflag' => 'Y',
'return_server_url' => route('payment.garantipay.server'),
'return_url' => route('payment.garantipay.return'),
'tckn' => '11111111110',
'gsm_number' => '5XXXXXXXXX',
'total_installment_count' => '2',
'installments' => [
['number' => '2', 'amount' => '1000', 'ratewithreward' => '0'],
],
]);
$check = GarantiPos::parse3DResponse($request->all(), [
'order_id' => $order->number,
'amount' => $order->amount_minor,
]);
if (!$check['hash_valid'] || !$check['md_status_accepted']) {
abort(400);
}
$response = GarantiPos::pay3DModel(
['order_id' => $order->number, 'amount' => $order->amount_minor],
[],
$request->all()
);
$response = GarantiPos::rewardUsage(
['order_id' => 'Siparis123', 'amount' => '1000', 'reward_type' => 'BNS'],
['number' => '428220...', 'expire_month' => '05', 'expire_year' => '28', 'cvv' => '123'],
'100'
);
GarantiPos::paySms(['order_id' => 'SMS-1', 'amount' => '100'], $cardData);
GarantiPos::smsPostAuth(['order_id' => 'SMS-1', 'amount' => '100'], '123456');
GarantiPos::payExtre(['order_id' => 'EXTRE-1', 'amount' => '100'], $cardData, '123456789');
GarantiPos::preAuthExtre(['order_id' => 'EXTRE-2', 'amount' => '1'], $cardData, '123456789');
GarantiPos::postAuthExtre(['order_id' => 'EXTRE-3', 'amount' => '1'], '123456789', $cardData);
GarantiPos::payDcc(['order_id' => 'DCC-1', 'amount' => '10000', 'dcc_currency' => '840'], $cardData);
GarantiPos::identifyInquiry(['order_id' => 'TCKN-1', 'amount' => '100'], $cardData, '11111111110');
GarantiPos::buildOOSForm(
['order_id' => 'COMMERCIAL-1', 'amount' => '100'],
route('payment.success'),
route('payment.error'),
\Developertugrul\GarantiPos\Enums\TransactionType::COMMERCIAL_CARD
);
GarantiPos::payDownPaymentSale([
'order_id' => 'DOWN-1',
'amount' => '1100',
'down_payment_rate' => '10',
'installment' => '2',
'moto_ind' => 'Y',
], $cardData);
GarantiPos::payDelayedSale([
'order_id' => 'DELAY-1',
'amount' => '100',
'delay_day_count' => '10',
'installment' => '2',
'moto_ind' => 'Y',
], $cardData);
GarantiPos::payCepBank(['order_id' => 'CEP-1', 'amount' => '100'], [
'gsm_number' => '5XXXXXXXXX',
'payment_type' => 'K',
'hash_date' => '20240613',
'hash_value' => '...',
]);
GarantiPos::payUtility(['order_id' => 'UTIL-1', 'amount' => '100'], $cardData, [
'type' => 'F',
'subscriber_code' => 'SUB-1',
'invoice_id' => 'INV-1',
]);
GarantiPos::payGsmUnitSales(['order_id' => 'GSM-1', 'amount' => '100'], $cardData, [
'unit_id' => 'UNIT-1',
'quantity' => '2',
'amount' => '50',
]);
GarantiPos::payMoneyCard(['order_id' => 'MONEY-1', 'amount' => '100'], $cardData, [
'invoice_amount' => '100',
'migros_cc_discount_amount' => '10',
'payment_amount' => '90',
]);
GarantiPos::settlementInquiry('20240601', [
['currency_code' => '949', 'type' => 'sales', 'count' => '1', 'amount' => '100'],
]);
$formHtml = GarantiPos::build3DForm([
'order_id' => 'FORM-1',
'amount' => '1000',
'utility_pay_invoice_id' => 'INV-1',
'gsm_quantity' => '2',
'money_invoice' => '1000',
'reward_list' => [
['type' => 'BNS', 'used_amount' => '100', 'gained_amount' => '0'],
],
'cheque_list' => [
['type' => 'P', 'amount' => '50', 'count' => '1'],
],
], $cardData, route('payment.success'), route('payment.error'));
bash
cmd.exe /c "cd /d C:\xampp\htdocs\libs\garanti-pos && C:\xampp\php\php.exe vendor\bin\phpunit --configuration phpunit.xml.dist"