The basic path: payment processor, shopping cart, and a bank account
To accept credit cards on a website, you need three things working together: a payment processor (the company that handles the transaction), a shopping cart or payment form (the tool on your site that collects card details), and a merchant bank account (where the money lands). You do not need all three to be separate companies — many processors bundle them — but you do need all three functions to exist.
The processor is the middleman. When a customer enters their card number on your site, the processor checks with the card issuer (Visa, Mastercard, their bank) that the card is real and has funds. If it passes, the processor holds the money temporarily, then deposits it into your merchant account, usually within one to three business days. If it fails, the customer sees an error message and the transaction stops.
Your merchant account is a special bank account that only receives card payments. It is not the same as your regular business checking account. Some banks offer it directly; others require you to go through a payment processor to get one. The processor takes a cut — typically 2.2% to 3% of each transaction plus a flat fee of 30 cents — before the rest reaches your account.
Key Takeaways
- You need a payment processor (Stripe, Square, PayPal), a way to collect card details on your site (a form or shopping cart), and a merchant bank account to receive the money.
- Payment processors charge a percentage of each transaction (usually 2.2% to 3%) plus a flat fee, and deposits arrive one to three business days after the sale.
- If you sell physical goods, you will need to handle shipping and refunds yourself; if you sell digital products, the processor can deliver them automatically.
- PCI compliance means your site must meet security standards set by card networks, or you must use a processor that handles the security for you.
- Start with a processor that matches your volume: Stripe and Square work for small sellers, WooCommerce for online stores, and Shopify for businesses that need hosting too.
Choosing a payment processor that fits your business size
The right processor depends on how much you plan to sell and what you are selling. Stripe and Square are designed for small businesses and freelancers. Both let you create a payment link or embed a form on your site in minutes, with no monthly fee — you only pay when a transaction goes through. Stripe works better if you have a website already and want to add payments to it. Square works better if you want a simple checkout page you can share by link or email.
PayPal is another entry point. You can create a "Buy Now" button and paste it onto any website. The setup is fast, and PayPal handles the security, but the fees are slightly higher (around 3.49% plus 49 cents per transaction for online sales) and some customers distrust it because it is tied to their PayPal account rather than their card.
If you are building a full online store, WooCommerce (a plugin for WordPress sites) or Shopify (a hosted platform) are better choices. Both let you manage inventory, send order confirmations, and handle refunds from one dashboard. WooCommerce is cheaper if you already have WordPress hosting, but requires more setup. Shopify is more expensive (starting around $29 per month) but handles hosting, security, and payment processing all in one place.
For high-volume sellers or businesses with special needs (subscription billing, international payments, invoicing), Authorize.net or Braintree offer more control but require more technical setup and usually a monthly fee.
How to embed a payment form on your website
The method depends on which processor you choose. With Stripe, you can use their Stripe.js library to build a custom form, or you can use a pre-built solution like Stripe Payment Element, which handles card details, Apple Pay, Google Pay, and other methods in one box. You paste a few lines of code into your website's HTML, and the form appears.
With Square, you can generate a payment link (a unique URL) and share it by email or embed it as a button on your site. No coding required. When a customer clicks the link, they land on a Square-hosted checkout page, enter their card, and the payment goes through.
With Shopify or WooCommerce, the payment form is built in. You configure which processor to use (Stripe, PayPal, Square, or others), and the form appears automatically on the checkout page. You do not write code.
In all cases, the customer's card number never touches your server. The processor's secure form collects it, encrypts it, and sends it directly to the processor's servers. This is called tokenization, and it is the reason you can accept cards without becoming a security nightmare.
Understanding PCI compliance and security requirements
PCI DSS (Payment Card Industry Data Security Standard) is a set of rules that card networks (Visa, Mastercard, American Express) require anyone handling card data to follow. The rules cover how you store data, who can access it, how you encrypt it, and how you monitor for breaches. If you handle card data directly, you must meet these standards or face fines and loss of payment processing.
The easiest way to avoid PCI compliance headaches is to use a processor that handles it for you. Stripe, Square, PayPal, and Shopify all take responsibility for PCI compliance as long as you use their hosted forms or payment links. You do not store card numbers on your server, so you do not have to worry about the rules.
If you build a custom form using a processor's API, you still do not handle the card data directly — the processor does — but you are responsible for the rest of the security (keeping your server updated, using HTTPS, protecting customer data you do collect). Most small businesses should avoid this route and use a pre-built form instead.
Setting up your merchant bank account
When you sign up with a processor like Stripe or Square, they usually set up a merchant account for you automatically. You provide your business name, tax ID, and bank account details, and the processor connects to your bank. Deposits start flowing in one to three business days after each transaction settles.
Some banks (Chase, Bank of America, Wells Fargo) offer merchant accounts directly, but they usually require higher volume or charge higher fees. Most small businesses find it easier to go through a processor.
You will need to provide proof of identity and sometimes proof of business (a business license, articles of incorporation, or a DBA filing). The processor runs a background check and may ask for more information if your business is in a high-risk category (gambling, adult content, high-value items). This process usually takes a few days to a week.
Once your account is active, you can see all transactions, refunds, and deposits in the processor's dashboard. You can download reports for your accountant and reconcile them against your bank statement.
Handling refunds, disputes, and chargebacks
When a customer asks for a refund, you initiate it from your processor's dashboard. The processor sends the money back to the customer's card, and it usually appears in their account within three to five business days. You are charged a small fee for the refund (often the same flat fee as the original transaction, but not the percentage).
If a customer disputes a charge with their bank (claiming they did not authorize it or did not receive the product), the processor notifies you and gives you a window — usually 7 to 10 days — to respond with evidence. Evidence can be an email confirmation, a shipping receipt, a signed contract, or a screenshot of the customer's account showing they received the product. If you provide strong evidence, you usually win the dispute and keep the money. If you do not respond or your evidence is weak, the bank sides with the customer and the money is reversed.
Chargebacks are expensive. Beyond losing the sale amount, you are charged a chargeback fee (usually $15 to $100 depending on the processor) and your chargeback rate is tracked. If your rate gets too high (usually above 1%), the processor can suspend or close your account.
To avoid disputes and chargebacks, be clear about what you are selling, deliver it quickly, and respond to customer emails fast. For digital products, send them immediately after payment. For physical goods, ship quickly and provide tracking. For services, send a detailed invoice and confirmation email.
Fees, deposits, and what to expect from your first month
Payment processor fees vary, but here is what most small businesses pay: 2.2% to 2.9% of the transaction amount plus 30 cents per transaction. Some processors charge a monthly fee on top of this (usually $10 to $30), but many do not if your volume is low.
If you sell a $100 item, you pay roughly $2.50 to $3.20 in fees, and $96.80 to $97.50 lands in your merchant account. If you sell $1,000 in a month, you pay $22 to $32 in fees.
Deposits happen on a schedule set by your processor. Stripe and Square deposit daily or weekly, depending on your account. Shopify deposits every 2 to 8 days. Authorize.net can deposit daily or weekly. Check your processor's settings to see when your deposits are scheduled.
In your first month, expect the process to feel slow. Your first transaction may take a few days to appear in your merchant account because the processor is verifying everything. After that, deposits should arrive on schedule. If a deposit is late, check your processor's dashboard — it will show the status and reason for any delays.
Frequently Asked Questions
Do I need a business license to accept credit card payments on my website?
Not always, but it depends on your location and what you are selling. Most processors do not require a business license, but they do require proof of identity and a tax ID (which can be your Social Security number if you are a sole proprietor). Check your local and state rules — some places require a license for certain types of sales.
What happens if a customer's card is declined?
The processor checks the card with the issuing bank and gets a decline code (insufficient funds, expired card, fraud suspected, etc.). Your payment form shows an error message to the customer, and no charge goes through. The customer can try a different card or contact their bank. You see the failed attempt in your dashboard but are not charged a fee for it.
Can I accept international credit cards?
Yes, most processors accept cards from many countries. Stripe and Shopify support over 100 countries. You may pay slightly higher fees for international transactions, and currency conversion fees apply if the customer's card is in a different currency than your site. Check your processor's documentation for the countries and currencies they support.
How long does it take to get approved and start accepting payments?
With Stripe or Square, you can be approved and accepting payments within minutes to a few hours. With Shopify, it takes a few hours to set up your store. With traditional merchant account providers, it can take several days to a week. The faster processors do a quick background check; the slower ones do a more thorough review.
What if I want to accept payments but do not have a website yet?
You can use a payment link from Stripe, Square, or PayPal and share it by email, text, or social media. You can also use a simple landing page builder like Carrd or Linktree to create a page with a payment button. This works for small sales or services but is not ideal for a full online store.