Delivering

on Lightning

Join the first global & interoperable financial network.
> Bridging the Gap

Real-Time Global Settlement

Transforming any closed payment ecosystem to an open, transparent, and instant settlement network that enables a new generation of fintech companies to emerge as global players.

A modular

API _ Platform

Easily integrate Bitcoin and Lightning Network functionalities into your applications with our API documentation in your preferred programming language.
CURL
REQUEST
1   curl --request GET \
2        --url https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3 \
3        --header 'Authorization: eyJhbGc...rOM-UE' \
4        --header 'accept: application/json'
1   const sdk = require('api')('@sing-in/v1.0#eunzr16lr5s5jiu');
2
3   sdk.auth('eyJhbGc...rOM-UE');
4   sdk.getRatesV2({primary_currency_id: '2', secondary_currency_id: '3'})
5   .then(({ data }) => console.log(data))
6   .catch(err => console.error(err));
1    require 'uri'
2    require 'net/http'
3
4    url = URI("https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3")
5
6    http = Net::HTTP.new(url.host, url.port)
7    http.use_ssl = true
8
9    request = Net::HTTP::Get.new(url)
10   request["accept"] = 'application/json'
11   request["Authorization"] = 'eyJhbGc...rOM-UE'
12
13   response = http.request(request)
14   puts response.read_body
1   <?php
2   require_once('vendor/autoload.php');
3
4   $client = new \GuzzleHttp\Client();
5
6   $response = $client->request('GET', 'https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3', [
7     'headers' => [
8        'Authorization' => 'eyJhbGc...rOM-UE',
9        'accept' => 'application/json',
10    ],
11  ]);
12
13  echo $response->getBody();
1   import requests
2
3   url = "https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3"
4
5   headers = {
6       "accept": "application/json",
7       "Authorization": "eyJhbGc...rOM-UE"
8   }
9
10   response = requests.get(url, headers=headers)
11
12   print(response.text)
1    CURL *hnd = curl_easy_init();
2
3    curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
4    curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout);
5    curl_easy_setopt(hnd, CURLOPT_URL, "https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3");
6
7    struct curl_slist *headers = NULL;
8    headers = curl_slist_append(headers, "accept: application/json");
9    headers = curl_slist_append(headers, "Authorization: eyJhbGc...rOM-UE");
10   curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
11
12   CURLcode ret = curl_easy_perform(hnd);
1    using RestSharp;
2
3
4    var options = new RestClientOptions("https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3");
5    var client = new RestClient(options);
6    var request = new RestRequest("");
7    request.AddHeader("accept", "application/json");
8    request.AddHeader("Authorization", "eyJhbGc...rOM-UE");
9    var response = await client.GetAsync(request);
10
11   Console.WriteLine("{0}", response.Content);
1    CURL *hnd = curl_easy_init();
2
3    curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
4    curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout);
5    curl_easy_setopt(hnd, CURLOPT_URL, "https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3");
6
7    struct curl_slist *headers = NULL;
8    headers = curl_slist_append(headers, "accept: application/json");
9    headers = curl_slist_append(headers, "Authorization: eyJhbGc...rOM-UE");
10   curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
11
12   CURLcode ret = curl_easy_perform(hnd);
1   (require '[clj-http.client :as client])
2
3   (client/get "https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3" {:headers {:Authorization "eyJhbGc...rOM-UE"}
4                                                                               :accept :json})
1    package main
2
3    import (
4      "fmt"
5      "net/http"
6      "io"
7
8
9      func main() {
10
11      url := "https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3"
12
13      req, _ := http.NewRequest("GET", url, nil)
14
15      req.Header.Add("accept", "application/json")
16      req.Header.Add("content-type", "application/json")
17
18      res, _ := http.DefaultClient.Do(req)
19
20      defer res.Body.Close()
21      body, _ := io.ReadAll(res.Body)
22
23      fmt.Println(string(body))
24
25  }
1   GET /currency/all HTTP/1.1
2   Accept: application/json
3   Host: api-sandbox.poweredbyibex.io
1   OkHttpClient client = new OkHttpClient();
2
3   Request request = new Request.Builder()
4     .url("https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3")
5     .get()
6     .addHeader("accept", "application/json")
7     .addHeader("Authorization", "eyJhbGc...rOM-UE")
8     .build();
9
10   Response response = client.newCall(request).execute();
1   No JSON body
1   val client = OkHttpClient()
2
3   val request = Request.Builder()
4     .url("https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3")
5     .get()
6     .addHeader("accept", "application/json")
7     .addHeader("Authorization", "eyJhbGc...rOM-UE")
8     .build()
9
10   val response = client.newCall(request).execute()
1    #import <Foundation/Foundation.h>
2
3    NSDictionary *headers = @{ @"accept": @"application/json",
4                              @"Authorization": @"eyJhbGc...rOM-UE" };
5
6    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3"]
7                                                          cachePolicy:NSURLRequestUseProtocolCachePolicy
8                                                      timeoutInterval:10.0];
9    [request setHTTPMethod:@"GET"];
10   [request setAllHTTPHeaderFields:headers];
1   open Cohttp_lwt_unix
2   open Cohttp
3   open Lwt
4
5   let uri = Uri.of_string "https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3" in
6   let headers = Header.add_list (Header.init ()) [
7     ("accept", "application/json");
8     ("Authorization", "eyJhbGc...rOM-UE");
9   ] in
10
11   Client.call ~headers `GET uri
12   >>= fun (res, body_stream) ->
13     (* Do stuff with the result *)
1   $headers=@{}
2   $headers.Add("accept", "application/json")
3   $headers.Add("Authorization", "eyJhbGc...rOM-UE")
4   $response = Invoke-WebRequest -Uri 'https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3' -Method GET -Headers $headers
1   library(httr)
2
3   url <- "https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3"
4
5   response <- VERB("GET", url, add_headers('Authorization' = 'eyJhbGc...rOM-UE'), content_type("application/octet-stream"), accept("application/json"))
6
7   content(response, "text")
1   import Foundation
2
3   let headers = [
4     "accept": "application/json",
5     "Authorization": "eyJhbGc...rOM-UE"
6   ]
7
8   let request = NSMutableURLRequest(url: NSURL(string: "https://api-sandbox.poweredbyibex.io/v2/currencies/rate/2/3")! as URL,
9                                           cachePolicy: .useProtocolCachePolicy,
10                                       timeoutInterval: 10.0)
11   request.httpMethod = "GET"
12   request.allHTTPHeaderFields = headers
13
14   let session = URLSession.shared
15   let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
16     if (error != nil) {
17       print(error as Any)
18     } else {
19       let httpResponse = response as? HTTPURLResponse
20       print(httpResponse)
21     }
22   })
23
24   dataTask.resume()
RESPONSE
1   {
2    "updatedAtUnix": 1710337719,
3    "rate": 72521.36,
4    "primaryCurrencyID": 2,
5    "secondaryCurrencyID": 3
6   }
> enterprise grade solution
Scalability
The IBEX APIs were designed to efficiently handle growth in demand and usage. We have implemented horizontal scaling, asynchronous processing, and caching strategies to ensure availability without sacrificing performance.
Reliability
The IBEX APIs are highly available, scalable, and resilient. We have implemented load balancing, auto-scaling, and a robust observability platform to ensure our service uptime meets your business requirements.
Security
  • Access Monitoring
  • End-to-end encryption
  • Bot Detection
  • Status Monitoring
  • Anti-DDoS
  • Separate Production Environment

Regulatory-Friendly Features

Transaction Limits

Local regulations dictate the value limits on cash usage:

  1. Transaction cap
  2. Daily volume cap per user
  3. Monthly volume cap per user
Custom Money Address

Operators can easily identify and manage their users' transaction recipients, creating an accessible database to share with regulators upon request for transaction details.

Travel Rule Compliance

Integrate travel rule details—Name, Date of Birth, ID number—into custom lightning addresses for global compliant transactions.

Licenses

Bitcoin Service Provider (BSP) License
// El Salvador
Required for companies that provide Bitcoin-related services. The issuance of the BSP license is handled by the Central Reserve Bank.
Read more
Digital Asset Service Provider License (PSAD)
// El Salvador
Required for companies that provide services related to other cryptocurrencies. Registration of service providers, asset issuers, and certifying organizations is done by the National Digital Asset Commission.
Read more
> Our Partners
We’ve teamed up with the top companies in our space with the collective vision to build the financial settlement network of the future.
network of
End-Users
> How It Works

Tech Stack

Bitcoin Protocol
At its core, the Bitcoin protocol establishes a decentralized framework for peer-to-peer (P2P) transactions. It employs a public ledger, the blockchain, which guarantees the integrity of transactions through a secure and transparent mechanism.
Lightning Protocol
Built upon the Bitcoin blockchain, the Lightning Protocol introduces a second layer that enhances the system. This layer is designed to facilitate faster and cost-effective transactions, addressing the scalability challenges of the underlying Bitcoin protocol.
Access tool
As a forefront Lightning infrastructure provider, we offer efficient tools to access both the Lightning and Bitcoin protocols. Our services connect users to a global financial network capable of settling transactions in real time. To accommodate scalable growth, our infrastructure leverages horizontal scaling, asynchronous processing, and caching. This approach ensures consistent performance amidst increasing demand and provides flexible transaction limits to help our clients meet various local regulatory requirements, reinforcing our commitment to delivering scalable, regulatory-compliant financial technology solutions.
Bitcoin Protocol
At its core, the Bitcoin protocol establishes a decentralized framework for peer-to-peer (P2P) transactions. It employs a public ledger, the blockchain, which guarantees the integrity of transactions through a secure and transparent mechanism.
Lightning Protocol
Built upon the Bitcoin blockchain, the Lightning Protocol introduces a second layer that enhances the system. This layer is designed to facilitate faster and cost-effective transactions, addressing the scalability challenges of the underlying Bitcoin protocol.
Access tool
As a forefront Lightning infrastructure provider, we offer efficient tools to access both the Lightning and Bitcoin protocols. Our services connect users to a global financial network capable of settling transactions in real time. To accommodate scalable growth, our infrastructure leverages horizontal scaling, asynchronous processing, and caching. This approach ensures consistent performance amidst increasing demand and provides flexible transaction limits to help our clients meet various local regulatory requirements, reinforcing our commitment to delivering scalable, regulatory-compliant financial technology solutions.
> Insights

The Lightning Network

Routed Transactions On Lightning
The Lightning Network has seen an increase in routed transactions from August 2021 to August 2023.
An increase in routed transactions on the Lightning Network from August 2021 to August 2023 signifies multifaceted progress, underscoring significant advancements in scalability, efficiency, and adoption within Bitcoin and the Lightning Network.
Increase in Bitcoin Transactions
Increase in Bitcoin Transactions through the Lightning Network, compared to Bitcoin’s on-chain.
The Lightning Network enhances transaction speed and reduces costs by facilitating off-chain transactions through payment channels, significantly improving Bitcoin's scalability and usability for everyday payments without compromising security.
Lightning Network Volume
Estimated growth in routed Lightning transaction volume.
The estimated growth in routed Lightning transaction volume is pivotal, signifying the network's adoption, scalability, economic viability, and improved user experience, ultimately fostering innovation, investment, and enhanced security in the Bitcoin ecosystem.
Lightning Network Volume
Estimated growth in routed Lightning transaction volume
The estimated growth in routed Lightning transaction volume is pivotal, signifying the network's adoption, scalability, economic viability, and improved user experience, ultimately fostering innovation, investment, and enhanced security in the Bitcoin ecosystem.
Capacity on the Lightning Network
Transaction metrics under the volume section.
The growth in the Lightning Network's capacity, underscores its enhanced liquidity, scalability, and capability to efficiently process numerous transactions, showcasing the network's expansion, user confidence, and its significant role in driving the widespread adoption of Bitcoin for daily transactions.
Capacity on the Lightning Network
Transaction metrics under the volume section.
The growth in the Lightning Network's capacity, underscores its enhanced liquidity, scalability, and capability to efficiently process numerous transactions, showcasing the network's expansion, user confidence, and its significant role in driving the widespread adoption of Bitcoin for daily transactions.
*The Lightning Network Grew by 1212% in 2 Years