Python examples
Initiate a payment
import os, requests resp = requests.post( 'https://nixpay.supreonix.com/api/v1/payments/stk-push', headers={'Authorization': f"Bearer {os.environ['NIXPAY_SECRET_KEY']}"}, json={ 'amount': 500, 'phone': '254712345678', 'account_reference': 'INV-1042', }, timeout=30, ) data = resp.json() if not data['ok']: raise RuntimeError(data['error']['message'])
Verify a webhook (Flask)
import hmac, hashlib, os from flask import Flask, request app = Flask(__name__) @app.post('/nixpay/webhook') def webhook(): raw = request.data expected = 'sha256=' + hmac.new( os.environ['NIXPAY_WEBHOOK_SECRET'].encode(), raw, hashlib.sha256 ).hexdigest() if not hmac.compare_digest(expected, request.headers.get('X-NixPay-Signature', '')): return '', 400 event = request.get_json() # fulfil the order return '', 200
NixPay documentation · A Supreonix product
Back to introduction