Getnet DocsGetnet Docs

SDK Client Reference

This reference maps every SDK Demo App client interface to the SDK call it wraps. Use it to find the exact call for a capability you want to integrate.

Package layout

The app is split into two clearly separated areas. Only the first one is material for your integration.

LayerPackageRole
SDK clientscom.pagonxt.apolo.devkit.sdkThin wrappers that call the SDK — exactly the calls you need to integrate.
Demo app internalscom.pagonxt.apolo.devkit.internalThe demo application itself (UI, state, storage, DI). Useful as inspiration, not required to integrate the SDK.

Client interfaces

Each SDK capability is exposed by a small interface in the sdk/ package. What matters for your integration is the body of each client method, which holds the exact SDK call.

Client interfaceSDK responsibilityUnderlying SDK call
ISetupClientSDK lifecycle: setup(…), reinitialize(…), shutdown()ApoloSdk.Builder(…).build() and ApoloSdk.shutdown()
ISaleClientStart a payment (default, amount-only, or fully parameterized)ApoloSdk.getClient().initSale(context, setup, onPaymentResult)
IRefundClientRefund a payment (by id or via the SDK screen)ApoloSdk.getClient().initRefund(context, refundData, onResult)
IPrinterClientPrint a BitmapApoloSdk.getClient().printBitmap(bitmap, onStatus)
INavCustomizationClientInsert or replace screens in the SDK flowApoloSdk.getClient().customizeNavigation(config)
IPaymentTypesClientQuery the payment types enabled for the terminalApoloSdk.getClient().getAvailablePaymentTypes()

Source set layout

The interfaces and the country-specific implementations live in different source sets.

LocationHolds
src/main/.../sdk/The shared client interfaces, plus the ApoloPrinterClient and PaymentTypesClient implementations.
src/brazil/.../sdk/Br*.ktCountry-specific client implementations, bound by a Koin module.

Initialization is the one step every integration must do first. In the demo app it is driven by BrSetupClient.