# Lyseis Pay - [Paylink API: Developer Payment Gateway Overview](https://docs.lyseis-pay.com/introduction.md): Paylink is a JSON HTTP API for collecting payments, issuing virtual accounts, running direct debits, processing refunds, and sending bank transfers. - [Paylink Quickstart: Initialize and Verify a Payment](https://docs.lyseis-pay.com/quickstart.md): Follow this step-by-step guide to get your API credentials, sign your first request, initialize a payment, and verify it — all in the sandbox. - [How to Authenticate Paylink API Requests Securely](https://docs.lyseis-pay.com/authentication.md): Learn how to sign every Paylink API request with HMAC-SHA256 — including required headers, the signing algorithm, and how to handle auth errors. - [Paylink API Sandbox and Live Environments Guide](https://docs.lyseis-pay.com/concepts/environments.md): Test your integration safely in the sandbox before going live. Switch environments and explore the interactive API docs on each base URL. - [Transaction References: Identity and Idempotency Guide](https://docs.lyseis-pay.com/concepts/references.md): References uniquely identify every Paylink transaction. Learn how to generate, store, and use them to track payments and prevent duplicates. - [Real-Time Webhook Events for Paylink Integration](https://docs.lyseis-pay.com/concepts/webhooks.md): Paylink pushes signed event notifications to your server in real time. Verify signatures, handle all event types, and build idempotent handlers. - [Initialize, Redirect, and Verify Payments with Paylink](https://docs.lyseis-pay.com/guides/accept-payments.md): Learn how to initialize a payment session, redirect customers to checkout, verify payment status, and reliably handle completion via webhooks. - [Collect Payments via Dedicated Virtual Bank Accounts](https://docs.lyseis-pay.com/guides/virtual-accounts.md): Learn how to create dedicated virtual bank accounts for customers, look them up, and monitor incoming payments with Paylink Virtual Accounts. - [Automate Recurring Charges with Direct Debit Mandates](https://docs.lyseis-pay.com/guides/direct-debits.md): Learn how to set up direct debit mandates, activate them with customer consent, and automatically charge customers on a recurring schedule. - [Initialize and Track Refunds for Paylink Payments](https://docs.lyseis-pay.com/guides/refunds.md): Learn how to initialize full or partial refunds, track refund status, query refund history, and handle async completion with Paylink. - [Send and Track Bank Transfers via Paylink Disbursements](https://docs.lyseis-pay.com/guides/transfers.md): Learn how to initialize disbursements to any bank account, verify transfer status, and manage your payout history using the Paylink Transfers API. - [Look Up Banks and Resolve Account Details — Paylink](https://docs.lyseis-pay.com/resources/banks.md): List supported banks for any country and verify account numbers before sending transfers or refunds. country_code defaults to NG for Nigeria. - [Error Codes, HTTP Status Codes, and Retry Strategy](https://docs.lyseis-pay.com/resources/errors.md): Learn the Lyseis Pay error response format and how to handle authentication, validation, conflict, and service errors, with a clear retry strategy. - [Initialize a New Payment — POST /payments/initialize](https://docs.lyseis-pay.com/api-reference/payments/initialize.md): POST /payments/initialize — starts a new payment session. Accepts email, amount, and currency. Returns an authorization_url and transaction reference. - [Verify a Payment — GET /payments/verify/{reference}](https://docs.lyseis-pay.com/api-reference/payments/verify.md): GET /payments/verify/{reference} — retrieves the current status and details of a payment transaction by its unique reference string. - [List Payment Transactions — GET /merchants/transactions](https://docs.lyseis-pay.com/api-reference/payments/history.md): GET /merchants/transactions — fetch a paginated list of payment transactions, filtered by status, payment method, customer email, or date range. - [Create a Dedicated Virtual Bank Account for Customer](https://docs.lyseis-pay.com/api-reference/virtual-accounts/create.md): POST /virtual-accounts provisions a dedicated virtual bank account for a customer, returning an account number, bank details, and reservation reference. - [Find a Virtual Account by Reference or Email Address](https://docs.lyseis-pay.com/api-reference/virtual-accounts/find.md): Retrieve a virtual account by account_reference (GET) or customer email address (POST). Both endpoints return the same account object. - [List and Filter Virtual Account Transactions by Date](https://docs.lyseis-pay.com/api-reference/virtual-accounts/transactions.md): GET /merchants/virtual-accounts/transactions — paginated inbound transfers across your virtual accounts, filterable by account, status, and date range. - [Direct Debit Mandates: Create, Activate, and Cancel](https://docs.lyseis-pay.com/api-reference/direct-debits/mandates.md): Manage the full direct debit mandate lifecycle: create a mandate, initiate and validate bank authorization, retrieve details, and cancel when needed. - [Initiate, Disburse, and Track Direct Debit Payments](https://docs.lyseis-pay.com/api-reference/direct-debits/debit.md): Pull funds from an active direct debit mandate, disburse collected funds, and track debit status in real time via polling or webhook events. - [Initialize a Refund Request — POST /refunds/initialize](https://docs.lyseis-pay.com/api-reference/refunds/initialize.md): Issue a full or partial refund against a completed payment. Refunds are processed asynchronously; poll the status endpoint to track the final outcome. - [Query Refund Status, History, and Counts by Status](https://docs.lyseis-pay.com/api-reference/refunds/query.md): Retrieve the status of a single refund, list all refunds for a payment, paginate through your full refund history, and get counts broken down by status. - [Send a Bank Transfer via POST /disbursements/initialize](https://docs.lyseis-pay.com/api-reference/transfers/initialize.md): Disburse funds to any bank account by submitting a transfer request with recipient details, amount, and an optional webhook URL for status updates. - [Verify a Bank Transfer — GET /disbursements/verify](https://docs.lyseis-pay.com/api-reference/transfers/verify.md): Retrieve the current status and full details of a bank transfer using its unique reference. Poll this endpoint or use webhooks to confirm final settlement. - [List Transfer History — GET /merchants/disbursements](https://docs.lyseis-pay.com/api-reference/transfers/history.md): Retrieve a paginated list of all outbound bank transfers on your merchant account, filterable by status, recipient email, and date range. - [List All Supported Banks — GET /banks?country_code=NG](https://docs.lyseis-pay.com/api-reference/banks/list.md): Retrieve the full list of banks supported by Paylink for a given country, including the bank name and code required for transfers and refunds. - [Verify a Bank Account Name via POST /banks/resolve](https://docs.lyseis-pay.com/api-reference/banks/resolve.md): Look up a bank account holder's name by account number and bank code before sending a transfer or issuing a refund to confirm you have the right recipient.