2017-09-15 14 views
0

Stripe APIからカスタムアカウントのaccount.updated呼び出しを受け取ったときに(簡単なテスト)電子メールを送信しようとしています。私の他のウェブフックは、料金を作成し、成功または失敗した料金について顧客に通知するようになっていますが、ここではエラー500(カスタムアカウントのダッシュボードに表示されます)とメールが送信されないので、わかりません私がここで間違っていること。私のコードは次のようになります:ストライプwebhook account.updatedが動作していません

<?php 

require_once('vendor/autoload.php'); 

// Set your secret key: remember to change this to your live secret key in production 
// See your keys here: https://dashboard.stripe.com/account/apikeys 
\Stripe\Stripe::setApiKey("sk_test_XXXX"); 

// Retrieve the request's body and parse it as JSON 
$input = @file_get_contents("php://input"); 
$event_json = json_decode($input); 

// Verify the event by fetching it from Stripe 
$event = \Stripe\Event::retrieve($event_json->id); 

// Do something with $event 
if ($event->type == 'account.updated') { 

// The E-Mail message to send to inform about a succeeded charge 
$message = 'test'; 

// Send the E-Mail 
mail('[email protected]', 'We need more info about you!', $message); 

} 

http_response_code(200); // PHP 5.4 or greater 

ありがとうございました!

答えて

0

ウェブサーバーのerror.log(通常は、ホストコントロールパネルまたは/var/log/からアクセスできます)を見て、500の原因をさらに詳しく確認できますか?

$event = \Stripe\Event::retrieve($event_json->id);が失敗しますか?

イベントが接続されたアカウントで直接発生している場合は、それを取得するためにaccountのIDを渡す必要があります。

コードはもっとようになる

https://stripe.com/docs/connect/webhooks

、もう少しコンテキストは、ここを参照してください:、アヒルをありがとう、私はIDを渡しませんでした

$event = \Stripe\Event::retrieve(
array("id" => $event_json->id), 
array("stripe_account" => $event_json->account)); 

https://stripe.com/docs/connect/authentication#authentication-via-the-stripe-account-header

+0

接続されたアカウント。今すぐ動作します:-) – Dirkozoid

関連する問題