⚝
One Hat Cyber Team
⚝
Your IP:
172.22.0.1
Server IP:
151.80.20.34
Server:
Linux 794f04d97d5e 5.15.0-143-generic #153-Ubuntu SMP Fri Jun 13 19:10:45 UTC 2025 x86_64
Server Software:
Apache/2.4.62 (Debian)
PHP Version:
8.2.28
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
html
/
vendor
/
srmklive
/
paypal
/
src
/
Traits
/
View File Name :
PayPalVerifyIPN.php
<?php namespace Srmklive\PayPal\Traits; trait PayPalVerifyIPN { protected $webhook_id; public function setWebHookID(string $webhook_id): \Srmklive\PayPal\Services\PayPal { $this->webhook_id = $webhook_id; return $this; } /** * Verify incoming IPN through a web hook id. * * @throws \Throwable * * @return array|\Psr\Http\Message\StreamInterface|string */ public function verifyIPN(\Illuminate\Http\Request $request) { $headers = array_change_key_case($request->headers->all(), CASE_UPPER); if (!isset($headers['PAYPAL-AUTH-ALGO'][0]) || !isset($headers['PAYPAL-TRANSMISSION-ID'][0]) || !isset($headers['PAYPAL-CERT-URL'][0]) || !isset($headers['PAYPAL-TRANSMISSION-SIG'][0]) || !isset($headers['PAYPAL-TRANSMISSION-TIME'][0]) || !isset($this->webhook_id) ) { \Log::error('Invalid headers or webhook id supplied for paypal webhook'); return ['error' => 'Invalid headers or webhook id provided']; } $params = json_decode($request->getContent()); $payload = [ 'auth_algo' => $headers['PAYPAL-AUTH-ALGO'][0], 'cert_url' => $headers['PAYPAL-CERT-URL'][0], 'transmission_id' => $headers['PAYPAL-TRANSMISSION-ID'][0], 'transmission_sig' => $headers['PAYPAL-TRANSMISSION-SIG'][0], 'transmission_time' => $headers['PAYPAL-TRANSMISSION-TIME'][0], 'webhook_id' => $this->webhook_id, 'webhook_event' => $params, ]; return $this->verifyWebHook($payload); } }