İşlem Durum Bilgisi



Satış/iptal/iade sonrası işlemin durumunu öğrenmek için kullanılan bir istektir. Tarayıcı veya internet sorunlarından ötürü websitenizin işlem hakkında bilgisiz kaldığı durumlarda kullanılır. get_param bu işlem için özel olarak TransactionStatus şeklinde değer atanarak belirlenir. İlgili işleme ait ID bilgisi merchant_trx_id parametresine koyularak gönderilir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionStatus olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

merchant_trx_id: ZORUNLU

This parameter must be filled with the original id value you defined for the operation.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.


Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionStatus
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_e2da8f7c25_dbab58efe
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Cevap Örneği


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfull.com",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionStatus',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "merchant_trx_id"  => 'P_F_e2da8f7c25_dbab58efe',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Listesi

Bu istek, belirli bir günün tüm işlemlerini çekmek için kullanışlıdır. get_param bu işlem için özel olarak TransactionsList şeklinde değer atanarak belirlenir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionsList olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

day_date: ZORUNLU

Bu parametre, alacağınız işlemlerin belirli gün tarihidir. İçin bu değeri kullanmanız gerekir.
Tarih dd-mm-yyyy formatında olmalıdır. Örnek : 15-03-2019


erp_status: OPSİYONEL

Hesabınız herhangi bir ERP sistemine entegre edilmişse:
SUCCESS_MIGRATED İşlem başarlı
UN_SUCCESS_MIGRATED İşlem başarsız.
UN_MIGRATED İşlem henüz taşınmadı.

hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.

Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.


İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionsList
language: tr
client_ip: 192.168.1.1
day_date: 15-03-2019
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Sample request


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[0]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
[1]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
[2]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}



PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionsList',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "day_date"  => '15-03-2019',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İstek Örneği

merchant: merchant name
type: Set
set_param: ErpTrx
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_dcb57c356e_43266fe08
sync_status: 1
sync_message: success
remote_id: 201
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Sample request


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":[]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Set',

                       "get_param"       => 'ErpTrx',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "transaction_id"   => 'P_F_dcb57c356e_43266fe08',

                       "sync_status"      => '1',

                       "sync_message"     => 'success',

                       "remote_id"        => '12',

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Durum Bilgisi



Satış/iptal/iade sonrası işlemin durumunu öğrenmek için kullanılan bir istektir. Tarayıcı veya internet sorunlarından ötürü websitenizin işlem hakkında bilgisiz kaldığı durumlarda kullanılır. get_param bu işlem için özel olarak TransactionStatus şeklinde değer atanarak belirlenir. İlgili işleme ait ID bilgisi merchant_trx_id parametresine koyularak gönderilir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionStatus olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

merchant_trx_id: ZORUNLU

This parameter must be filled with the original id value you defined for the operation.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.


Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionStatus
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_e2da8f7c25_dbab58efe
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Cevap Örneği


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfull.com",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionStatus',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "merchant_trx_id"  => 'P_F_e2da8f7c25_dbab58efe',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Listesi

Bu istek, belirli bir günün tüm işlemlerini çekmek için kullanışlıdır. get_param bu işlem için özel olarak TransactionsList şeklinde değer atanarak belirlenir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionsList olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

day_date: ZORUNLU

Bu parametre, alacağınız işlemlerin belirli gün tarihidir. İçin bu değeri kullanmanız gerekir.
Tarih dd-mm-yyyy formatında olmalıdır. Örnek : 15-03-2019


erp_status: OPSİYONEL

Hesabınız herhangi bir ERP sistemine entegre edilmişse:
SUCCESS_MIGRATED İşlem başarlı
UN_SUCCESS_MIGRATED İşlem başarsız.
UN_MIGRATED İşlem henüz taşınmadı.

hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.

Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.


İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionsList
language: tr
client_ip: 192.168.1.1
day_date: 15-03-2019
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Sample request


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[0]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
[1]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
[2]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}



PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionsList',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "day_date"  => '15-03-2019',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Durum Bilgisi



Satış/iptal/iade sonrası işlemin durumunu öğrenmek için kullanılan bir istektir. Tarayıcı veya internet sorunlarından ötürü websitenizin işlem hakkında bilgisiz kaldığı durumlarda kullanılır. get_param bu işlem için özel olarak TransactionStatus şeklinde değer atanarak belirlenir. İlgili işleme ait ID bilgisi merchant_trx_id parametresine koyularak gönderilir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionStatus olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

merchant_trx_id: ZORUNLU

