yasinkuyu/omnipay-paycell

Turkcell Paycell gateway for Omnipay payment processing library

1.1 2024-05-11 15:25 UTC

This package is auto-updated.

Last update: 2024-05-11 21:50:16 UTC


README

Turkcell Paycell gateway for Omnipay payment processing library

Latest Stable Version Total Downloads Latest Unstable Version License

Omnipay is a framework agnostic, multi-gateway payment processing library for PHP 5.3+. This package implements Turkcell Paycell support for Omnipay.

Readme TR

Installation

composer require league/omnipay yasinkuyu/omnipay-paycell


```
  Uncaught Http\Discovery\Exception\DiscoveryFailedException: Could not find resource using any discovery strategy. Find more information at http://docs.php-http.org/en/latest/discovery.html#common-errors

  composer require php-http/curl-client guzzlehttp/psr7 php-http/message
```

Omnipay is installed via Composer. To install, simply add it to your composer.json file:

{
  "require": {
    "yasinkuyu/omnipay-paycell": "^3.0"
  }
}

And run composer to update your dependencies:

$ curl -s http://getcomposer.org/installer | php
$ php composer.phar update

Basic Usage

The following gateways are provided by this package:

  • Paycell v3

Gateway Methods

  • purchase($options) - authorize and immediately capture an amount on the customer's card

  • refund($options) - refund an already processed transaction

  • checkout($options) - paycell host payment method

  • checkout_status($options) - paycell host payment method status

