HwebPay Logo
HwebPay
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