# Run a card sale.

Run a card sale.

1. Run a card sale by POSTing to /payments. The default `autoCapture: true` and `processAsSale: false` produce a normal sale that stays adjustable in the open batch.
Variants of this same step (documented, not separate steps):
- Surcharge: add an `order.breakdown.surcharge` object to the payload.
- MOTO / card-not-present: set `channel: moto` instead of `web`.
- 3-D Secure (e-commerce): first run an MPI check off-API at
  payments.payroc.com/merchant/mpi, then add a `threeDSecure` object
  with `serviceProvider: gateway` and the returned `mpiReference` to
  this payload. The MPI call is an external-system step, so it is not
  modeled here.
 [payment](/api/payment)

## Workflow diagram

```mermaid
flowchart TD
  step0["1. sale request · API"]
```
