Docs
Code Samples
Code Samples
Accelerate your transition to production with these official code snippets. Each sample is optimized for security and performance.
01. Initializing a Transaction
$response = Http::withToken('sk_test_...') ->withHeaders([ 'X-HwebPay-Signature' => $signature ]) ->post('https://api.hwebpay.com/api/v1/transactions/initialize', [ 'amount' => 5000, 'email' => 'customer@example.com', 'name' => 'John Doe', 'metadata' => [ 'order_id' => '#001' ] ]); // Redirect to HwebPay Checkout return redirect($response['data']['authorization_url']);
const axios = require('axios'); const initializePayment = async () => { try { const res = await axios.post('/transactions/initialize', { amount: 5000, email: 'user@domain.com' }, { headers: { 'Authorization': 'Bearer sk_test_...' } }); console.log('Checkout URL:', res.data.data.authorization_url); } catch (err) { console.error(err.response.data); } };
import requests payload = { "amount": 5000, "email": "john@doe.com" } headers = { "Authorization": "Bearer sk_test_..." } r = requests.post("https://api.hwebpay.com/api/v1/transactions/initialize", json=payload, headers=headers) print(r.json())
curl -X POST https://api.hwebpay.com/api/v1/transactions/initialize \ -H "Authorization: Bearer sk_test_..." \ -H "Content-Type: application/json" \ -d '{ "amount": 5000, "email": "test@hwebpay.com" }'
02. Verifying a Transaction
# Verify status after redirect curl -X GET https://api.hwebpay.com/api/v1/transactions/verify/{reference} \ -H "Authorization: Bearer sk_test_..."
Looking for the JS Library?
If you are building a frontend-specific integration, check out our Inline Checkout documentation which uses the Public Key.
Explore Inline Checkout© 2026 HwebPay Docs Portal
Developer Community