/stripe-guides

How to get a Stripe virtual terminal?

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.

Matt Graham, CEO of Rapid Developers

Book a call with an Expert

Starting a new venture? Need to upgrade your web app? RapidDev builds application with your growth in mind.

Book a free consultation

How to get a Stripe virtual terminal?

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:

  • Visit the Stripe website at https://stripe.com
  • Click on "Start now" or "Create account"
  • Enter your email, full name, and create a password
  • Complete the verification process by confirming your email address
  • Provide your business details as prompted

 

Step 2: Complete Account Verification

 

Before you can process payments, you need to complete the verification process:

  • Navigate to the Stripe Dashboard after logging in
  • Look for any verification prompts or incomplete steps in the dashboard
  • Provide your business details including legal name, address, and tax ID
  • Add your banking information for receiving payouts
  • Verify your identity by uploading the required documents (typically an ID and proof of address)

 

Step 3: Access the Payment Links Feature

 

Stripe's virtual terminal functionality is provided through the Payment Links feature:

  • From your Stripe Dashboard, find and click on "Products" in the left-side menu
  • Select "Payment links" from the dropdown or related section
  • If you don't see this option, ensure your account is fully verified and that you're using the latest Stripe Dashboard interface

 

Step 4: Create a Payment Link for One-Time Use

 

To create a payment link that functions like a virtual terminal:

  • Click the "Create payment link" button
  • Select "One-time payment" option
  • Configure your product/service details including name, description, and price
  • You can set the price as "Custom" if you want to enter different amounts for each transaction
  • Complete the form with all required information

 

Step 5: Customize Your Payment Link

 

Make adjustments to suit your business needs:

  • Set your business name and upload your logo
  • Choose what customer information to collect (name, email, phone, shipping address, etc.)
  • Configure tax settings if applicable
  • Set custom success messages or redirect URLs
  • Adjust the payment methods you wish to accept

 

Step 6: Create and Use Your Virtual Terminal

 

After configuration:

  • Click "Create link" to generate your payment URL
  • Copy the URL or use the "Share" button to access it
  • For virtual terminal use, open this link in your browser when you need to process a payment
  • You can bookmark this link for quick access in the future

 

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:

  • From your Stripe Dashboard, navigate to "Terminal"
  • Follow the setup process to order Stripe card readers or configure your own hardware
  • Download the Stripe Terminal app on your mobile device or use the web interface
  • This provides a comprehensive point-of-sale solution beyond virtual terminal capabilities

 

Step 10: Monitor and Manage Transactions

 

After setting up your virtual terminal:

  • Access your Stripe Dashboard regularly to view transaction history
  • Navigate to "Payments" to see all successful and failed transactions
  • Use the search and filter tools to find specific transactions
  • Process refunds when necessary by clicking on a payment and selecting the "Refund" option
  • Export transaction data for accounting purposes using the "Export" function

 

Step 11: Set Up Additional Security Measures

 

Enhance the security of your virtual terminal:

  • Enable two-factor authentication for your Stripe account
  • Restrict access to your payment links or forms to trusted employees
  • Regularly review transaction logs for suspicious activity
  • Consider implementing Stripe Radar for advanced fraud detection
  • Keep your API keys secure and never expose them in client-side code

 

Step 12: Optimize Your Payment Process

 

Refine your virtual terminal experience:

  • Collect customer feedback on the payment process
  • Analyze payment success rates and address common issues
  • Consider saving customer information for repeat transactions (with proper consent)
  • Test your payment flow regularly to ensure it works smoothly
  • Keep your Stripe integration updated with the latest API versions

Want to explore opportunities to work with us?

Connect with our team to unlock the full potential of no-code solutions with a no-commitment consultation!

Book a Free Consultation

Client trust and success are our top priorities

When it comes to serving you, we sweat the little things. That’s why our work makes a big impact.

Rapid Dev was an exceptional project management organization and the best development collaborators I've had the pleasure of working with. They do complex work on extremely fast timelines and effectively manage the testing and pre-launch process to deliver the best possible product. I'm extremely impressed with their execution ability.

CPO, Praction - Arkady Sokolov

May 2, 2023

Working with Matt was comparable to having another co-founder on the team, but without the commitment or cost. He has a strategic mindset and willing to change the scope of the project in real time based on the needs of the client. A true strategic thought partner!

Co-Founder, Arc - Donald Muir

Dec 27, 2022

Rapid Dev are 10/10, excellent communicators - the best I've ever encountered in the tech dev space. They always go the extra mile, they genuinely care, they respond quickly, they're flexible, adaptable and their enthusiasm is amazing.

Co-CEO, Grantify - Mat Westergreen-Thorne

Oct 15, 2022

Rapid Dev is an excellent developer for no-code and low-code solutions.
We’ve had great success since launching the platform in November 2023. In a few months, we’ve gained over 1,000 new active users. We’ve also secured several dozen bookings on the platform and seen about 70% new user month-over-month growth since the launch.

Co-Founder, Church Real Estate Marketplace - Emmanuel Brown

May 1, 2024 

Matt’s dedication to executing our vision and his commitment to the project deadline were impressive. 
This was such a specific project, and Matt really delivered. We worked with a really fast turnaround, and he always delivered. The site was a perfect prop for us!

Production Manager, Media Production Company - Samantha Fekete

Sep 23, 2022