App4Sales API
shop.app4sales.net/Mattisson
App4Sales (portal4sales) — B2B wholesale ordering portal. Tenant-based catalog: login, categories, product search & details, and cart operations.
- Actions
- 9
- Category
- Ecommerce
- Login
- Some actions
- Output
- JSON
Call the App4Sales API
Submit a task, then poll the job until it settles. This example runs a4s_add_items_to_cart.
curl -X POST https://api.anakin.io/v1/wire/task \
-H "X-API-Key: $ANAKIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"action_id": "a4s_add_items_to_cart",
"credential_id": "<your-credential-id>",
"params": {
"items": []
}
}'9 actions on shop.app4sales.net/Mattisson
Read
Catalog Sections
a4s_categoriesreadlogin required1 credit / callList an app4sales catalog's sections (editions), and optionally the navigation menu. An edition id can be passed to a4s_search_products / a4s_list_products to browse that section. Normalizes id + name and preserves the raw payloads.
- language
- string
- include_menu
- boolean
Full Product List
a4s_list_productsreadlogin required1 credit / callList the full product catalog with price and stock, auto-paginated across a catalog section (edition). Omit `edition` to list the tenant's all-products view. Each product carries its item_code, description, price (ex/incl VAT), VAT%, unit, package size and stock. EAN is omitted per row for speed — set include_ean to backfill it (slower), or use a4s_product_details for a single SKU's EAN. Reports total_count and a `truncated` flag if the max_pages cap is hit.
- edition
- string
- only_stock_items
- boolean
- min_price
- number
- max_price
- number
- max_pages
- integer
- include_ean
- boolean
- ean_concurrency
- integer
- language
- string
Get Cart
a4s_get_cartreadlogin required1 credit / callRead the authenticated app4sales shopping bag. Returns normalized lines (item code, description, quantity, price, line id) plus the raw payload. Line ids can be fed to a4s_add_to_cart to change quantities.
- language
- string
Matrix Variants
a4s_matrix_variantsreadlogin required1 credit / callExpand one matrix product (size/colour grid) into all its child variants, each with its own item_code and EAN plus price and stock. Give it the matrix parent's family code (e.g. '0098 1000') or its matrix_id. Matrix children are not visible in the normal product list or product-details lookup — a search returns only the parent placeholder with no EAN — so use this to get the real per-variant identifiers that add-to-cart accepts.
- item_code
- string
- matrix_id
- string
- concurrency
- integer
- language
- string
Product Details
a4s_product_detailsreadlogin required1 credit / callGet full detail plus live price and stock for one product by its item_code (e.g. 'MT3012') or EAN. Returns the complete record: price ex/incl VAT, discount, EAN, unit, package size, and stock. For a matrix CHILD code (e.g. '009810004980E') it resolves the real variant behind the parent placeholder and returns its correct item_code + EAN; to list every variant of a matrix, use a4s_matrix_variants.
- item_code
- string · required
- language
- string
Product Search
a4s_search_productsreadlogin required1 credit / callSearch or list an app4sales catalog. Pass search_text to resolve a supplier SKU / EAN / name to a live product + price (matches code, description and barcode), or edition to page through a catalog section. Returns normalized products (item_code, sales_price, stock) plus the raw item and total count for pagination.
- search_text
- string
- edition
- string
- page
- integer
- page_size
- integer
- min_price
- number
- max_price
- number
- only_stock_items
- boolean
- filters
- array
- sort_on
- string
- sort_descending
- boolean
- language
- string
Write
Write actions change state on shop.app4sales.net/Mattisson and run as the account you connect.
Add Items to Cart (batch)
a4s_add_items_to_cartwritelogin required1 credit / callAdd many products to the authenticated app4sales cart in one call. For each item it resolves the shop item code from whatever identifiers you pass (EAN preferred), adds the line, and reads the cart back to VERIFY each line landed. Pass a JSON object with an `items` array; each item may carry item_code/sku/supplier_sku/webshop_sku/article_code/ean/supplier_ean/webshop_ean plus quantity. Never places an order. Matrix variants: a child EAN/code that the catalog collapses to its parent is resolved to the real orderable child item code, so matrix products can be added.
- items
- array · required
- clear_first
- boolean
- language
- string
Add to Cart
a4s_add_to_cartwritelogin required1 credit / callAdd or set one line in the authenticated app4sales cart. The cart needs the shop item code (not an EAN/article code), so this resolves whatever identifier(s) you pass (EAN preferred) to a verified item code first, then adds. Pass an existing shopping_bag_line_id to change a line's quantity in place. Never places an order. Matrix variants: a child EAN/code that the catalog collapses to its parent is resolved to the real orderable child item code, so matrix products can be added.
- item_code
- string
- ean
- string
- codes
- array
- quantity
- integer
- instruction
- string
- order_type_name
- string
- shopping_bag_line_id
- string
- resolve
- boolean
Clear Cart
a4s_clear_cartwritelogin required1 credit / callEmpty the authenticated app4sales shopping bag — removes every line. Clears the cart only; never places or cancels an order.
App4Sales API questions
- Is there an API for App4Sales?
- App4Sales does not offer a public data API for this, but Anakin Wire provides 9 maintained endpoints for shop.app4sales.net/Mattisson. You call Anakin's REST API with an action ID and parameters and get structured JSON back; Anakin handles the browser, proxies, anti-bot, and parsing.
- How do I scrape App4Sales data?
- POST to https://api.anakin.io/v1/wire/task with your API key, the action ID, and its parameters, then poll GET /v1/wire/jobs/{id} until the job settles. There is nothing to install and no scraper to maintain — when shop.app4sales.net/Mattisson changes its markup, Anakin updates the action.
- Do I need a App4Sales account?
- Some App4Sales actions read data that is only visible when signed in, so those need a credential you connect once. Actions marked "read" without a login requirement run anonymously.
- What does the App4Sales API cost?
- Usage-based credits, charged per call and refunded automatically when a job fails. New accounts start with 300 free credits and no card. See anakin.io/pricing for the current rates.
More Ecommerce APIs
123inkt
The Netherlands' largest online store for printer ink, toner, and office supplies. Look up products, check live prices and stock, add to cart, and review your cart — one item or a large order.
Allegro
Allegro — Poland's largest online marketplace. Product search and category listings with names, prices (PLN), sellers, ratings and links.
Blue Ridge Knives
Blue Ridge Knives — US wholesale distributor of knives and outdoor gear. Sign in with your dealer account to search the range, look up a product's price, stock, UPC and full specifications, and build or empty your cart. The storefront is open to signed-in dealers only. Nothing is ever checked out — placing the order stays with you.
Dumco
Dumco B.V. — B2B wholesale webshop (dumcoshop.nl). Login, catalog browse/search/details, cart operations, and account data (orders, invoices, credit notes, backorders, wishlists).
Flipkart
Flipkart India - product search, details, reviews, pricing, and order history.
Immaya Sports Portal (EU)
Immaya Sports EU portal (portal.immayasports.nl) — login-gated B2B ordering in EUR: browse the catalog, search by SKU, read product details, and build carts. Broader assortment incl. Lock Laces.