# `Stripe.Services.TestHelpers.Terminal.ReaderService`
[🔗](https://github.com/jeffhuen/tiger_stripe/blob/main/lib/stripe/services/test_helpers/terminal/reader_service.ex#L2)

Reader API operations.

# `present_payment_method`

```elixir
@spec present_payment_method(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}
```

Simulate presenting a payment method

Presents a payment method on a simulated reader. Can be used to simulate accepting a payment, saving a card or refunding a transaction.

# `succeed_input_collection`

```elixir
@spec succeed_input_collection(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}
```

Simulate a successful input collection

Use this endpoint to trigger a successful input collection on a simulated reader.

# `timeout_input_collection`

```elixir
@spec timeout_input_collection(Stripe.Client.t(), String.t(), map(), keyword()) ::
  {:ok, term()} | {:error, Stripe.Error.t()}
```

Simulate an input collection timeout

Use this endpoint to complete an input collection with a timeout error on a simulated reader.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
