Response_data
WaxieDLL opened this issue · comments
Ö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=
)
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';
}
?>
$response_data = $_POST;
ile sorun çözülmüştür.