Skip to main content

Terminal C2C

The Terminal C2C SDK is a convenience wrapper around the Terminal C2C API. For providers other than BRI and NTT, you can call the Terminal C2C API directly without the SDK. BRI and NTT terminals require either the Gateway App or the C2C SDK as a pre-install.
Xendit’s Terminal C2C SDK enables direct local-network terminal control from your app. Use it when you need custom command flow ownership and device-side logic.

What you can do with Terminal C2C

Terminal C2C provides everything you need to build in-person payment experiences:
  • Process payments directly through terminal devices using a unified API
  • Manage terminal connections and handle device configuration
  • Handle transactions including payments, cancellations, receipts, and settlements
  • Support multiple platforms including Android, iOS, and other KMP-compatible platforms
  • Connect to local gateway for secure communication with payment terminals
Terminal C2C works alongside the Terminal Gateway service (the local application that communicates with physical payment devices) to provide a complete in-person payment solution. The C2C SDK sends commands to the Gateway service running on your local network.

Choose your platform

Get started with Terminal C2C by selecting your development platform:
If you still need to choose between H2H and C2C, start with Quick Start for the decision flow first.

Android (Kotlin)

Native Android development with Kotlin SDK for Android applications

iOS (Swift)

Native iOS development with Swift SDK for iOS applications

RESTful API

Direct HTTP API integration for client-to-client communication

Key capabilities

Kotlin Multiplatform

Build for Android, iOS, and other platforms with a single codebase

Secure processing

Bank-grade security with encryption and secure communication protocols

Unified API

Consistent API across all platforms with suspend functions and callbacks

Easy integration

Simple SDK with comprehensive documentation and examples

Prerequisites

Before you begin, ensure you have:
  • A Xendit account with Terminal C2C access
  • A valid client key for your environment
  • Terminal Gateway service running locally (default port 8189)
  • Physical payment terminal device information (Terminal ID and IP address) for supported providers (BRI, NTT, Cashup, SHC)
  • Development environment set up for your chosen platform

Next steps

  1. Set up your platform environment and install the SDK
  2. Provision credentials and terminal device information
  3. Integrate command flows from the platform guide
  4. Validate with simulation and real devices before rollout
Ready to get started? Choose your platform above to begin the integration process.