# POS Manufacturers Overview

This area documents how a hardware manufacturer homologates a new POS device with Getnet's POS Digital platform. It targets the manufacturer's engineering team, not a merchant-facing software integrator. If you integrate a Getnet terminal into merchant software, see [App2App](/en/app2app/app2app-overview), [Host-to-Host](/en/host-to-host/integration-model), or [Integrated POS](/en/integrated-pos/overview-pos) instead.

## What is POS manufacturer integration

To run Getnet payments, a POS device needs a **Manufacturer Service App**. This Android service exposes the device's hardware — card readers, printer, beeper, LEDs, camera — through a fixed set of interfaces that your team builds. Getnet provides these interfaces in a library called `libhalservice.aar`. Once your service implements them, Getnet's own software can drive your hardware without any device-specific code.

The **Middleware App** is the layer that talks to your service. It sits between your Manufacturer Service App and the SDK that Getnet partners embed in their own applications. That SDK, **SDK PagoNxt**, is exposed through `libposemv` and `libposdigital`. From your side, you never talk to partner applications directly. You only implement the HAL (Hardware Abstraction Layer) contract — the Middleware App does the rest.

Getnet also gives you two tools to validate your implementation before submitting it:

* The **Devkit** — a test application that exercises your service's hardware calls (beeper, printer, card readers, and so on).
* The **Manufacturer Test App** — a Getnet-built application focused on EMV processing. It covers service initialization, AID and CAPK loading, and mandatory card-brand scenarios.

## How it works

You build the Manufacturer Service App as an Android service, package-named `com.pagonxt.hal.platform.service`, and implement the interfaces from `libhalservice.aar`. The Middleware App binds to your service through that package name and calls its methods the same way for every manufacturer. Your implementation is what makes a specific device's hardware respond correctly.

Once your service responds correctly to the Devkit, you run the mandatory scenarios in the Manufacturer Test App. Passing those scenarios generates a test report. You submit that report, together with [a few other artifacts](/en/pos-manufacturers/how-to-guides-pos-mfg/submit-integration-for-validation), to continue the homologation process with Getnet.

## Where it fits

POS manufacturer integration sits below every other integration mode in this documentation. App2App, Host-to-Host, and Integrated POS all assume a terminal that already runs Getnet's software. This area is what makes that possible for a new piece of hardware. Getnet reviews your submission before your device becomes available through those channels.

## Next steps

* [HAL integration setup](/en/pos-manufacturers/first-steps-pos-mfg/hal-integration-setup) — package your service and expose the required interfaces.
* [Quick Start: run the Devkit](/en/pos-manufacturers/first-steps-pos-mfg/quick-start-devkit) — validate your implementation with Getnet's test tools.
* [HAL architecture](/en/pos-manufacturers/core-concept-pos-mfg/hal-architecture) — how the Middleware App, `libhalservice`, and your service relate.
* [Service interfaces reference](/en/pos-manufacturers/reference-pos-mfg/service-interfaces) — every interface your service can implement.