erkineren / shopier

Shopier Entegrasyon - Shopier Api PHP Sdk - Ödeme Alma Entegrasyonu (Shopier Payment Gateway Integration)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Response_data

WaxieDLL opened this issue · comments

commented

Ödeme geri dönüşü için response_data kısmında yeterli açıklama bulamıyorum. Kodu incelediğimde de pek bir şey anlayamadım. Response_data kısmı için bir metin paylaşabilir misiniz? Örneğin response_data yı Shopier mi gönderiyor ? Hangi parametreler ile gönderiyor ?

Merhaba geri dönüşünüz için teşekkürker, aşağıda ödeme sonrası gelen datayı veriyorum.
$response_data değişkeni shopier tarafından ödeme sonrası gelen veridir. Aşağıdaki bilgileri içermektedir. platform_order_id ve random_nr ödeme ekranına yönlendirirken girdiğiniz bilgilerdir.

Örnek olarak sizin return_url'niz https://example.com/finishPayment.php olsun. Bu finishPayment.php dosyasının içerisinde de print_r($_POST); kodu yazılı olsun. Ödeme yapıldıktan sonra karşınıza çıkacak bilgiler bu şekildedir:

Array
(
    [platform_order_id] => 20002
    [API_key] => *******************************
    [status] => success
    [installment] => 0
    [payment_id] => 446549593
    [random_nr] => 528061
    [signature] => +e1klzFG7ZABS16xnHcZ8peqbvSZD3Pv9NU4pWiw0qE=
)
commented

Ayrıntılı bir şekilde yardımcı olduğunuz için size teşekkürlerimi sunuyorum. Ödeme almadan php dosyasına girdiğimde Notice: Undefined variable: response_data in D:\xampp\htdocs\sistem\kontrol.php on line 19 şeklinde bir mesaj alıyorum. $response_data şeklindeki değişkeni biz mi oluşturmalıyız ? ($response_data = $_POST; şeklinde)
Yoksa Shopier sayfaya yönlendirirken $response_data değişkenini kendisi mi oluşturuyor ?

büyük ihtimalle $response_data = $_POST; kodunu kullanmalıyım.

<?php
use Shopier\Exceptions\NotRendererClassException;
use Shopier\Exceptions\RendererClassNotFoundException;
use Shopier\Exceptions\RequiredParameterException;
use Shopier\Models\Address;
use Shopier\Models\Buyer;
use Shopier\Renderers\AutoSubmitFormRenderer;
use Shopier\Renderers\ButtonRenderer;
use Shopier\Enums\ProductType;
use Shopier\Shopier;

require "vendor/autoload.php";

define("API_KEY", "************************************");
define("API_SECRET", "************************************");

$shopier = new Shopier(API_KEY, API_SECRET);

$isValidPaymentResponse = $shopier->verifyResponse($response_data);

if($isValidPaymentResponse){
   echo 'OK';
}else{
   echo 'ERROR';
}

?>
commented

$response_data = $_POST;
ile sorun çözülmüştür.