This parameter must be filled with the original id value you defined for the operation.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.


Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionStatus
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_e2da8f7c25_dbab58efe
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Cevap Örneği


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfull.com",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionStatus',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "merchant_trx_id"  => 'P_F_e2da8f7c25_dbab58efe',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Listesi

Bu istek, belirli bir günün tüm işlemlerini çekmek için kullanışlıdır. get_param bu işlem için özel olarak TransactionsList şeklinde değer atanarak belirlenir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionsList olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

day_date: ZORUNLU

Bu parametre, alacağınız işlemlerin belirli gün tarihidir. İçin bu değeri kullanmanız gerekir.
Tarih dd-mm-yyyy formatında olmalıdır. Örnek : 15-03-2019


erp_status: OPSİYONEL

Hesabınız herhangi bir ERP sistemine entegre edilmişse:
SUCCESS_MIGRATED İşlem başarlı
UN_SUCCESS_MIGRATED İşlem başarsız.
UN_MIGRATED İşlem henüz taşınmadı.

hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.

Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.


İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionsList
language: tr
client_ip: 192.168.1.1
day_date: 15-03-2019
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Sample request


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[0]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
[1]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
[2]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}



PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionsList',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "day_date"  => '15-03-2019',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

Erp Durumunu Güncelle


Bu istekle, belirli işlem için ERP entegrasyon sonucunu güncelleyebilirsiniz. get_param bu işlem için özel olarak ErpTrx şeklinde değer atanarak belirlenir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Set olmalıdır.


set_param: ZORUNLU

Parametre değeri ErpTrx olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

transaction_id: ZORUNLU

Payfull'dan gelen İşlem No.


sync_status: ZORUNLU

Entegrasyon başarılı ise 1 gönderilmelidir, başarısız ise 0 gönderilmelidir.


sync_message: ZORUNLU

Entegrasyon sonuç mesajı, mesaj boş olabilir.


remote_id: ZORUNLU

Erp veritabanında yeni kayıt oluşturuldu ise kayıt id'si gönderilmelidir, kayıt oluşturulmadı ise 0 gönderilmelidir.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.

Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Set
set_param: ErpTrx
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_dcb57c356e_43266fe08
sync_status: 1
sync_message: success
remote_id: 201
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Sample request


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":[]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Set',

                       "get_param"       => 'ErpTrx',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "transaction_id"   => 'P_F_dcb57c356e_43266fe08',

                       "sync_status"      => '1',

                       "sync_message"     => 'success',

                       "remote_id"        => '12',

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

SFTP İşlem Listesi



This request is useful to pull all transactions that come from bank via SFTP of specific day. get_param value must be Sftp specially for this request.

Bu istek, belirli bir günün tüm SFTP işlemlerini çekmek için kullanılıdır. get_param bu işlem için özel olarak Sftp şeklinde değer atanarak belirlenir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri Sftp olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

day_date: ZORUNLU

Bu parametre, alacağınız işlemlerin belirli gün tarihidir. İçin bu değeri kullanmanız gerekir.
Tarih dd-mm-yyyy formatında olmalıdır. Örnek : 15-03-2019


bank_id: ZORUNLU

Hareketlerini almak istediğiniz banka id'si, Isbank/Garanti/YapiKredi.


report_type: optional