For general usage instructions, please see the main Omnipay repository.

  - Entegrasyona başlamadan önce menüde bulunan API Entegrasyonu sekmesindeki Genel Özellikler ve kullanmak istediğiniz fonksiyonlar için Fonksiyon Listesi bölümlerini incelemeniz faydalı olacaktır.
  - Entegrasyon sırasında kritik noktalar için Servis Erişim ve Genel Bilgiler sekmesindeki Entegrasyona Ait Önemli Notlar ve Gerekli Tanımlamalar kısmını kontrol etmeniz gerekmektedir.
  - Entegrasyona başlarken öncelikle çalışacağınız servis yöntemini belirlemelisiniz. SOAP tabanlı çalışacaksanız menüde bulunan SOAP Tabanlı XML Servis Örnekleri sekmesine, RESTFUL tabanlı çalışacaksanız menüde bulunan RESTFUL Tabanlı JSON Servis Örnekleri sekmesine bakmanız gerekecektir.
  - Eğer bir PAYCELL müşterisiyseniz size verilen test bilgileri ile ilerleyebilirsiniz ya da Servis Erişim ve Genel Bilgiler sekmesinden test için kullanabileceğiniz default bilgilere erişebilirsiniz.
  - İşlem ya da kart ekleme adımlarında 3D yöntemini kullanacaksanız, API Entegrasyonu menüsünde bulunan 3D Yönlendirme Sayfası başlığını incelemelisiniz.
  - Hazır olarak sunulan JAVA, .NET, NODE JS, PYTHON dillerinde yazılmış projeleri Örnek Kodlar sayfasında bulabilirsiniz.
  - Tüm süreç boyunca paycelldev@paycell.com.tr adresinden ya da iletişimde olduğunuz Paycell temsilcisinden destek alabilirsiniz.

  ## Test Kredi Kartları

  - Entegrasyon sürecinde kullanabileceğiniz test kredi kartlarını https://paycell.com.tr/test-kredi-kartlari sayfasında görebilirsiniz.

  ## Genel Entegrasyon TEST ve PREPROD Bilgileri

  - Test ve Prod ortamda kullanılacak değerler clienta özel entegrasyon bilgileridir. Paycell ekibi ile iletişime geçilerek bu bilgilerin temin edilmesi gerekir.
    Bu dokümandaki servislerin test edilebilmesi için aşağıdaki gibi default entegrasyon değerleri verilmiştir. İlgili parametre değerleri hem TEST hem de PREPROD ortamlarımız için geçerlidir.
    - Application name: PAYCELLTEST
    - Application password: PaycellTestPassword
    - Secure code: PAYCELL12345
    - Eulaid: 17
    - Merchant Code: 9998

  ## Gerekli Tanımlamalar

  - Üye İşyeri ve Sanal Pos Bankası

  ### Parametreler

  - Entegrasyon esnasında kullanılan Paycell’e ait bazı parametreler üye işyeri sisteminde tanımlanmalıdır. - eulaId: Üye işyerinin hangi kullanıcı sözleşmesi versiyonunu kullanacağı bilgisi - Söz konusu eulaID değerine karşılık gelen kullanıcı sözleşmesi metni içeriği - Ödeme işlemlerinde üye işyeri tarafından üretilecek 20 haneli referans numarasının ilk 3 hanesi prefix değer olarak Paycell tarafından üye işyerine bildirlecektir.

  ### Üye İşyeri Bilgileri

  - Her bir üye işyeri için Sanal Pos bankasında üye işyeri oluşturma işlemi tamamlanmış olmalıdır. Üye işyerine ait bilgiler Paycell’e iletilmelidir, iletilecek bilgilerin detayı Üye İşyeri Bilgileri bölümünde detaylandırılmıştır.
  - Sanal Pos bankasında eğer gerekli ise IP yetkilendirme tanımı yapılmalıdır, burada kullanılan IP bilgisi “Paycell” IP bilgisidir. Tanım gerekli olduğu durumda paylaşılacaktır.
  - Üye işyeri 3D doğrulama yöntemi kullanacak ise bu bilgiye yönelik Sanal Pos banka sisteminde ilgili tanımlama yapılmalıdır.
  - Paycell’de üye işyeri bilgileri tanımlandığında her biri üye işyeri için “Merchant Code” değeri üretilip üye işyeri ile paylaşılmaktadır. Bu değer üye işyeri sisteminde tanımlanmalı, ödeme işlemlerinde bu değer input olarak kullanılmaktadır.
    Paycell

  ### Erişim

  - Entegrasyon aşamasında üye işyerleri Paycell ProvisionServices API’lerine erişim için bağlanacakları test, preprod, prod server IP bilgilerini Paycell’e iletmelidir. IP yetkilendirme için Paycell’de ilgili tanımlar gerçekleştirilmelidir.

  ### Yetkilendirme

  - Yapılacak işlemlerin doğru üye işyerinden gönderildiğinin kontrolü amacıyla yetkilendirme tanımlamaları yapılmalıdır. Paycell üzerinde yapılacak olan aşağıdaki tanımlamalar üye işyeri ile paylaşılıp, üye işyeri yetkilendirme parametrelerini servis implemantasyonunda kullanmalıdır.

    - Application Name
    - Application Password
    - Secure Code

  ### Parametreler

  - Entegrasyon esnasında kullanılan üye işyerine ait bazı parametreler Paycell sisteminde tanımlanmalıdır.

    - 3D doğrulama yöntemi kullanılıyor ise callbackurl
    - eulaID: Üye işyerinin hangi kullanıcı sözleşmesi versiyonunu kullanacağı bilgisi
    - Kullanıcı arayüzü web page ise getCardTokenSecure işlemi domain tanımı

  ### Üye İşyeri Bilgileri

  - Uygulama kapsamındaki her bir üye işyeri için aşağıdaki bilgiler Paycell sisteminde tanımlanmalıdır.

    - Sanal Pos bankası sisteminde tanımlı üye işyeri adı
    - Gerekli olduğu durumda önyüz ekranlarda görüntülenmek istenen üye işyeri adı
    - Sanal Pos bankası sisteminde tanımlı üye işyeri numarası
    - Sanal Pos bankası sisteminde tanımlı terminal numarası
    - Sanal Pos bankası sisteminde tanımlı API kullanıcı adı
    - Sanal Pos bankası sisteminde tanımlı API kullanıcı şifresi
    - Üye işyerinin 3D doğrulama yöntemi kullanıp kullanmadığı bilgisi
    - Üye işyeri 3D doğrulama yöntemi kullanıyorsa Sanal Pos bankası sisteminde tanımlı storekey değeri

Requirements

To use the bindings, use Composer's autoload:

require_once('vendor/autoload.php');

Composer dependencies require a PHP version ">= 8.1.0"

Sample App

purchase.php
refund.php
void.php

checkout.php (Paycell host)

Support

If you are having general issues with Omnipay, we suggest posting on Stack Overflow. Be sure to add the omnipay tag so it can be easily found.

If you want to keep up to date with release anouncements, discuss ideas for the project, or ask more detailed questions, there is also a mailing list which you can subscribe to.

If you believe you have found a bug, please report it using the GitHub issue tracker, or better yet, fork the library and submit a pull request.