
Research
/Security News
9 Malicious NuGet Packages Deliver Time-Delayed Destructive Payloads
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.
@api-craft/payments
Advanced tools
Platform-agnostic payment router with multi-gateway driver support for Express
A platform-agnostic payment router plugin for Express.js that supports multiple gateways like Stripe and Razorpay with automatic route handling and powerful after-hooks.
/create, /verify, /webhook)afterHook for post-payment actionsnpm install @api-craft/payments
Dpendecies like stripe, razorpay are peer deps you need to only install needed driver
// server.js
import express from 'express';
import { createPaymentRouter } from '@api-craft/payments';
const app = express();
app.use(express.json());
app.use(
'/payments',
createPaymentRouter({
gateway: 'stripe', // or 'razorpay'
apiKey: process.env.STRIPE_SECRET_KEY,
keyId: process.env.RAZORPAY_KEY_ID,
keySecret: process.env.RAZORPAY_KEY_SECRET,
webhookSecret: process.env.PAYMENT_WEBHOOK_SECRET,
successUrl: 'https://yourdomain.com/payments/success',
cancelUrl: 'https://yourdomain.com/payments/cancel',
afterHook: async ({ gateway, data, status, req, res }) => {
// Save to DB, send emails, etc.
console.log(`[${gateway}] Payment status: ${status}`, data);
},
})
);
app.listen(3000, () => console.log('Server running on port 3000'));
| Method | Route | Description |
|---|---|---|
| POST | /payments/create | Initiates a payment session/order |
| GET | /payments/verify | Verifies payment after redirect |
| POST | /payments/webhook | Handles payment gateway webhooks |
✅ Stripe
✅ Razorpay
⏳ More coming soon...
Each driver exports 3 core functions:
export async function create(config, req) { /* ... */ }
export async function verify(config, req) { /* ... */ }
export async function webhook(config, req) { /* ... */ }
To add support for a new gateway, create a file in drivers/ and implement these methods.
Stripe: uses stripe-signature header
Razorpay: uses x-razorpay-signature header with HMAC-SHA256
Make sure you pass the correct webhookSecret when initializing.
MIT © Thamilselven
Part of the @api-craft ecosystem.
Want to add more drivers or features? PRs welcome!
FAQs
Platform-agnostic payment router with multi-gateway driver support for Express
The npm package @api-craft/payments receives a total of 0 weekly downloads. As such, @api-craft/payments popularity was classified as not popular.
We found that @api-craft/payments demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.