Articles · App ExamplesUpdated September 2026

A POS app for small business is a till, a card reader and a paper trail.

Most people searching for a POS app for small business are not shopping for software. They are trying to stop losing an hour every evening to a cash box, a card terminal and a notebook that never quite agree. The app is the small part. The card, the receipt and the record are the hard parts, and they live in three different places. Like most mobile apps for small business, the version that works is narrow and matches how you sell.

This page covers what a till has to do before it takes any money, how the card gets charged when your app never sees a card number, what the payment leg costs, and what breaks in a real shop on a bad signal.

Work out what the card leg costs

The short version

You can build the till, but you rent the card rails.

A point of sale app is two products wearing one name. One is the till: your items, your prices, your tax, your staff, your receipts, your total at the end of the day. That half is ordinary software and it is entirely yours to shape.

The other half is the card payment, and you do not build it. You open an account with a processor, use its certified reader and its SDK, and your app asks for a payment and waits for an answer. Knowing which half is which is what stops a small business POS system project hitting a wall in month two.

What a till has to do before it takes any money

Write down every step a sale passes through and the scope stops being vague. A list of items with prices. A way to add one and change the quantity. A discount somebody is allowed to apply. Tax. A total. A tender, in cash or on a card or split between them. A receipt. Then the ones people forget: a void before the sale closes, a refund after it closes, and an end of day total you can hold next to the drawer.

Every one of those is a record, not a screen. A refund is not the sale deleted, it is a second record pointing at the first. A discount is not a smaller price, it is a price plus a reason plus a name. Get that shape wrong and the app looks fine for a month, then cannot tell you why Tuesday was forty dollars short.

A mobile point of sale moves the counter, and that changes one more thing. Sell at a market, at a table or on a doorstep and the till is in a pocket, the receipt is an email or a text. That is a different app from an invoice app for small business, which bills an account customer later and then chases it. Counter sales settle now, account sales settle on terms, and putting both on one screen is the usual way these projects turn confusing.

How the card actually gets charged

Start with the plain fact, because it decides the shape of the whole build. Newly has no built in payments. No AI app builder moves money on its own. The card leg comes from a payments company you sign up with separately, and your app talks to that company's software.

The concrete version: Stripe publishes an open source React Native library for in person payments, @stripe/stripe-terminal-react-native, which wraps its native iOS and Android SDKs. Stripe's own documentation says that library is in public preview and in active development, so treat it as a real option with a moving surface. Your app discovers a reader, connects to it, asks for a payment and gets a status back. The card details travel from the reader to Stripe. Your code handles an amount and a result.

Two parts of that setup surprise people. It needs a small backend of your own, because the SDK will not talk to a reader until your server hands it a connection token created with your secret key. And it needs custom native code, so it cannot run inside Expo Go: the docs tell you to add the config plugin and run a prebuild. On iOS it also asks for location permission, since Stripe disables payments if it cannot tell where the payment happened, and Tap to Pay on iPhone needs an entitlement you request from your own Apple Developer account.

That is as far as this page goes into the wiring. The step by step sits with taking the actual payment.

Stripe, set up your Terminal integration, React Native

What the payment leg costs

Card acceptance is a percentage of the sale plus a fixed fee per sale, and on small tickets the fixed fee is the part that stings. A two dollar coffee and a sixty dollar haircut pay the same few cents. That is why the average sale size, not the monthly total, decides whether taking cards feels cheap or expensive.

Rates are published, so read them from the processor rather than from an article. Stripe lists its in person rate on its own pricing page as a separate line from the online rate, and the figure depends on the country you trade in and on where the card was issued. The euro zone page, for example, shows one rate for cards issued inside the area and a higher one for cards issued outside it. That page also states there are no setup fees and no monthly fees.

Hardware is the other line. A reader is a one off purchase, and if you take contactless payments on the phone itself there is no reader to buy at all. Put your own numbers in below and see what the payment leg costs you in a month.

Stripe pricing

Try it

What the card leg costs in a month

Use your own numbers and the rate your processor publishes.

673.20 dollars a month in card fees

That is 3.12 percent of 21600.00 dollars taken across about 1800 sales. Lower the average sale and the effective rate climbs, because the flat fee does not scale down.

What breaks in a real shop

A card payment normally has to reach the processor to be authorised, so a shop with a weak signal is a shop with a slow queue. Some processors offer a limited offline mode with rules and risk attached. We have not verified the terms of any specific one, so confirm that in your processor's own documentation before you promise it to a market stall. The rest of the till can work offline and sync when the signal returns.

Then the hardware nobody costs in. A phone can print to a Bluetooth receipt printer, open a cash drawer through that printer, and read a barcode with its camera. Each is separate work, and each is where a weekend project becomes a month. Decide early whether you need paper at all, because a receipt sent by email or text removes the whole chain.

Then the human rules. Who may give a discount, who may process a refund, and whose name sits on the sale. An end of day report you can hold next to the cash in the drawer is what makes the rest trustworthy. And once you own the sale record, a loyalty card app stops being a separate product, because the stamps come from sales you already have.

What each way of taking money at the counter gives you

OptionTakes a cardFits your own rulesSale data stays yoursHardware to buy
Cash box and a notebookNoYeson papernone
Your processor's own reader appYesNoin their dashboarda reader
All in one POS platformYeswithin its settingsexport onlydepends on the product
Tablet POS plus a separate card terminalYespartlysplit across two systemstablet and terminal
A POS app you buildthrough a reader SDKYesYesa reader, or the phone

Building one around how you actually sell

Off the shelf point of sale products are built for the average shop, and the average shop does not exist. What does not fit is usually small and very specific: a price that drops after four o'clock, a customer who always pays half now, a product sold by weight, a staff member who may refund but may not discount. Those details are why people go looking, and why a generic platform keeps almost working.

Newly is an AI app builder. You describe the app you want, including those rules, and it writes a real React Native and Expo project you own, runs it on a cloud iPhone or Android simulator while it builds, and ships it to TestFlight and to Google Play internal testing. Plans are $25 a month and there is no free plan. It does not process payments. The card leg still comes from a processor you sign up with, and the code is pulled one way with the CLI.

One thing to prove before you commit. A native package that is not already in the project triggers a native build, and the Terminal SDK is a native package with a config plugin. We have not run that specific plugin through an end to end build, so test it in your own project rather than planning a launch date around it.

Questions people ask about POS apps

It is the till on a phone or a tablet: your item list and prices, the sale being rung up, the tax, the tender in cash or on a card, the receipt, and the total at the end of the day. Taking a card also needs a separate account with a payments company, because the app holds the sale and the processor holds the money.

Describe the way you actually take money

Write down the rules your counter really runs on: who can discount, what a refund does to the record, what the receipt has to say. Build the till around those and wire the card to a processor.

Start building