> ## Documentation Index
> Fetch the complete documentation index at: https://sailia-mintlify-document-new-features-1776330531.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Card readers

> Connect a Stripe card reader to accept in-person card payments at the point of sale.

Sailia integrates with [Stripe Terminal](https://stripe.com/terminal) to accept in-person card payments through physical card readers. Once connected, staff can process tap, chip, and swipe payments directly from the [point of sale](/point-of-sale/overview).

## Prerequisites

Before setting up a card reader, make sure you have:

* A connected [Stripe account](/payments/stripe)
* At least one [location](/getting-started/locations) configured in Sailia
* A compatible Stripe Terminal card reader with its registration code

## Register a card reader

<Steps>
  <Step title="Go to your location settings">
    Open the location where you want to use the card reader.
  </Step>

  <Step title="Enter the reader details">
    Provide a **name** for the reader (for example, "Front desk reader") and the **registration code** displayed on the reader device.
  </Step>

  <Step title="Save the reader">
    Sailia registers the reader with Stripe and links it to your location. The reader appears in your terminal list and is ready to accept payments.
  </Step>
</Steps>

<Note>
  Each card reader is registered to a specific location. If you have multiple locations, register a reader at each one.
</Note>

## Remove a card reader

<Steps>
  <Step title="Open your location settings">
    Navigate to the location where the card reader is registered.
  </Step>

  <Step title="Find the reader">
    Locate the card reader you want to remove in the terminal list.
  </Step>

  <Step title="Remove the reader">
    Select **Remove** next to the reader. Sailia deregisters it from Stripe and removes it from your terminal list. The reader can no longer process payments until re-registered.
  </Step>
</Steps>

## Process a card payment

Once a card reader is registered, you can use it to take payments at the [point of sale](/point-of-sale/overview):

<Steps>
  <Step title="Build a basket">
    Add items to the basket in the POS — activities, shop products, memberships, or any other product.
  </Step>

  <Step title="Select card payment">
    Choose **Card** as the payment method. The POS sends the payment to your connected card reader.
  </Step>

  <Step title="Customer taps or inserts their card">
    The card reader prompts the customer to present their card. The payment is processed through Stripe in real time.
  </Step>

  <Step title="Payment completes">
    Once the card is authorized, the basket is marked as paid. A confirmation appears in the POS.
  </Step>
</Steps>

## Cancel a card reader action

If you need to cancel a payment in progress — for example, if the customer wants to change their order — you can clear the card reader from the POS:

1. In the POS, select **Cancel** on the payment screen while the reader is waiting for a card.
2. The pending transaction is cancelled and the reader returns to its idle state.
3. You can then modify the basket and start a new payment when ready.

<Note>
  Cancelling a card reader action only works before the customer presents their card. Once a card has been read and the payment is being authorized, the transaction must complete before you can make changes.
</Note>

## Send a payment link by email

If the card reader is unavailable or the customer wants to pay later, you can send a payment link by email directly from the POS:

1. Build the basket with the customer's items.
2. Choose **Send payment link** as the payment method.
3. Enter the customer's email address and confirm.
4. The customer receives an email with a link to complete the payment online through Stripe checkout.

<Tip>
  Payment links are useful for phone orders, deposits, or when a customer forgets their card. The link remains active until the payment is completed or expires.
</Tip>

## Troubleshooting

| Issue                         | What to do                                                                                                                                   |
| ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| **Reader offline**            | Check that the reader is powered on and connected to the internet. Stripe Terminal readers require a network connection to process payments. |
| **Reader busy**               | The reader is processing another transaction. Wait for it to finish or cancel the current action.                                            |
| **Invalid registration code** | Double-check the code displayed on the reader. Registration codes expire after a short period — restart the reader to generate a new one.    |
| **Payment already completed** | The payment was processed successfully before the POS received confirmation. Check your Stripe dashboard to verify the transaction.          |

## Related guides

<Columns cols={2}>
  <Card title="Point of sale" icon="cash-register" href="/point-of-sale/overview">
    Process in-person sales and manage till shifts.
  </Card>

  <Card title="Payments and Stripe" icon="stripe" href="/payments/stripe">
    Connect Stripe and manage payouts.
  </Card>
</Columns>
