# Flowlix API - [Introduction](https://docs.flowlix.eu/introduction.md): Integrate card payments, refunds, payouts, and payment notifications - [Authentication](https://docs.flowlix.eu/guides/authentication.md): Authenticate API requests and keep your secret key server-side - [Quickstart](https://docs.flowlix.eu/guides/quickstart.md): Choose Hosted Payment Page or Direct API and create a Sandbox payment in about five minutes - [Hosted Payment Page Quickstart](https://docs.flowlix.eu/guides/hosted-payment-page.md): Create a Sandbox payment, redirect the customer, and confirm the final Payment status - [Direct API Quickstart](https://docs.flowlix.eu/guides/direct-api.md): Submit a Sandbox card payment from your server and confirm the final Payment status - [Sandbox testing](https://docs.flowlix.eu/guides/testing.md): Verify payment, refund, payout, retry, and failure handling without moving real money - [Payment lifecycle](https://docs.flowlix.eu/guides/payment-lifecycle.md): Interpret every Payment status and decide when to poll, fulfil, or start a new attempt - [Refunds](https://docs.flowlix.eu/guides/refunds.md): Create a full or partial Refund and track it through the parent Payment - [Payouts](https://docs.flowlix.eu/guides/payouts.md): Create card payouts and track their processing and final result - [Webhooks](https://docs.flowlix.eu/guides/webhooks.md): Receive and verify Payment, Refund, and Payout events on your server - [Idempotency](https://docs.flowlix.eu/guides/idempotency.md): Retry every create operation without duplicating a Payment, Refund, or Payout - [Errors](https://docs.flowlix.eu/guides/errors.md): Handle every public HTTP error by code, operation, and retry policy - [Operation failures](https://docs.flowlix.eu/guides/operation-failures.md): Distinguish HTTP errors from terminal Payment, Refund, and Payout outcomes - [Get aggregate API availability](https://docs.flowlix.eu/payments-api/health/get-aggregate-api-availability.md): Returns the current aggregate availability of the Flowlix API. This operation is public and always returns HTTP 200 when the gateway can answer. Inspect `status` instead of the HTTP status code. - [List payments](https://docs.flowlix.eu/payments-api/payments/list-payments.md): Returns a paginated list of payments, sorted by creation time in descending order (newest first). If no payments match the filters, the response is `200 OK` with an empty `data` array. - [Create a Direct API payment](https://docs.flowlix.eu/payments-api/payments/create-a-direct-api-payment.md): Creates a payment by charging a card directly. Submit card details under `payment_method_data.card`, the shopper IP in `customer_ip_address`, and optional payer identity or billing data when the merchant has it. - [Create a hosted payment page payment](https://docs.flowlix.eu/payments-api/payments/create-a-hosted-payment-page-payment.md): Creates a hosted payment page payment attempt. Redirect the customer to `next_action.redirect_url` to complete the `next_action.reason` customer action. The required-action URL is opaque and may later change from the hosted page to a 3D Secure browser action. Use the latest `next_action.redirect_url… - [Retrieve a payment](https://docs.flowlix.eu/payments-api/payments/retrieve-a-payment.md): Retrieves a payment by ID. - [List card payouts](https://docs.flowlix.eu/payments-api/payouts/list-card-payouts.md): Returns merchant-scoped card payouts ordered newest first. `total_count` is the exact number matching the filters before cursor pagination. - [Submit a card payout](https://docs.flowlix.eu/payments-api/payouts/submit-a-card-payout.md): Submits a Host-to-Host Original Credit Transaction to a recipient Visa or Mastercard. Inspect the response status: `PENDING` and `PROCESSING` are nonterminal; `SUCCEEDED` and `FAILED` are terminal. `PROCESSING` does not confirm delivery or settlement. - [Retrieve a card payout](https://docs.flowlix.eu/payments-api/payouts/retrieve-a-card-payout.md): Retrieves one payout within the authenticated merchant and mode scope. - [Create a refund](https://docs.flowlix.eu/payments-api/refunds/create-a-refund.md): Refunds a payment that has already succeeded. The `amount` is always required. To refund the full payment, set `amount` to the payment's remaining refundable amount. The refund uses the same currency as the original payment; currency is not accepted on the refund request. ## OpenAPI Specs - [merchant-management-api](/api-reference/merchant-management-api.yaml) - [payments-api](/api-reference/payments-api.yaml) - [allowed-approved-enum-removals](/contract-tools/tests/fixtures/compatibility/allowed-approved-enum-removals.yaml) - [allowed-new-endpoint](/contract-tools/tests/fixtures/compatibility/allowed-new-endpoint.yaml) - [allowed-optional-request](/contract-tools/tests/fixtures/compatibility/allowed-optional-request.yaml) - [allowed-optional-response](/contract-tools/tests/fixtures/compatibility/allowed-optional-response.yaml) - [base-approved-enum-removals](/contract-tools/tests/fixtures/compatibility/base-approved-enum-removals.yaml) - [base-currency-widening](/contract-tools/tests/fixtures/compatibility/base-currency-widening.yaml) - [base-referenced-response](/contract-tools/tests/fixtures/compatibility/base-referenced-response.yaml) - [base-request-currency-widening](/contract-tools/tests/fixtures/compatibility/base-request-currency-widening.yaml) - [base](/contract-tools/tests/fixtures/compatibility/base.yaml) - [metadata-change](/contract-tools/tests/fixtures/compatibility/metadata-change.yaml) - [metadata-new-operation](/contract-tools/tests/fixtures/compatibility/metadata-new-operation.yaml) - [metadata-security-scheme-change](/contract-tools/tests/fixtures/compatibility/metadata-security-scheme-change.yaml) - [rejected-changed-type](/contract-tools/tests/fixtures/compatibility/rejected-changed-type.yaml) - [rejected-new-required](/contract-tools/tests/fixtures/compatibility/rejected-new-required.yaml) - [rejected-partial-currency-widening](/contract-tools/tests/fixtures/compatibility/rejected-partial-currency-widening.yaml) - [rejected-partial-failure-code-removal](/contract-tools/tests/fixtures/compatibility/rejected-partial-failure-code-removal.yaml) - [rejected-partial-payment-status-removal](/contract-tools/tests/fixtures/compatibility/rejected-partial-payment-status-removal.yaml) - [rejected-referenced-response-enum-expansion](/contract-tools/tests/fixtures/compatibility/rejected-referenced-response-enum-expansion.yaml) - [rejected-removed-method](/contract-tools/tests/fixtures/compatibility/rejected-removed-method.yaml) - [rejected-request-currency-widening-with-unrelated-break](/contract-tools/tests/fixtures/compatibility/rejected-request-currency-widening-with-unrelated-break.yaml) - [rejected-response-enum-expansion](/contract-tools/tests/fixtures/compatibility/rejected-response-enum-expansion.yaml) - [rejected-response-enum-removed](/contract-tools/tests/fixtures/compatibility/rejected-response-enum-removed.yaml) - [rejected-response-new-required](/contract-tools/tests/fixtures/compatibility/rejected-response-new-required.yaml) - [rejected-response-status](/contract-tools/tests/fixtures/compatibility/rejected-response-status.yaml) - [rejected-unapproved-enum-removal](/contract-tools/tests/fixtures/compatibility/rejected-unapproved-enum-removal.yaml) - [unresolved-internal-ref](/contract-tools/tests/fixtures/compatibility/unresolved-internal-ref.yaml)