# About ParadisePay

ParadisePay connects your application to payment processors.
You send one API request; we route it to the right processor, normalize the
response, and handle settlement.

**Nineteen operations cover the whole API.** Most integrations use fewer than
ten.

## Start here

Quickstart
Send your first card sale and read the response.

Authentication
The two headers every request needs, and the third resellers use.

Environments and test data
Where to send requests while you build, and which cards to use.

## What you can do

|  |  |
|  --- | --- |
| **Take card payments** | A [sale](/docs/payments/accept-a-card-payment) in one call, or [authorize now and capture when you ship](/docs/payments/authorize-and-capture) |
| **Take bank payments** | [ACH debits](/docs/payments/accept-an-ach-payment) through VeriCheck, and [payouts](/docs/payments/send-a-payout) back out |
| **Store payment methods** | A [token](/docs/payments/save-and-reuse-a-payment-method) issued with the transaction, so card numbers never reach your systems |
| **Bill on a schedule** | [Recurring payments](/docs/payments/recurring-payments) with the stored-credential fields card networks require |
| **Reverse a payment** | [Void before settlement, refund after](/docs/after-the-payment/cancel-void-and-refund) |
| **Reconcile** | [Transaction](/docs/after-the-payment/find-and-report-on-transactions) and [batch](/docs/after-the-payment/batch-reports) reporting |
| **Board merchants** | [Clients and processor integrations](/docs/platforms/how-accounts-work), for platforms and resellers |


## How a payment flows

```mermaid
---
config:
  theme: 'neutral'
---
flowchart LR
    A[Your application] -->|POST /v1/transactions| B[Gateway]
    B --> C{Payment method}
    C -->|Card| D[TSYS]
    C -->|ACH| E[VeriCheck]
    D --> B
    E --> B
    B -->|transaction| A
    B --> F[Batch] --> G[Settlement]
```

## Worth knowing early

* **Amounts are integers in cents.** `10000` is 100.00 USD. USD is the only
currency.
* **A decline returns `200`.** Branch on `result`, not on the status code. See
[Handle declines](/docs/payments/handle-declines).
* **There are no webhooks.** Anything that arrives after the response —
settlement, an ACH return — is found by polling.
* **There is no idempotency key.** Reconcile before retrying a payment.


[Known limitations](/docs/reference/known-limitations) has the full list.

## Next steps

* [Quickstart](/docs/get-started/quickstart)
* [How card payments work](/docs/concepts/how-card-payments-work)