ethemkizil/omnipay-paratika

Paratika (Asseco) MOTO/3D gateway for Omnipay payment processing library

2.0.4 2020-09-02 14:49 UTC

This package is auto-updated.

Last update: 2024-09-09 21:06:14 UTC


README

Paratika (Asseco) (Akbank, TEB, Halkbank, Finansbank, İş Bankası, Şekerbank, Vakıfbank ) gateway for Omnipay payment processing library

Omnipay is a framework agnostic, multi-gateway payment processing library for PHP 5.3+. This package implements Paratika (Turkish Payment Gateways) support for Omnipay.

Paratika Api Entegrasyonu, Asseco firmasının yeni sanal pos hizmeti için Omnipay kütüphanesi. Akbank, TEB, Halkbank, Finansbank, İş Bankası, Şekerbank ve Vakıfbank taksit imkanı sunuyor.

安装

composer require ethemkizil/omnipay-paratika

基本用法

This package provides the following gateways:

  • Paratika
    • Akbank
    • TEB
    • Hakbank
    • Finansbank
    • İş Bankası
    • Şekerbank
    • Vakıfbank

网关方法

  • authorize($options) - 在客户的卡上授权一定金额
  • capture($options) - 捕获先前已授权的金额
  • purchase($options) - 授权并立即捕获客户卡上的金额
  • refund($options) - 退还已处理的交易
  • void($options) - 通常只能在提交交易后24小时内调用
  • session($options) - 购买所需的会话参数
  • query($options) - 查询各种其他查询

有关一般使用说明,请参阅主要的 Omnipay 存储库。

示例

		require __DIR__ . '/vendor/autoload.php';

		use Omnipay\Omnipay;

		$gateway = Omnipay::create('Paratika');
		$gateway->setMerchant('10000000');
		$gateway->setMerchantUser('test@test.net');
		$gateway->setMerchantPassword('Paratika123');
		$gateway->setSecretKey('QOClasdJUuDDWasdasdasd');
		$gateway->setBank('ISBANK');

		$gateway->setMode("NonDirectPost3D");
		//Diğer paremetreler: api DirectPost3D NonDirectPost3D
		//3D test için işlem şifresi a ya da 1

		// Zorunlu parametreler
		$card = [
		    'number'        => '5456165456165454',
		    'expiryMonth'   => '12',
		    'expiryYear'    => '2020',
		    'cvv'           => '000',

		    'email'         => 'info@test.com',
		    'firstname'     => 'Insya',
		    'lastname'      => 'Bilisim',
		    'phone'         => '95555050505',

		    'billingAddress1' => 'Test sokak',
		    'billingCity'     => 'Tekirdag',
		    'billingPostcode' => '59850',
		    'billingCountry'  => 'Turkey',

		    'shippingAddress1' => 'Test sokak',
		    'shippingCity'     => 'Tekirdag',
		    'shippingPostcode' => '59850',
		    'shippingCountry'  => 'Turkey'
		];

		try {
		 
		    $options = [
		        'amount'        => 100.00,
		        'currency'      => 'TRY',
		        //'installment'   => 0, // Taksit
		        'orderId'       => 'S-12341308', // Benzersiz olmalı.
		        'returnUrl'     => 'http://local.desktop/Paratika/callback.php',
		        'cancelUrl'     => 'http://local.desktop/Paratika/callback.php',
		        'sessionType'   => 'PAYMENTSESSION', //Diğer parametreler: PAYMENTSESSION WALLETSESSION
		        'card'          => $card,
		    ];

		    // SessionToken almak için oturum açalım
		    $sessionResponse = $gateway->session($options)->send();
		    
		    if ($sessionResponse->isSuccessful()) {
		        
		            $sessionToken =  $sessionResponse->getSessionToken();

		            // Oturum değiştikenini satış ve diğer işlemlerde kullanmak için tanımlayalım.
		            $gateway->setSessionToken($sessionToken);

		            // Auth (Satış) işlemi
		            $response = $gateway->purchase($options)->send();

		            if ($response->isSuccessful()) {
		                echo "İşlem başarılı transactionId:". $response->getTransactionId();
		            } elseif ($response->isRedirect()) {
		                $response->redirect();
		            } else {
		                echo $response->getMessage();
		            }

		    } elseif ($sessionResponse->isRedirect()) {
		        $sessionResponse->redirect();
		    } else {
		        echo $sessionResponse->getMessage();
		    }

		 
		} catch (\Exception $e) {
		    echo $e->getMessage();
		}