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

# Terminal API Overview

> Compare Terminal API (H2H) and Terminal API (C2C) and choose the right integration path

The Xendit Terminal APIs power in-person payments across two integration models. Use this overview to identify the right API track before diving into the detailed references.

<Check>
  Terminal API (H2H) is the recommended starting point for most merchants because it provides managed device orchestration, standardized workflows, and the fastest route to certification.
</Check>

## Integration options

<Tabs>
  <Tab title="Terminal API (H2H)">
    <p>The Terminal API is the Host-to-Host (H2H) HTTP API. Your backend calls Xendit's cloud endpoints to create payment sessions, manage terminals, and receive callbacks.</p>

    <ul>
      <li>Always HTTP — your backend makes REST calls to <code>POST /v1/terminal/sessions</code> and related endpoints.</li>
      <li>Unified session and callback model that automatically handles retries and reconciliation.</li>
      <li>BRI/NTT terminals require the <a href="/sdk/gateway/app-configuration">Gateway App</a> or <a href="/sdk/h2h/introduction">H2H SDK</a> for device connectivity. Other providers connect directly.</li>
    </ul>

    <Tip>
      Begin with the <a href="/api-reference/terminal-api/introduction">Terminal API (H2H) introduction</a> and follow the <a href="/guides/getting-started/quickstart">Quick Start</a> to stand up sandbox payments in under 10 minutes.
    </Tip>
  </Tab>

  <Tab title="Terminal API (C2C)">
    <p>Client-to-Client (C2C) gives you direct control over commands sent to terminals. You can interface with terminals in two ways:</p>

    <ul>
      <li><strong>Terminal C2C API</strong> (HTTP) — Send REST commands (<code>POST /commands/pay</code>, etc.) over the local network. BRI/NTT require the <a href="/sdk/gateway/app-configuration">Gateway App</a>; other providers work directly.</li>
      <li><strong>Terminal C2C SDK</strong> (native) — Call Android/iOS SDK methods directly. For BRI/NTT the SDK is the required install; for other providers it is an optional convenience.</li>
      <li>Ideal for kiosks, offline-first workflows, and custom hardware setups.</li>
      <li>Requires custom handling of device states, receipt delivery, and failure recovery.</li>
    </ul>

    <Warning>
      Choose C2C only if you have strong device engineering capabilities — mixing H2H and C2C within the same deployment is unsupported.
    </Warning>
  </Tab>
</Tabs>

## Architecture comparison

| Capability            | Terminal API (H2H)                            | Terminal C2C API / Terminal C2C SDK                 |
| --------------------- | --------------------------------------------- | --------------------------------------------------- |
| API interface         | Always HTTP REST via Xendit cloud             | HTTP REST (C2C API) or native SDK methods (C2C SDK) |
| Device management     | Gateway App or H2H SDK handles pairing        | Your app or service maintains device connections    |
| Session orchestration | Managed by Xendit with standardized callbacks | Fully custom — implement your own workflows         |
| BRI/NTT pre-install   | Gateway App or H2H SDK                        | Gateway App (for C2C API) or C2C SDK (for native)   |
| Other providers       | No pre-install needed                         | No pre-install needed; C2C SDK optional             |
| Time-to-market        | Fast — fewer edge cases and pre-built flows   | Longer — requires bespoke command handling          |
| Recommended for       | Assisted checkout, staff POS, rapid pilots    | Kiosks, unattended terminals, advanced custom flows |

## Sample use cases

<Tabs>
  <Tab title="Retail POS rollout (H2H)">
    <p>A national retail chain wants a consistent checkout experience across dozens of staffed stores. Payments need to keep flowing even when teams rotate or terminals move between counters.</p>

    <Tip>
      H2H excels when you need a managed operations layer that keeps terminals paired, orchestrates retries, and standardizes receipts so every store follows the same playbook.
    </Tip>

    <ul>
      <li>Central operations teams can monitor every device from a single dashboard instead of logging into individual terminals.</li>
      <li>Regional expansion is simply a matter of adding more terminals; the API contract and callbacks stay identical.</li>
    </ul>
  </Tab>

  <Tab title="Custom kiosk network (C2C)">
    <p>An experiential marketing team is rolling out unattended kiosks in malls and airports. Each kiosk needs local-device logic and the ability to continue operating if connectivity blips.</p>

    <Tip>
      C2C offers direct terminal control so your kiosk software can decide exactly when to prompt, cancel, or retry while still working with your chosen hardware.
    </Tip>

    <ul>
      <li>Fallback plans—like queueing payments until the mall network recovers—are easier to tailor for each venue.</li>
    </ul>
  </Tab>
</Tabs>
