EIS Bridge™ — trademark application pending · IPOPHL Class 42 · Ref EFPH202600003850268

Developer Tools

Import the Postman collection, validate payloads against the JSON schema, and copy starter code for your stack.

Postman Collection v1.0

Ready-to-import requests for transaction submit, batch, status, and webhook configuration. In Postman, choose Import → Upload Files and set collection variables BASE_URL, API_KEY, and BRIDGE_TRANSACTION_ID before sending.

EIS-Bridge-API-v1.postman_collection.json

JSON Schema

Machine-readable Standard Sale Object schema for validation, IDE autocomplete, and CI checks.

sale-object.schema.json · Field reference

Code samples — POST /transactions

Minimal examples using environment variables for BASE_URL and API_KEY.

Node.js

const BASE_URL = process.env.BASE_URL;
const API_KEY = process.env.API_KEY;

const payload = {
  transaction: {
    transaction_id: "POS-10001",
    transaction_datetime: "2026-06-07T14:23:55+08:00",
    merchant_code: "MRC123",
    branch_code: "BR001",
    pos_device_id: "POS01",
    invoice_type: "OR",
    items: [{ sku: "SKU001", description: "Product A", qty: 1, unit_price: 100 }],
    totals: { gross: 100, net: 100 },
    payment: { method: "CASH", amount: 100 }
  }
};

const res = await fetch(`${BASE_URL}/transactions`, {
  method: "POST",
  headers: {
    Authorization: `Bearer ${API_KEY}`,
    "Content-Type": "application/json"
  },
  body: JSON.stringify(payload)
});

console.log(await res.json());

PHP

$baseUrl = getenv('BASE_URL');
$apiKey  = getenv('API_KEY');

$payload = [
  'transaction' => [
    'transaction_id'       => 'POS-10001',
    'transaction_datetime' => '2026-06-07T14:23:55+08:00',
    'merchant_code'        => 'MRC123',
    'branch_code'          => 'BR001',
    'pos_device_id'        => 'POS01',
    'invoice_type'         => 'OR',
    'items' => [[
      'sku' => 'SKU001', 'description' => 'Product A',
      'qty' => 1, 'unit_price' => 100
    ]],
    'totals'  => ['gross' => 100, 'net' => 100],
    'payment' => ['method' => 'CASH', 'amount' => 100]
  ]
];

$ch = curl_init("$baseUrl/transactions");
curl_setopt_array($ch, [
  CURLOPT_POST           => true,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HTTPHEADER     => [
    "Authorization: Bearer $apiKey",
    'Content-Type: application/json'
  ],
  CURLOPT_POSTFIELDS     => json_encode($payload)
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;

Java

String baseUrl = System.getenv("BASE_URL");
String apiKey  = System.getenv("API_KEY");

String json = """
  {"transaction":{"transaction_id":"POS-10001",
  "transaction_datetime":"2026-06-07T14:23:55+08:00",
  "merchant_code":"MRC123","branch_code":"BR001",
  "pos_device_id":"POS01","invoice_type":"OR",
  "items":[{"sku":"SKU001","description":"Product A","qty":1,"unit_price":100}],
  "totals":{"gross":100,"net":100},
  "payment":{"method":"CASH","amount":100}}}
  """;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create(baseUrl + "/transactions"))
    .header("Authorization", "Bearer " + apiKey)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(json))
    .build();

HttpResponse<String> response = client.send(request,
    HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());

C#

var baseUrl = Environment.GetEnvironmentVariable("BASE_URL");
var apiKey  = Environment.GetEnvironmentVariable("API_KEY");

var payload = new {
  transaction = new {
    transaction_id = "POS-10001",
    transaction_datetime = "2026-06-07T14:23:55+08:00",
    merchant_code = "MRC123",
    branch_code = "BR001",
    pos_device_id = "POS01",
    invoice_type = "OR",
    items = new[] {
      new { sku = "SKU001", description = "Product A", qty = 1, unit_price = 100 }
    },
    totals = new { gross = 100, net = 100 },
    payment = new { method = "CASH", amount = 100 }
  }
};

using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
    new AuthenticationHeaderValue("Bearer", apiKey);

var content = new StringContent(
    JsonSerializer.Serialize(payload),
    Encoding.UTF8, "application/json");

var response = await client.PostAsync($"{baseUrl}/transactions", content);
Console.WriteLine(await response.Content.ReadAsStringAsync());