PM
  • About
  • Projects
  • Skills
  • Contact
Home/UniPay
Featured Project

UniPay

An open-source SDK that unifies multiple payment gateways into a single integration point. Available for JavaScript, PHP (Laravel), and Python (Django).

View on GitHubNPM Package

Capabilities

Key Features

Single Integration Point

Integrate multiple payment gateways with a single endpoint

Lightweight SDK

No need to install individual payment gateway SDKs

Easy Setup

Install and configure UniPay with minimal effort

Extensible Architecture

Easily add support for more payment gateways in the future

Error Handling

Consistent error handling across different payment gateways

Scalable Structure

Designed to accommodate future expansions and additional features

Built With

Technology Stack

JavaScriptPHP (Laravel)Python (Django)TypeScriptNode.jsREST APIs

Integrations

Supported Gateways

StripeRazorpayBraintreeCashfreeSquarePayU

PayPal, PhonePe, Paytm, and Easebuzz coming soon.

Quick Start

Implementation Example

JavaScript / TypeScript
import UniPay from '@pushparajunipay/unipay';

const unipay = new UniPay();

// Register payment gateways
unipay.registerPaymentGateway('stripe', {
  apiKey: 'your_stripe_api_key'
});

unipay.registerPaymentGateway('razorpay', {
  apiKey: 'your_razorpay_key_id',
  apiSecret: 'your_razorpay_key_secret'
});

// Process a payment
const payment = await unipay.initiatePayment('stripe', {
  amount: 1000,
  currency: 'USD',
  description: 'Test payment',
  customerEmail: 'customer@example.com'
});

Install via NPM

npm install @pushparajunipay/unipay

Currently in development phase. Use with caution in production.

Problem Solving

Handling Edge Cases

Invalid Credentials

When payment gateway credentials are invalid or missing.

Solution: Implemented clear credential validation with helpful error messages.

Network Issues

Network-related errors during payment processing.

Solution: Implemented retry mechanisms with helpful feedback to users.

Payment Timeouts

Handling cases where payment processing exceeds expected time.

Solution: Added configurable timeout settings and appropriate error handling.

Interested in collaborating?

Feel free to reach out if you have questions about UniPay or want to contribute to the project.

Back to PortfolioGet in Touch

© 2026 Hompushparaj Mehta. Crafted with care.

GitHubNPM