Skip to main content

Introduction

Welcome to the API Reference section. This section provides technical details about Alterra's APIs, including request and response formats, as well as parameter definitions.

Base Url

The base URLs for accessing the API are:

  • Staging: horven-api.sumpahpalapa.com/api

Response Code

The response codes returned to the Partner can refer to the following table:

Response CodeDescriptions
00Success
10Pending
20Wrong Number/number Blocked/ Number Expired
21Product Issue
22Duplicate Transactions
23Connection Timeout
24Provider Cutoff
25KWH is Overlimit
26Payment is Overlimit
50Bill Already Paid/ Not available
51Invalid Inquiry Amount/ No Inquiry Found
98Order Canceled by Ops
99General Error

HTTP Error Response

The HTTP error responses returned to the Partner can refer to the following table:

Response StatusBodyDescription
400Missing X-Client-ID headerClient ID header not provided
400Missing X-Client-Signature headerSignature header not provided
400Missing X-Client-Timestamp headerTimestamp header not provided
400Invalid timestamp format (use RFC3339)Timestamp not in RFC3339 format
401Request too old (more than 5 minutes)Timestamp is older than 5 minutes
401Invalid partner credential keyClient ID not found or invalid
401Partner credential key expiredYour public key has expired
401Invalid IP addressRequest from unauthorized IP address
401Invalid request bodyRequest body could not be read
401Signature verification failedSignature is invalid
403403 ForbiddenInvalid Authentication
403403 Forbidden: Product UnavailableInvalid Product ID
403403 Forbidden: Insufficient Deposit AmountDeposit tidak mencukupi untuk melakukan transaksi (Deposit is insufficient to make a transaction)
406406 Missing data property: "Property_name"Parameter mandatory di Body request ada yang tidak valid (Mandatory parameter in Body request is invalid)
406406 Not Acceptable: invalid property value "Property_name"Parameter mandatory di Body request ada yang tidak sesuai (Mandatory parameter in Body request is not appropriate)
422422 Duplicate Order ID: "Order_No"Order ID yang dikirim oleh partner mengalami duplicate transaksi karena Order ID tersebut masih berjalan disisi Alterra (Order ID sent by partner experienced duplicate transaction because the Order ID is still running on Alterra's side)
450450 Product Closed TemporaryProduct sedang tidak tersedia (Product is temporarily unavailable)

Transaction status

The transaction statuses that the Partner may receive are: Success Failed Pending

For handling each HTTP issue or response code received, please refer to the following page: Partner Integration Guideline [CONFIDENTIAL].

Journey

In terms of the transaction journey, there are two types:

  1. Transactions that require an inquiry
  2. Transactions that do not require an inquiry

Transaction Journey

The required transaction flow is as follows:

  1. The Partner must first perform authentication.
  2. The Partner sends a request to the Purchase API for a mobile prepaid product.
  3. Alterra will initially return a response with RC 10 and a pending status.
  4. The Partner can periodically check the final status by calling the Check Status API.
  5. Alternatively, the Partner may integrate with Alterra's Callback to receive status updates automatically.

Transaction Flow Diagram

The required transaction flow is as follows:

  1. The Partner must first perform authentication.
  2. The Partner sends a request to the Purchase API for a mobile prepaid product.
  3. Alterra will initially return a response with RC 10 and a pending status.
  4. The Partner can periodically check the final status by calling the Check Status API.
  5. Alternatively, the Partner may integrate with Alterra's Callback to receive status updates automatically.
Last updated on Sep 20, 2025
Was this page helpful?