> ## Documentation Index
> Fetch the complete documentation index at: https://docs.monime.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Overview of Monime Checkout Sessions and how to use them

A Checkout Session is a short-lived object that creates a hosted checkout page for collecting payments on your behalf. Use it to accept payments quickly without building your own payment UI. You control what the customer is paying for, the amount, allowed payment methods, and where to return the customer after payment.

## When to use Checkout Session

* You want a fast, secure way to accept payments with minimal UI work
* You need a hosted page that supports multiple payment methods out-of-the-box
* You want Monime to handle payment state, redirection, and receipt UI

## How it works

<Steps>
  <Step title="Create a Checkout Session (server)">
    Your server calls the API to create a session with amount, currency, and options.
  </Step>

  <Step title="Redirect customer">
    Redirect the customer to the hosted checkout URL returned in the session.
  </Step>

  <Step title="Customer pays">
    The customer completes payment on Monime's secure page.
  </Step>

  <Step title="Webhook + Return URL">
    Receive payment status via webhook and/or redirect back to your site.
  </Step>
</Steps>

## Quick start

<CardGroup cols={3}>
  <Card title="Create Session API" icon="plus" href="/apis/versions/caph-2025-08-23/checkout-session/create-checkout-session">
    Create a new checkout session from your backend
  </Card>

  <Card title="Retrieve Session" icon="magnifying-glass" href="/apis/versions/caph-2025-08-23/checkout-session/retrieve-checkout-session">
    Look up a session to check its latest status
  </Card>

  <Card title="List Sessions" icon="list" href="/apis/versions/caph-2025-06-20/checkout-session/list-checkout-sessions">
    Browse sessions for reporting or debugging
  </Card>
</CardGroup>

## Key session fields

<AccordionGroup>
  <Accordion title="amount">
    Total amount to be collected. Define in the smallest currency unit when applicable.
  </Accordion>

  {" "}

  <Accordion title="currency">
    The currency for the payment (e.g., SLE). Must be supported by selected methods.
  </Accordion>

  {" "}

  <Accordion title="payment_methods">
    Allowed payment methods for the checkout (e.g., mobile money, bank, card).
  </Accordion>

  {" "}

  <Accordion title="success_url / cancel_url">
    Where customers are redirected after a successful payment or when they cancel.
  </Accordion>

  {" "}

  <Accordion title="metadata">
    Optional key/value pairs you can use to store order identifiers or context.
  </Accordion>
</AccordionGroup>

## Webhooks

We recommend handling payment lifecycle events using webhooks to ensure your system is updated even if the customer closes the browser before redirecting.

<CardGroup cols={2}>
  <Card title="Webhook Overview" icon="globe" href="/guide/webhook/introduction">
    Learn how webhooks work on Monime
  </Card>

  <Card title="HMAC Verification" icon="shield-check" href="/guide/webhook/hmac-verification">
    Verify webhook signatures securely
  </Card>
</CardGroup>

## Environments: Test vs Live

Use Test mode for development and Live for production. Tokens, behavior, and prefixes differ between environments.

<Info>
  See <a href="/developer-resources/api-basics/environment">API Basics → Environments</a> and
  <a href="/developer-resources/api-basics/standard-headers">Standard Headers</a> for details.
</Info>

## Next steps

<CardGroup cols={2}>
  <Card title="Build with Next.js" icon="code" href="/guide/checkout-session/nextjs-app-router">
    End-to-end example using Next.js API routes
  </Card>

  <Card title="API Reference" icon="book" href="/apis/versions/caph-2025-06-20/checkout-session/object">
    Explore the Checkout Session object and full API
  </Card>
</CardGroup>
