Link API SMS ve Email

1-) SMS GÖNDERİMİ

Bu servisi kullanarak belirttiğiniz cep telefonu numarasına oluşturmuş olduğunuz linkle ödeme sayfasına ait linkin gönderimini sağlayabilirsiniz.

1- Aşağıdaki gönderilmesi zorunlu olan bilgiler iletildikten sonra bir token verisi üretilir.
2- Oluşan token ve gönderilmesi zorunlu olan alanlarla birlikte https://www.paytr.com/odeme/api/link/send-sms servisine istekte bulunulur.

Token üretiminde kullanılacak veriler

Alan adı / tipi Açıklama Zorunlu Kısıtlar
id (integer) Link API Create metodundan dönülen değer Evet -
merchant_id(integer) PayTR Mağaza Paneli > Destek & Kurulum > Entegrasyon Bilgileri sayfası üzerinden ulaşabileceğiniz, mağazanıza özgü değer. Evet -
cell_phone(integer) Linki göndermek istediğini telefon numarası Evet SMS gönderilecek numara. 05 ile başlamalı ve 11 hane olmalıdır
merchant_salt PayTR Mağaza Paneli > Destek & Kurulum > Entegrasyon Bilgileri sayfası üzerinden ulaşabileceğiniz, mağazanıza özgü değer. Evet -
merchant_key PayTR Mağaza Paneli > Destek & Kurulum > Entegrasyon Bilgileri sayfası üzerinden ulaşabileceğiniz, mağazanıza özgü değer. Evet -


* POST REQUEST içeriğinde gönderilecek değerler:

Alan adı / tipi Açıklama Zorunlu Kısıtlar
merchant_id (string) Mağaza No: PayTR tarafından size verilen Mağaza numarası Evet -
id (integer) Link API Create metodundan dönülen değer Evet -
cell_phone(integer) Linki göndermek istediğini telefon numarası Evet SMS gönderilecek numara. 05 ile başlamalı ve 11 hane olmalıdır
debug_on(int) Hata döndür: PayTR’a yanlış veya eksik bilgi iletilmesi durumunda sistemden hata mesajı döndürülmesi için 1 gönderilmelidir Evet 0 veya 1
paytr_token(string) paytr_token: İsteğin sizden geldiğine veiçeriğin değişmediğine emin olmamız için oluşturacağınız değerdir Evet Hesaplama ile ilgili olarak örnek kodlara bakmalısınız.



<?php

    ###################### ÖDEME LİNKİNİ SMS İLE GÖNDERMEK İÇİN ÖRNEK KODLAR ###################

    ################################ DÜZENLEMESİ ZORUNLU ALANLAR ###############################
    #
    ## API Entegrasyon Bilgileri - Mağaza paneline giriş yaparak BİLGİ sayfasından alabilirsiniz.
    $merchant_id    = 'AAAAAA';
    $merchant_key   = 'XXXXXXXXXXXXXXXX';
    $merchant_salt  = 'XXXXXXXXXXXXXXXX';
    #

    ## Gerekli Bilgiler
    #
    $id             = "XXXYYY";         // Link ID - create metodunda dönülen değerdir.
    $cell_phone     = "05000000000";    // SMS gönderilecek numara. 05 ile başlamalı ve 11 hane olmalıdır.
    $debug_on       = 1;                // Hataları ekrana basmak için kullanılır.
    #
    ############################################################################################

    ################ Bu kısımda herhangi bir değişiklik yapmanıza gerek yoktur. ################
    #
    $paytr_token=base64_encode(hash_hmac('sha256', $id.$merchant_id.$cell_phone.$merchant_salt, $merchant_key, true));
    $post_vals=array(
        'merchant_id'       => $merchant_id,
        'id'                => $id,
        'cell_phone'        => $cell_phone,
        'debug_on'          => $debug_on,
        'paytr_token'       => $paytr_token
    );
    #
    ############################################################################################

    $ch=curl_init();
    curl_setopt($ch, CURLOPT_URL, "https://www.paytr.com/odeme/api/link/send-sms");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1) ;
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_vals);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 20);
    $result = @curl_exec($ch);

    if(curl_errno($ch))
        die("PAYTR LINK SEND SMS API request timeout. err:".curl_error($ch));

    curl_close($ch);

    $result=json_decode($result,1);

    if($result['status']=='error')
        die($result['err_msg']);
    elseif($result['status']=='failed')
        print_r($result);
    else
        print_r($result);

Link API SMS&EMAIL Servisi örnek kodlarını indirmek için tıklayın.

