Checkers API

Every Checkers price, Xtra Savings deal and stock count, address by address

Checkers is one of South Africa's largest grocery chains and its Sixty60 shop prices every product for the store that delivers to your address: on the same day a 6 x 1 L full cream milk was R97.99 for Cape Town, R99.99 for Durban and R104.99 for Pretoria, and a search for "milk" returned 105, 135 and 134 products.

no credit card1,000 free credits · instant API key · pay by card or crypto
Missing a Checkers endpoint, or need a source we don't have yet?Contact us real people · same-day reply.
C
/checkers/v1

5 active endpoints, on 2 and 3 credit tiers.

  • POST/checkers/v1/search
  • POST/checkers/v1/promotions
  • POST/checkers/v1/product
  • POST/checkers/v1/categories
  • POST/checkers/v1/stores

What Checkers endpoints does ReefAPI ship?

5 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.

5 endpoints

search

3 cr

Search the Checkers Sixty60 (or Shoprite) shop for one delivery address.

required
—
optional
query, category_id, barcode, latitude, longitude, site, page, page_size, sort, brand, on_promotion

promotions

3 cr

Only the products on a deal for one delivery address.

required
—
optional
query, category_id, latitude, longitude, site, page, page_size, sort, brand

product

2 cr

One product for one delivery address by the product_id a search row returns (article number +…

required
product_id
optional
latitude, longitude, site

categories

2 cr

The shop's category tree (33 departments, 3 levels) with the ids search takes as category_id.

required
—
optional
category_id, site

stores

2 cr

Physical stores of the Shoprite group near a point (Checkers, Checkers Hyper, Checkers FX, Sh…

required
latitude, longitude
optional
radius_km, limit, brand, site

Every parameter, every allowed value →

Checkers API

4 of 5 endpoints, ready to run

View docs ↗

Milk prices for a Durban address

3 credits0 required · 3 optional
POST/checkers/v1/search
idle
// Press "Try it" and this pane shows exactly what the
// live site returned this second — including an empty
// result, if that is the truth. No key, no account.

How the Checkers API works

Checkers is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.

01
Authenticate
x-api-key header

No OAuth app, no request signing, no per-site account. One key covers all 530 engines.

02
Call
POST /checkers/v1/…

Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.

03
Pay
2 or 3 credits per call

Credits, not seats. Failed and blocked calls are never charged, and cache hits cost nothing.

04
Read
{ ok, data, meta, error }

One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.

From an address to a priced basket with every deal

Give the delivery address, search the shop, then read the products and deals that matter.

01search?query=milk&latitude=-29.8587&longitude=31.0218
GET/checkers/v1/search?query=milk&latitude=-29.8587&longitude=31.0218

The products the Durban delivery store sells, with shelf price, was-price, Xtra Savings price, multi-buy, price per kg, stock on hand, brand and barcodes.

02product?product_id=10413121EA&latitude=-29.8587&longitude=31.0218
GET/checkers/v1/product?product_id=10413121EA&latitude=-29.8587&longitude=31.0218

The full record for that address: every offer with dates, stock, barcodes, description and the attributes the site prints.

03promotions?category_id=67075e27ff987811364007a9&latitude=-29.8587&longitude=31.0218
GET/checkers/v1/promotions?category_id=67075e27ff987811364007a9&latitude=-29.8587&longitude=31.0218

Everything on a deal in Milk, Dairy & Eggs for that address.

04categories
GET/checkers/v1/categories

The 33 departments and their sub-categories with the ids search takes.

An address-specific South African grocery price and deal feed with Xtra Savings prices kept apart from shelf prices.

request
curl -X POST https://api.reefapi.com/checkers/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"milk","latitude":-33.9249,"longitude":18.4241}'
response envelope
{
  "ok": true,
  "data": { … },
  "meta": {
    "api": "checkers",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": …,
    "record_count": …
  },
  "error": null
}

What a Checkers field actually contains

Fields that read differently from how they look. Every row was measured against live responses on 2026-10-15.

FieldWhat it holds
store_id, store_defaultedThe store the prices and stock belong to. With an address it is the store that delivers there (a 60-minute store and a next-day store can both appear, so each row also carries its own store_id). store_defaulted is true when you did not pass an address.
priceThe shelf price anyone pays, in rand. For goods sold by weight (unit KG) it is the price per kg and price_unit is "kg"; weight_range_g gives the pack weight range, for example 1,100 g to 1,300 g.
member_priceThe Xtra Savings card price, never the shelf price: Clover Fresh Full Cream Milk 2 L showed price 37.99 and member_price 29.99. member_price_basis says whether the shop states it ("Now R29.99") or it is worked out from a "Save R5" or "Save 25%" offer. null when there is no card price.
multi_buyAn Xtra Savings bulk deal apart from the single price, for example "Buy 3 For R225" on beer: quantity 3, price 225.00, card_required true.
promotionsEvery offer on the product with its text, type (fixed price, amount off, percent off, other), value, who it is for and its start and end time.
original_price, savingsThe was-price and the saving, only when the shop's previous price is above today's price (4 of 528 search rows). null otherwise; on_promotion still tells you when the shop flags the product as on promotion.
stock_on_hand, in_stockThe stock count the delivering store reports and whether the product can be ordered (528 of 528 rows carried both).
product_idArticle number plus unit, exactly as the product page address ends: 10156094EA is a 1 L carton, 10156094PK1 the 6 x 1 L pack of the same article.
categoriesThe department path of the product ("Milk, Dairy & Eggs" > "Milk & Cream" > "Milk"); ids come from the categories call.

Checkers does not publish a price per 100 g or 100 ml on its online shop, so none is returned; goods sold by weight carry their price per kg. Search results carry no review counts.

Checkers coverage, measured

Every number below was read from live responses on 2026-10-15: 22 searches across the default store, Cape Town, Durban and Pretoria and the Shoprite shop, 24 products read both from search and on their own, deals, categories and stores, in two separate runs.

Address matters

6 x 1 L full cream milk: R97.99 (Cape Town), R99.99 (Durban), R104.99 (Pretoria) the same day. "milk": 105, 135 and 134 products; "cheese": 194, 149 and 185.

Price accuracy

Price, barcode, brand and availability matched the product page in 31 of 32 checks over two runs (the other page did not load on that try and matched when read again); search row and product record agreed on price, Xtra Savings price, multi-buy and stock for 20 of 20 products (plain, multipack, by weight, card price and multi-buy rows).

Deals

50 of 528 search rows carried an Xtra Savings price and 14 an Xtra Savings multi-buy; 4 had a was-price.

Catalogue

33 departments and 786 categories. Search counts on the default store: milk 110, bread 122, coffee 199, rice 154, beer 261.

Speed

Median 1.9 s per search and 1.2 to 1.5 s per product call over two runs; slowest search 4.6 s.

Limits

One address per call; 24 rows per page (up to 48); search is fuzzy, so a nonsense word still returns loose matches; with a search term the category filter takes top-level departments only; no price per 100 g or 100 ml; no review counts; personal Xtra Savings offers that need a login are not included.

What people build with Checkers

The jobs this data is most often used for.

5

endpoints

2/3

credits per call

01

Compare Checkers grocery prices between South African cities and suburbs.

02

Track Xtra Savings prices and multi-buys on the products you watch.

03

Check stock on hand at the store that delivers to an address before sending a shopper.

04

Build a South African grocery product database with barcodes, brands and categories.

What Checkers data costs

The cheapest call here is 2 credits, so $15/mo (Pro) buys 5,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.

Full pricing →
$0.67–$1.50 / 1,000 credits
  • 1,000 free credits on signup, no card
  • One key, all 530 APIs, one credit pool
  • Failed and blocked calls are never charged
  • Credits roll over and never expire

Call it in two lines

Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.

curl
curl -X POST https://api.reefapi.com/checkers/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"milk","latitude":-33.9249,"longitude":18.4241}'
python
import requests

r = requests.post(
    "https://api.reefapi.com/checkers/v1/search",
    headers={"x-api-key": REEF_KEY},
    json={
  "query": "milk",
  "latitude": -33.9249,
  "longitude": 18.4241
},
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up Checkers.

Get a free key →
Do I need a Checkers or Xtra Savings account?▾

No. Everything is read logged out: the prices, Xtra Savings prices, deals and stock any visitor sees for a delivery address. Personal Xtra Savings offers that need a login are not included.

Is the Xtra Savings price the price I get?▾

Only with the card. price is what anyone pays; member_price is the Xtra Savings card price. On 2026-10-15, 50 of 528 search rows carried a card price and 14 an Xtra Savings multi-buy.

Why does the price depend on the address?▾

Because the shop prices, stocks and ranges products per delivering store: the same 6 x 1 L milk was R97.99, R99.99 and R104.99 for Cape Town, Durban and Pretoria on the same day. Pass latitude and longitude; without them the shop's default store is used and the answer says so.

What about Shoprite?▾

shoprite.co.za runs on the same platform: pass site=shoprite. Its catalogue answers from the Shoprite shop's own default store ("milk": 85 products). For delivery addresses the source says Checkers Sixty60 serves them (5 of 5 cities measured), so an address with site=shoprite returns a clear not-found answer telling you to use site=checkers.

Which filters and sorts work?▾

Sort by relevance, price or name; filter by brand, top-level department and deals only. Each was checked against the unfiltered count for "milk" in Cape Town (105): Clover 29, Milk, Dairy & Eggs 23, deals only 14; "cheese" 194, deals only 14. Brand names match exactly as a row's brand field spells them.

Can I look a product up by barcode?▾

Yes: search with barcode returns the product carrying that EAN, for example 6001299016158 for Clover Fresh Full Cream Milk 2 L.

How many products per page?▾

24 by default, up to 48. Three pages in a row returned 72 different products. Past the last page the answer is an empty page with a note.

How fresh is the data?▾

Every call reads the shop live; nothing is cached. Offers carry their own start and end times.

What is the Checkers API?▾

Checkers API is a ReefAPI endpoint group for south african grocery prices from checkers sixty60 and shoprite: price in rand, xtra savings price, multi-buys, stock on hand and product facts per delivery address. It returns live JSON through POST requests under /checkers/v1.

Is the Checkers API free to try?▾

Yes. ReefAPI starts with 1,000 free credits, no card required. Checkers calls use the same shared credit balance as every other ReefAPI engine.

Do I need a Checkers login or account?▾

No login to Checkers is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the Checkers data?▾

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the Checkers API use?▾

Checkers actions currently cost 2-3 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call Checkers from an AI assistant or MCP client?▾

Yes. Connect ReefAPI once through MCP and your assistant can call checkers actions with the same key, credit pool and JSON envelope used by normal REST requests.

Need something this API does not do?

Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.

0/4000

No account needed · we reply from [email protected]

Try it on your own data before you pay anything

The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 529 APIs, and the same envelope everywhere.

Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts. Field notes were captured on 2026-10-15.