DEV Community

Cover image for BRVM Market Data: The API That Finally Exists for West Africa's Stock Exchange
SM
SM

Posted on

BRVM Market Data: The API That Finally Exists for West Africa's Stock Exchange

If you've ever tried to get programmatic access to BRVM stock data, you already know the problem. There's no Bloomberg terminal for West Africa. Yahoo Finance covers Sonatel sometimes, when it feels like it. The BRVM website itself is a manually-updated HTML page. And any developer who's gone looking for a clean, reliable API for West African equity data has come back empty-handed.

Until now.

⚠️ Update (May 2026) — access temporarily suspended. The BRVM Market Data API is currently unavailable. We're finalizing a data-redistribution licensing agreement with the BRVM so the service can operate on a fully authorized basis. This article remains online for reference; access will be restored once licensing is in place.


What Is the BRVM?

The Bourse Régionale des Valeurs Mobilières (BRVM) is the regional stock exchange serving the eight WAEMU nations: Côte d'Ivoire, Senegal, Burkina Faso, Benin, Mali, Niger, Togo, and Guinea-Bissau. It lists ~47 equities, including some of West Africa's most significant companies:

  • Sonatel (Orange's West Africa subsidiary) — Senegal
  • Ecobank Transnational — Pan-African banking
  • SOLIBRA (Heineken subsidiary) — Côte d'Ivoire
  • BOAD (West African Development Bank bonds)
  • PALMCI (palm oil) — Côte d'Ivoire

The BRVM has been operating since 1998, which means there's over 25 years of price history sitting behind a website with no API — until now.


What the API Covers

The BRVM Market Data API provides five data modes in a single actor:

1. Delayed Quotes

Current prices for all ~47 listed equities, updated with a 15-minute delay during trading hours (Mon–Fri, 09:00–15:00 GMT). Each record includes:

  • Last price, previous close, change %
  • Volume and turnover in XOF
  • Ticker, ISIN, company name, country, sector

2. Market Indices

All BRVM indices in one call: BRVM Composite, BRVM 30, BRVM Prestige, and available sector indices. Essential for anyone tracking the market at a macro level.

3. Historical OHLCV Data

Daily open/high/low/close/volume going back over 25 years for any listed equity. This is the dataset that simply didn't exist anywhere in a clean, structured format before.

4. Company Fundamentals

ISIN, sector, country, market cap, shares outstanding, and listing details for every company on the exchange.

5. Issuer Announcements

Structured access to BRVM issuer announcements — earnings releases, dividend notices, governance updates — with title, date, and direct link.


Who Is This For?

Fintech developers building for the African diaspora

There are an estimated 3 million West Africans living in Europe and North America with money to invest in their home markets. Apps like diaspora investing platforms, remittance tools with investment features, or portfolio trackers for dual-market investors all need this data — and until now had no clean way to get it.

Typical usage: Poll the quotes endpoint 2–4 times per day during trading hours. Feed results into a dashboard or push notifications for price alerts.

Quantitative researchers

West African equity markets are significantly under-researched in academic finance. Correlation with global markets, currency effects on XOF-denominated returns, sector rotation patterns — none of this has been properly studied because the data wasn't accessible. 25 years of daily OHLCV for 47 tickers is a meaningful dataset for any researcher studying frontier markets.

Typical usage: One-time historical backfill per ticker, then daily updates. A full 25-year history for all 47 tickers is roughly 430,000 rows.

AI agents and automated pipelines

Financial research agents, LLM-powered market summary tools, and automated reporting pipelines increasingly need structured data from non-standard markets. The BRVM API is compatible with any system that can call an HTTP endpoint and parse JSON — including AI frameworks like LangChain, n8n workflows, and Make automations.

Typical usage: Scheduled actor runs feeding a vector database or generating daily market briefings.

African capital market analysts

Investment banks, pension funds, and development finance institutions operating in WAEMU (AfDB, IFC, Proparco) produce research on West African equities. Their analysts currently pull data manually from the BRVM website. Structured API access saves hours per report.


A Note on Data Freshness

To be transparent: this is not a real-time feed. Data is delayed by approximately 15 minutes during trading hours, sourced from public pages on brvm.org. End-of-day snapshots are the most reliable and most commonly used data point.

If you need tick-level or sub-second data, you need a licensed direct feed from the exchange — which exists but costs significantly more and requires a commercial agreement. For the vast majority of use cases (dashboards, research, AI pipelines, alerts), 15-minute delayed data is entirely sufficient.


How to Use It

The API is available on Apify Store. You can call it via:

JavaScript:

const { ApifyClient } = require('apify-client');
const client = new ApifyClient({ token: 'YOUR_TOKEN' });

const run = await client.actor('YOUR_ACTOR_ID').call({
    mode: 'quotes'
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
Enter fullscreen mode Exit fullscreen mode

Python:

from apify_client import ApifyClient

client = ApifyClient("YOUR_TOKEN")
run = client.actor("YOUR_ACTOR_ID").call(run_input={"mode": "quotes"})

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
Enter fullscreen mode Exit fullscreen mode

curl:

curl -X POST \
  "https://api.apify.com/v2/acts/YOUR_ACTOR_ID/runs?token=YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode": "quotes"}'
Enter fullscreen mode Exit fullscreen mode

Pricing

The API uses pay-per-event pricing on Apify:

What you get Price
Full market snapshot (all ~47 quotes) $0.25 per run
Single ticker quote (filtered) $0.05 per ticker
All indices $0.10 per run
Historical OHLCV row $0.01 per row
Company fundamentals $0.10 per company
Announcement $0.01 each

A dashboard polling the full market 4× per day costs roughly $22/month. A one-time full historical backfill for a single ticker (25 years ≈ 6,500 rows) costs $65.

There's a free discovery tier for first-time users.


Why This Didn't Exist Before

The honest answer: the BRVM serves a relatively small listed universe across markets that global data vendors consider low-priority. Bloomberg, Refinitiv, and FactSet focus their engineering on exchanges with thousands of listed companies and millions of daily trades. The BRVM's 47 stocks and modest liquidity fall below their threshold for dedicated coverage.

That leaves a gap that's disproportionately painful for the people who actually need the data — African fintech developers, diaspora investors, frontier market researchers — none of whom have the budget for a Bloomberg terminal anyway.


Get Started

BRVM Market Data API on Apify Store

⚠️ Service temporarily unavailable — a data-redistribution license is being arranged with the BRVM. Access will be restored soon.

Data is sourced from public pages on brvm.org. All prices are in XOF (West African CFA franc). This API is not affiliated with or endorsed by the BRVM. Data is provided for informational purposes and is not suitable for automated trading decisions.

Top comments (0)