Skip to main content
Version: 4.0

Getting Started with Push to Terminal

1. What is Push to Terminal?​

Push to Terminal allows a merchant to send a payment request directly to a specific device via Firebase push notification. Instead of the customer scanning a QR code or opening an applink, the merchant selects a device from their list and pushes the payment to it.

The device receives the push notification, opens the Halo.Go app, and begins processing the payment automatically.

2. Prerequisites​

  1. Register on the Merchant Portal and retrieve your Merchant ID and API Key.
  2. At least one device must be registered via POST /devices with a valid Firebase token and friendly name.
  3. The Firebase token is obtained when the Halo.Go app is installed and initialized on the device.

3. How It Works​

Push to Terminal has two parts:

  1. Device Management -- Merchant registers devices via POST /devices with the device installation ID, Firebase token, and a friendly name. Devices can be listed, updated, and removed.
  2. Push Payment -- Merchant calls POST /consumer/push with the device ID, amount, currency, and reference. The backend sends a push notification to the device. If push fails, the merchant can use the applink URL / QR code already returned in the transaction API response as an alternate payment method.

4. Authentication​

All endpoints require authenticated access. See Authentication for more details.

You can authenticate using either:

  • API Key via the x-api-key header
  • JWT via the Authorization: Bearer <token> header

Both can be retrieved from the Merchant Portal.

5. Next Steps​

See the Integration Guide for detailed API documentation with request/response examples.