UnelmaPay Integration Examples

Live examples showing different ways to integrate UnelmaPay

1. Form-based Integration (eSewa Style)

Simple HTML form that redirects to UnelmaPay payment page

Live Example:
HTML Code:
<form action="https://sandbox.unelmapay.com/api/v1/payment" method="POST">
    <input type="hidden" name="merchant_id" value="YOUR_MERCHANT_ID">
    <input type="hidden" name="amount" value="1000">
    <input type="hidden" name="currency" value="NPR">
    <input type="hidden" name="product_name" value="Test Product">
    <input type="hidden" name="order_id" value="ORDER_123">
    <input type="hidden" name="success_url" value="https://yoursite.com/success">
    <input type="hidden" name="fail_url" value="https://yoursite.com/fail">
    <input type="hidden" name="signature" value="GENERATED_SIGNATURE">
    <button type="submit">Pay with UnelmaPay</button>
</form>
2. JavaScript SDK Integration

Modern JavaScript SDK for seamless integration

Live Example:
JavaScript Code:
// Initialize SDK
UnelmaPay.init({
    merchantId: 'YOUR_MERCHANT_ID',
    secretKey: 'YOUR_SECRET_KEY',
    environment: 'production'
});

// Create payment
UnelmaPay.createPayment({
    amount: 1500,
    currency: 'NPR',
    productName: 'Premium Product',
    orderId: 'SDK_ORDER_456',
    successUrl: 'https://yoursite.com/success',
    failUrl: 'https://yoursite.com/fail'
});
3. Transaction Verification

Verify payment status after transaction completion

Test Verification:
Verification Code:
// Verify transaction
UnelmaPay.verifyTransaction('UP1234567890', function(result) {
    if (result.status === 'success') {
        console.log('Payment verified:', result.transaction_details);
    } else {
        console.log('Verification failed:', result.message);
    }
});

// Or using API directly
fetch('https://sandbox.unelmapay.com/api/v1/verify', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
        merchant_id: 'YOUR_MERCHANT_ID',
        payment_ref: 'UP1234567890',
        signature: 'GENERATED_SIGNATURE'
    })
});
4. Signature Generation (HMAC-SHA256)

Generate secure signatures for API requests

Signature Generator:
Signature Algorithm:
// Create signature string
const signatureString = merchantId + ',' + 
                        amount + ',' + 
                        currency + ',' + 
                        orderId + ',' + 
                        productName;

// Generate HMAC-SHA256
const hash = CryptoJS.HmacSHA256(signatureString, secretKey);
const signature = CryptoJS.enc.Base64.stringify(hash);

// PHP equivalent:
// $signature = base64_encode(hash_hmac('sha256', $signatureString, $secretKey, true));