Özet ve Detaylı olmak üzere iki tip rapor alabilirsiniz. Özet rapor için: summery Detaylı rapor için: detailed olarak gönderebilmelidir.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.

Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: Sftp
language: tr
client_ip: 192.168.1.1
day_date: 15-03-2019
bank_id: Isbank
report_type: summery
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Sample request


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[0]=> [{
 "trxDate":"28.04.2020",
 "trxTime":"09:56:25",
 "trxType":"Satış",
 "trxTotal":"100.10",
 "trxInstallments":"0",
 "trxCard":"4111********1111",
 "trxCurrency":"TL",
 "trxPFId":"P_F_eb2fc80ef8_9c4dafc16",
 "trxRawData":"{...}",
}]
[1]=> [{
 "trxDate":"29.04.2020",
 "trxTime":"10:01:25",
 "trxType":"Satış",
 "trxTotal":"996.10",
 "trxInstallments":"0",
 "trxCard":"4111********1111",
 "trxCurrency":"TL",
 "trxPFId":"P_F_eb2fc80ef8_9c4da0239",
 "trxRawData":"{...}",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'Sftp',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "day_date"  => '15-03-2019',

                       "bank_id"   => 'Isbank',

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Durum Bilgisi



Satış/iptal/iade sonrası işlemin durumunu öğrenmek için kullanılan bir istektir. Tarayıcı veya internet sorunlarından ötürü websitenizin işlem hakkında bilgisiz kaldığı durumlarda kullanılır. get_param bu işlem için özel olarak TransactionStatus şeklinde değer atanarak belirlenir. İlgili işleme ait ID bilgisi merchant_trx_id parametresine koyularak gönderilir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionStatus olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

merchant_trx_id: ZORUNLU

This parameter must be filled with the original id value you defined for the operation.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.


Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionStatus
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_e2da8f7c25_dbab58efe
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Cevap Örneği


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfull.com",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionStatus',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "merchant_trx_id"  => 'P_F_e2da8f7c25_dbab58efe',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Listesi

Bu istek, belirli bir günün tüm işlemlerini çekmek için kullanışlıdır. get_param bu işlem için özel olarak TransactionsList şeklinde değer atanarak belirlenir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionsList olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

day_date: ZORUNLU

Bu parametre, alacağınız işlemlerin belirli gün tarihidir. İçin bu değeri kullanmanız gerekir.
Tarih dd-mm-yyyy formatında olmalıdır. Örnek : 15-03-2019


erp_status: OPSİYONEL

Hesabınız herhangi bir ERP sistemine entegre edilmişse:
SUCCESS_MIGRATED İşlem başarlı
UN_SUCCESS_MIGRATED İşlem başarsız.
UN_MIGRATED İşlem henüz taşınmadı.

hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.

Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.


İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionsList
language: tr
client_ip: 192.168.1.1
day_date: 15-03-2019
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Sample request


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[0]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
[1]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
[2]=> [{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfullçcom",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}



PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionsList',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "day_date"  => '15-03-2019',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

Erp Durumunu Güncelle


Bu istekle, belirli işlem için ERP entegrasyon sonucunu güncelleyebilirsiniz. get_param bu işlem için özel olarak ErpTrx şeklinde değer atanarak belirlenir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Set olmalıdır.


set_param: ZORUNLU

Parametre değeri ErpTrx olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

transaction_id: ZORUNLU

Payfull'dan gelen İşlem No.


sync_status: ZORUNLU

Entegrasyon başarılı ise 1 gönderilmelidir, başarısız ise 0 gönderilmelidir.


sync_message: ZORUNLU

Entegrasyon sonuç mesajı, mesaj boş olabilir.


remote_id: ZORUNLU

Erp veritabanında yeni kayıt oluşturuldu ise kayıt id'si gönderilmelidir, kayıt oluşturulmadı ise 0 gönderilmelidir.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.

Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Set
set_param: ErpTrx
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_dcb57c356e_43266fe08
sync_status: 1
sync_message: success
remote_id: 201
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Sample request


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":[]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Set',

                       "get_param"       => 'ErpTrx',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "transaction_id"   => 'P_F_dcb57c356e_43266fe08',

                       "sync_status"      => '1',

                       "sync_message"     => 'success',

                       "remote_id"        => '12',

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Durum Bilgisi



Satış/iptal/iade sonrası işlemin durumunu öğrenmek için kullanılan bir istektir. Tarayıcı veya internet sorunlarından ötürü websitenizin işlem hakkında bilgisiz kaldığı durumlarda kullanılır. get_param bu işlem için özel olarak TransactionStatus şeklinde değer atanarak belirlenir. İlgili işleme ait ID bilgisi merchant_trx_id parametresine koyularak gönderilir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionStatus olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

merchant_trx_id: ZORUNLU

This parameter must be filled with the original id value you defined for the operation.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.


Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionStatus
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_e2da8f7c25_dbab58efe
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Cevap Örneği


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfull.com",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionStatus',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "merchant_trx_id"  => 'P_F_e2da8f7c25_dbab58efe',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Durum Bilgisi



Satış/iptal/iade sonrası işlemin durumunu öğrenmek için kullanılan bir istektir. Tarayıcı veya internet sorunlarından ötürü websitenizin işlem hakkında bilgisiz kaldığı durumlarda kullanılır. get_param bu işlem için özel olarak TransactionStatus şeklinde değer atanarak belirlenir. İlgili işleme ait ID bilgisi merchant_trx_id parametresine koyularak gönderilir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionStatus olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

merchant_trx_id: ZORUNLU

This parameter must be filled with the original id value you defined for the operation.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.


Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionStatus
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_e2da8f7c25_dbab58efe
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Cevap Örneği


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfull.com",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionStatus',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "merchant_trx_id"  => 'P_F_e2da8f7c25_dbab58efe',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

İşlem Durum Bilgisi



Satış/iptal/iade sonrası işlemin durumunu öğrenmek için kullanılan bir istektir. Tarayıcı veya internet sorunlarından ötürü websitenizin işlem hakkında bilgisiz kaldığı durumlarda kullanılır. get_param bu işlem için özel olarak TransactionStatus şeklinde değer atanarak belirlenir. İlgili işleme ait ID bilgisi merchant_trx_id parametresine koyularak gönderilir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionStatus olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

merchant_trx_id: ZORUNLU

This parameter must be filled with the original id value you defined for the operation.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.


Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionStatus
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_e2da8f7c25_dbab58efe
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Cevap Örneği


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfull.com",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionStatus',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "merchant_trx_id"  => 'P_F_e2da8f7c25_dbab58efe',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

BANKA
KART NUMARASI
SON KULLANMA TARİHİ
CVV
AKBANK-vISA
4355084355084358
12/2030
000
AKBANK-MASTER
5571135571135575
12/2030
000
TEB-VISA
4402934402934406
12/2030
000
TEB-MASTER
5101385101385104
12/2030
000
HALKBANK-VISA
4920244920244921
12/2030
001
HALKBANK-MASTER
5404355404355405
12/2030
001
FINANSBANK-VISA
4022774022774026
12/2030
000
FINANSBANK-MASTER
5456165456165454
12/2030
000
ISBANK-VISA
4508034508034509
12/2030
000
ISBANK-MASTER
5406675406675403
12/2030
000
ANADOLUBANK-VISA
4258464258464253
12/2030
000
ANADOLUBANK-MASTER
5222405222405229
12/2030
000
KUVEYTTURK-VISA
4025894025894022
12/2030
000
INGBANK-VISA
4555714555714556
12/2030
000
INGBANK-MASTER
5400245400245409
12/2030
000
GARANTI
5342614723204016
06/2020
599
YKB
4506347048543223
08/2019
000
4506347011448053
02/2020
000
4506347022052795
02/2020
000
4506347031187533
02/2020
000
4506347043358536
02/2020
000
4921307045825277
02/2020
000
5400610093155852
02/2020
000
5400617049774124
02/2020
000
5400637003737156
02/2020
000
VAKIBANK
4938410114062912
01/2020
956
HSBC
5100051016005572
01/2020
742
KOMBANK-VISA
4920244920244913
01/2018
000
KOMBANK-MASTERCARD
5404355404355405
01/2018
000
MOKA
5259222233334444
12/2030
000
FINANSBANK - TROY
9792023757123604
01/2026
861
TURK ELEKTRONIK   PARA - TROY
9792350046201275
07/2027
993
VAKIFBANK - TROY
6501700194147183
03/2023
136
VAKIFBANK - TROY
6500528865390837
01/2021
686
AKBANK - TROY
9792072000017956
01/2020
843

İşlem Durum Bilgisi



Satış/iptal/iade sonrası işlemin durumunu öğrenmek için kullanılan bir istektir. Tarayıcı veya internet sorunlarından ötürü websitenizin işlem hakkında bilgisiz kaldığı durumlarda kullanılır. get_param bu işlem için özel olarak TransactionStatus şeklinde değer atanarak belirlenir. İlgili işleme ait ID bilgisi merchant_trx_id parametresine koyularak gönderilir.


Gerekli Parametreler

merchant: ZORUNLU

Payfull hesabınız içerisinde(Ayarlar->Apı Hesapları) tanımladığınız Apı hesabına ait "Üye İşyeri Adı" alanına girilen değerdir.


type: ZORUNLU

İşlem tipi Get olmalıdır.


get_param: ZORUNLU

Parametre değeri TransactionStatus olmalıdır.


language: ZORUNLU

Satış işlemi sonrası gelecek olan cevabın dil seçeneğini belirlemekte kullanılır. İki seçenek vardır. en / tr


client_ip: ZORUNLU

İşlemi yapacak olan kişiye ait IP bilgisi gönderilmelidir.

merchant_trx_id: ZORUNLU

This parameter must be filled with the original id value you defined for the operation.


hash: ZORUNLU

İşlemin hangi api kullanıcısına ait olduğunu anlamamız ve güvenlik için kullanılan Güvenlik kodu parametresidir. Nasıl oluşturulacağı aşağıda anlatılmış olup sayfanın sağ tarafındaki örnekte php örneği olarak gösterilmiştir.


Güvenlik kodu (hash) değerini oluşturmak için aşağıdaki işlemler sırası ile gerçekleştirilmelidir;

  • - Bütün parametrelerin oluşturulduğundan emin olun. Her senaryo için Güvenlik kodu (hash) oluşturma işlemi son işlem ve son parametreniz olmalıdır.
  • - Parametreleri alfabetik olarak A'dan Z'ye sıralayınız.
  • - Bir string değeri($siraliParametreler) oluşturup teker teker her parametrenizin uzunluğunu ve kendisini yanyana ekleyiniz.
  • - sha256 hash kodu üretici fonksiyon ile parametrelerinizden oluşturduğunuz ($siraliParametreler) string değerinizi ve Payfull hesabınızda belirlenen "Üye İşyeri Şifresi" ni kullanarak bir Güvenlik kodu üretiniz.
  • - Parametreleriniz içerisine parametre ismi "hash", değeri ise şimdi oluştuduğunuz Güvenlik kodunu yerleştirerek Api isteğinizi Endpoint Url'inize gönderiniz.

İstek Örneği

merchant: merchant name
type: Get
get_param: TransactionStatus
language: tr
client_ip: 192.168.1.1
transaction_id: P_F_e2da8f7c25_dbab58efe
hash: e34a9d3aa4312e43cae22573d21edf8d84ee9564

Cevap Örneği


{
"status":1,
"ErrorMSG":"",
"ErrorCode":"00",
"data":
[{
 "type":"Sale",
 "transaction_processor":"Moka",
 "transaction_id":"P_F_e2da8f7c25_dbab58efe"
 "transaction_status":"1",
 "total":"10.00",
 "currency":"TRY",
 "original_currency":"TL",
 "currency_rate":"1.0000",
 "currency_code":"949",
 "installments":"1",
 "mode":"TEST",
 "date":"20-02-2018 11:26:09",
 "client_ip":"78.186.146.107",
 "customer_firstname":"Faruk",
 "customer_lastname":"Cinemre",
 "customer_email":"test@payfull.com",
 "customer_phone":"+95399999999",
 "customer_tc":"38770568598",
}]
}


PHP Örneği

$api_url = 'https://yourSubDomain.payfull.com/integration/api/v1';

                       $merchantPassword = 'your merchant password';

                       $params = array(

                       "merchant"        => 'your merchant name',

                       "type"            => 'Get',

                       "get_param"       => 'TransactionStatus',

                       "language"        => 'tr',

                       "client_ip"       => '192.168.1.1',

                       "merchant_trx_id"  => 'P_F_e2da8f7c25_dbab58efe',

                       "passive_data"    => 'xxxxxxxx', //opsiyonel

                       );

                       ksort($params);

                       $hashString = "";

                       foreach ($params as $key=>$val) {

                           $l = mb_strlen($val);

                           if($l) $hashString .= $l . $val;

                       }

                       $params["hash"] = hash_hmac("sha256", $hashString, $merchantPassword);

                       $ch = curl_init();

                       curl_setopt($ch, CURLOPT_URL, $api_url);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

                       curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

                       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                       curl_setopt($ch, CURLOPT_TIMEOUT, 60);

                       curl_setopt($ch, CURLOPT_POST, 1);

                       curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));

                       $response = curl_exec($ch);

                       $curlerrcode = curl_errno($ch);

                       $curlerr = curl_error($ch);

                       var_dump(json_decode($response));

Banka/Ödeme Kuruluşu
Parametre Adı
Parametre Değeri
Garanti
Üye İşyeri ID
7000679
Secure Key
123qweASD
Terminal ID
30691297
3D Anahtarı
12345678
PROVAUT
123qweASD
PROVRFN
123qweASD
Akbank
API Üye İş Yeri ID
100658785
API Şifresi
TEST1111
API Kullanıcı Adı
api
3D Anahtarı
123456
Finansbank
API Üye İş Yeri ID
600658785
API Şifresi
TEST1111
API Kullanıcı Adı
api
3D Anahtarı
123456
Halkbank
API Üye İş Yeri ID
500658785
API Şifresi
TEST1111
API Kullanıcı Adı
api
3D Anahtarı
123456
HSBC
API Üye İş Yeri ID
100658785
API Şifresi
TEST1111
API Kullanıcı Adı
api
3D Anahtarı
123456
Iysico
PayU
Üye İşyeri
OPU_TEST
Şifre
SECRET_KEY
BKM Express
Üye İşyeri
ID
9d6818c5-8da5-4072-db17-c7f559b44aeb
Özel Anahtar
Lütfen kendi private key değerinizi
oluşturup BKM ile paylaşınız.
BKM Açık Anahtar
lüften BKM ile bağlantı kurup,
Public key değerlerini alıp kendi tarfınıza ekleyin
MOKA
dealerCode
34
Username
PayfullTest
Password
HS7D7329OD9DJ
Compay
Client ID
104000046
Sale Password
Test1234
Api Kullanıcı Adı
payfullapi
Api Parola
payfullapi