Не получать уведомления от webhook - laravel & shopify - PullRequest
0 голосов
/ 19 октября 2018

Я создаю приложение для продавцов и Shopify, используя laravel.Я настроил и установил webhooks для отправки уведомлений администраторам, когда в моем приложении создаются новые клиенты в config/shopify.php.

shopify.php

use Oseintow\Shopify\Facades\Shopify;
use Laravel\Socialite\Facades\Socialite;
use App\User;
use App\Store;
use App\UserProvider;
use Auth;

    $shopifyUser = Socialite::driver('shopify')->stateless()->user();
    $shopUrl = $shopifyUser->nickname;
    $accessToken = $shopifyUser->token;

    Shopify::setShopUrl($shopUrl)->setAccessToken($accessToken)->post("admin/webhooks.json",
     [
        'webhook' => 
        ['topic' => 'customers/create',
        'address' => 'https://shopify.kast.com/webhook',
        'format' => 'json'
        ]
    ]);

Маршрут

Route::post('/webhook', 'ReceiverController@webhook');

ReceiverController

 public function webhook()
    {
       send sms/email to admin
    }

Теперь , когда я настраиваю веб-крючок в настройках администратора магазина и отправляю тестовое уведомление или создаю клиента, Я получаю SMS / электронные письма

Но когда я удаляю настройки webhook со страницы администратора и создаю нового покупателя для магазина, я не получаю SMS.

Есть ли какая-либо ошибка в shopify.php (конфигурация webhook) для моего приложения?

PS: домен магазина равен founz.myshopify.com, а приложение размещено https://shopify.kast.com

1 Ответ

0 голосов
/ 21 октября 2018

Скорее всего, вы не зарегистрировали webhook с помощью токена доступа.

Если вы используете Oseintow\Shopify, ваш файл shopify.php должен выглядеть следующим образом:

<?php

return [        
    'key' => env("SHOPIFY_APIKEY", '0f20e4692981aefb8558etrgrh72thty5'),
    'secret' => env("SHOPIFY_SECRET", 'fgghg55666585f1a09214drtg56454g')
]; 

Letон просто хранит учетные данные вашего общедоступного приложения.

Похоже, вы не зарегистрировали ни одного веб-хука с использованием токена доступа.Когда вы регистрируете webhook с помощью shopify admin, этот webhook будет запущен для всех приложений.Не делай этого, если не знаешь, что делаешь.

Вместо этого попробуйте зарегистрировать тот же веб-крюк с помощью Postman с вашим токеном доступа и посмотрите, работает ли он.А затем используйте свои навыки программирования, чтобы автоматизировать его.Ура!

...