2) EMAIL GONDERME

Bu servisi kullanarak belirttiğiniz e-mail adresine oluşturmuş olduğunuz linkle ödeme sayfasına ait linkin gönderimini sağlayabilirsiniz.

1- Aşağıdaki gönderilmesi zorunlu olan bilgiler iletildikten sonra bir token verisi üretilir.
2- Oluşan token ve gönderilmesi zorunlu olan alanlarla birlikte https://www.paytr.com/odeme/api/link/send-sms servisine istekte bulunulur.

Token üretiminde kullanılacak veriler

Alan adı / tipi Açıklama Zorunlu Kısıtlar
id (integer) Link API Create metodundan dönülen değer Evet -
merchant_id(integer) Ödeme tutarı Evet Mağaza no: PayTR tarafından size verilen Mağaza numarası
email(string) Linki göndermek istediğini eposta bilgisi Evet En fazla 100 karakter
merchant_salt PayTR Mağaza Paneli > Destek & Kurulum > Entegrasyon Bilgileri sayfası üzerinden ulaşabileceğiniz, mağazanıza özgü değer. Evet -
merchant_key PayTR Mağaza Paneli > Destek & Kurulum > Entegrasyon Bilgileri sayfası üzerinden ulaşabileceğiniz, mağazanıza özgü değer. Evet -


* POST REQUEST içeriğinde gönderilecek değerler:

Alan adı / tipi Açıklama Zorunlu Kısıtlar
merchant_id (string) Mağaza No: PayTR tarafından size verilen Mağaza numarası Evet -
id (integer) Link API Create metodundan dönülen değer Evet -
email(string) Linki göndermek istediğini eposta bilgisi Evet En fazla 100 karakter
debug_on(int) Hata döndür: PayTR’a yanlış veya eksik bilgi iletilmesi durumunda sistemden hata mesajı döndürülmesi için 1 gönderilmelidir Evet 0 veya 1
paytr_token(string) paytr_token: İsteğin sizden geldiğine veiçeriğin değişmediğine emin olmamız için oluşturacağınız değerdir Evet Hesaplama ile ilgili olarak örnek kodlara bakmalısınız.



<?php

    #################### ÖDEME LİNKİNİ EPOSTA İLE GÖNDERMEK İÇİN ÖRNEK KODLAR ##################

    ################################ DÜZENLEMESİ ZORUNLU ALANLAR ###############################
    #
    ## API Entegrasyon Bilgileri - Mağaza paneline giriş yaparak BİLGİ sayfasından alabilirsiniz.
    $merchant_id    = 'AAAAAA';
    $merchant_key   = 'XXXXXXXXXXXXXXXX';
    $merchant_salt  = 'XXXXXXXXXXXXXXXX';
    #

    ## Gerekli Bilgiler
    #
    $id             = "XXXYYY";         // Link ID - create metodunda dönülen değerdir.
    $email          = "test@mail.com";  // Eposta gönderilecek adres. Standart email adresi formatına uygun olmalıdır.
    $debug_on       = 1;                // Hataları ekrana basmak için kullanılır.
    #
    ############################################################################################

    ################ Bu kısımda herhangi bir değişiklik yapmanıza gerek yoktur. ################
    #
    $paytr_token=base64_encode(hash_hmac('sha256', $id.$merchant_id.$email.$merchant_salt, $merchant_key, true));
    $post_vals=array(
        'merchant_id'       => $merchant_id,
        'id'                => $id,
        'email'             => $email,
        'debug_on'          => $debug_on,
        'paytr_token'       => $paytr_token
    );
    #
    ############################################################################################

    $ch=curl_init();
    curl_setopt($ch, CURLOPT_URL, "https://www.paytr.com/odeme/api/link/send-email");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1) ;
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_vals);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 20);
    $result = @curl_exec($ch);

    if(curl_errno($ch))
        die("PAYTR LINK SEND MAIL API request timeout. err:".curl_error($ch));

    curl_close($ch);

    $result=json_decode($result,1);

    if($result['status']=='error')
        die($result['err_msg']);
    elseif($result['status']=='failed')
        print_r($result);
    else
        print_r($result);

Link API SMS&EMAIL Servisi örnek kodlarını indirmek için tıklayın.

3) SERVİSTEN DÖNEN DEĞERLER

Açıklama Alan adı / tipi Değerler
İstek sonucu status (string) success, error veya failed
İstek açıklaması (hata durumunda) reason (string) Örnek: Zorunlu alan degeri gecersiz veya gonderilmedi (Link API - create): price