Initial Python SDK release v1.0.0
This commit is contained in:
41
examples/webhook_verification.py
Normal file
41
examples/webhook_verification.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
FetcherPay Python SDK - Webhook Verification Example
|
||||
"""
|
||||
|
||||
import json
|
||||
from fetcherpay import FetcherPay
|
||||
|
||||
# Initialize client
|
||||
client = FetcherPay(
|
||||
api_key='sandbox',
|
||||
environment='sandbox'
|
||||
)
|
||||
|
||||
# Example webhook payload
|
||||
payload = json.dumps({
|
||||
'id': 'evt_123',
|
||||
'type': 'payment.settled',
|
||||
'created_at': '2026-02-18T20:00:00Z',
|
||||
'data': {
|
||||
'id': 'pay_456',
|
||||
'status': 'settled',
|
||||
'amount': 10000
|
||||
}
|
||||
})
|
||||
|
||||
# Your webhook secret from the dashboard
|
||||
webhook_secret = 'whsec_your_secret_here'
|
||||
|
||||
# Simulate receiving a webhook
|
||||
signature = 'sha256=...' # From X-FetcherPay-Signature header
|
||||
|
||||
# Verify the signature
|
||||
is_valid = client.verify_webhook_signature(payload, signature, webhook_secret)
|
||||
|
||||
if is_valid:
|
||||
print('✅ Webhook signature verified')
|
||||
# Process the webhook event
|
||||
event = json.loads(payload)
|
||||
print(f'Event type: {event["type"]}')
|
||||
else:
|
||||
print('❌ Invalid webhook signature')
|
||||
Reference in New Issue
Block a user