Learn how to get a Stripe virtual terminal step-by-step, from account setup to creating payment links, customizing forms, and managing secure online payments.
Book a call with an Expert
Starting a new venture? Need to upgrade your web app? RapidDev builds application with your growth in mind.
How to Get a Stripe Virtual Terminal: A Comprehensive Guide
Step 1: Create a Stripe Account
To begin using Stripe's virtual terminal functionality, you need a Stripe account. If you don't have one already, follow these steps:
Step 2: Complete Account Verification
Before you can process payments, you need to complete the verification process:
Step 3: Access the Payment Links Feature
Stripe's virtual terminal functionality is provided through the Payment Links feature:
Step 4: Create a Payment Link for One-Time Use
To create a payment link that functions like a virtual terminal:
Step 5: Customize Your Payment Link
Make adjustments to suit your business needs:
Step 6: Create and Use Your Virtual Terminal
After configuration:
Step 7: Implement the Payment Form Directly on Your Website (Optional)
For a more integrated experience, you can embed Stripe's payment form directly on your website:
// First, include the Stripe.js library
// Create a payment form
Step 8: Set Up Server-Side Code to Process Payments (Required for Custom Integration)
If you've implemented the custom payment form, you'll need server-side code to process the payment:
// Node.js example with Express
const express = require('express');
const app = express();
const stripe = require('stripe')('sk_test_your_secret_key');
app.use(express.json());
app.post('/process-payment', async (req, res) => {
try {
const { payment_method_id, amount, currency } = req.body;
// Create the payment intent
const paymentIntent = await stripe.paymentIntents.create({
amount: amount,
currency: currency,
payment_method: payment_method\_id,
confirm: true,
return\_url: 'https://your-website.com/payment-success',
});
// Return the result to the client
res.json({
success: true,
client_secret: paymentIntent.client_secret
});
} catch (error) {
res.json({
error: error.message
});
}
});
app.listen(3000, () => {
console.log('Server running on port 3000');
});
Step 9: Use Stripe Terminal for In-Person Payments (Alternative)
If you need a more robust solution for in-person payments:
Step 10: Monitor and Manage Transactions
After setting up your virtual terminal:
Step 11: Set Up Additional Security Measures
Enhance the security of your virtual terminal:
Step 12: Optimize Your Payment Process
Refine your virtual terminal experience:
When it comes to serving you, we sweat the little things. That’s why our work makes a big impact.