Şöyle bir örnek yazdım callback için. Bunu baz alarak kendinize göre düzenleyip, kullanabilirsiniz.
<?php
if($_POST) {
    // Öncelikle verilerin gelip gelmediğini kontrol ettirrlim
    if(isset($_POST["platform_order_id"], $_POST["random_nr"], $_POST["signature"], $_POST["status"])) {

        // Değişkenlerimizi tanımlayalım
        $siparis_numarasi = $_POST["platform_order_id"];
        $random_nr = $_POST["random_nr"];
        $status = $_POST["status"];
        $shopierApiSecret = "SHOPIER_API_SECRET_KODUNUZ";

        // Ardından hash ve ödeme durumu kontrolü yapalım
        $signature = base64_decode($_POST["signature"]);
        $hash = hash_hmac('sha256', $_POST["random_nr"] . $_POST["platform_order_id"] . $shopierApiSecret, true);

        if($signature == $hash and $status == "success") {

            // Bu sipariş veritabanımızda var mı yok mu, daha önce ödenmişmi kontrol ettirelim
            $kontrol = $db->query("SELECT COUNT(*) FROM siparisler WHERE siparis_numarasi = '$siparis_numarasi' AND siparis_durumu = 'ODENMEDI'")->fetchColumn();
            if($kontrol > 0) {

                // Başarıyla kontrol ettik, buradan sonra bakiyeyi ekleyebilir veya ödeme tamamlanınca yapmak istediğiniz işlemleri yapabilirsiniz.

            }

        }

    }
}