ResytechResytech Docs
Payments & Billing

Accept In-Person Payments

Use Stripe Terminal hardware to accept tap, chip, and swipe card payments at your location.

Resytech integrates with Stripe Terminal to accept card-present payments using physical card readers. This is used for both booking payments from the dashboard and point-of-sale (POS) orders. The card reader connects to Stripe through your dashboard, and payments are processed in real time.

Prerequisites

How Card-Present Payments Work

Card-present payments use the card_present payment method type in Stripe, which is different from standard online card payments (card). The flow is:

  1. A payment intent is created on the server with card_present as the payment method type.
  2. The payment intent is forwarded to the Stripe Terminal reader.
  3. The customer taps, inserts, or swipes their card on the reader.
  4. Stripe processes the payment and returns a result.
  5. The payment is recorded in Resytech.

Process a Terminal Payment on a POS Order

  1. Navigate to Dashboard > POS.
  2. Create or open a pending order.
  3. Click Pay with Terminal.
  4. The system creates a PaymentIntent and sends it to your connected terminal reader.
  5. Prompt the customer to present their card.
  6. Once the card is read and payment succeeds, the order is updated:
    • A PosOrderPayment record is created with the card brand and last 4 digits.
    • The payment type is set to card-present.
    • If the order is fully paid, the status changes to Completed.

Cancel a Terminal Payment

If the customer changes their mind or the reader has issues:

  1. Click Cancel Payment on the order.
  2. The pending PaymentIntent is canceled in Stripe.
  3. The order returns to pending status so you can try again or use a different payment method.

Process a Terminal Payment on a Booking

For bookings, card-present payments follow the same flow as any card payment but use a terminal reader instead of manual card entry:

  1. Open the booking and click Add Payment.
  2. Select Card and choose the terminal reader.
  3. Enter the amount.
  4. The customer presents their card on the reader.
  5. On success, the payment is recorded and the booking balance is updated.

Alternative: Charge a Saved Card

If the customer has a card on file from a previous transaction, you can charge it without the terminal:

  1. On the POS order or booking, select Charge Saved Card.
  2. Choose the saved payment method (showing brand and last 4 digits).
  3. Enter the amount (or leave blank to charge the full amount due).
  4. The card is charged off-session (no reader needed).

This is useful when the customer is not physically present or you want to avoid using the terminal.

Record a Manual In-Person Payment

For cash, check, or other non-card payments collected at the counter:

  1. On the order or booking, select the manual payment option.
  2. Choose the payment type (cash, check, etc.).
  3. Enter the amount and any reference information.
  4. Click Save.

See Process a Payment for full details on manual payment types and fields.

Payment Types Reference

Payment TypeCodeDescription
Card Present (terminal)card-presentTap, chip, or swipe on a Stripe Terminal reader
Card Not Present (online)card-not-presentCard entered manually or charged from saved method
CashcashPhysical cash
CheckcheckPaper check
ElectronicelectronicZelle, Venmo, Cash App, etc.

Tips

  • Keep the terminal reader charged and connected to Wi-Fi. If the reader is offline, terminal payments will fail.
  • Terminal payments have automatic capture -- the payment is captured immediately, unlike some online flows that may use manual capture.
  • Card-present transactions have lower dispute rates because the cardholder is physically present, which makes fraud less likely.
  • If the terminal payment fails, you can fall back to manual card entry by selecting the standard card payment flow instead.
  • Terminal readers must be registered to your Stripe Terminal Location before they can accept payments. See Register a Terminal for setup instructions.

What to Do Next

On this page