Magalu (Magazine Luiza) is one of Brazil’s largest retail and e-commerce platforms. The Magalu Seller API provides access to your marketplace seller data including orders, deliveries, delivery invoices (NF-e), product catalog (SKUs), pricing, and inventory. This connector enables you to extract and analyze your Magalu Marketplace operations data.Documentation Index
Fetch the complete documentation index at: https://docs.nekt.com/llms.txt
Use this file to discover all available pages before exploring further.

Configuring Magalu as a Source
In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Magalu option from the list of connectors. Click Next and you’ll be prompted to add your access.1. Add account access
You’ll need to authorize Nekt to access your Magalu Seller data. Click on theMagalu Authorization button and log in with your Magalu account. Grant the necessary permissions for the seller account you want to extract data from.
The following configurations are available:
- Start Date: (Optional) Lower bound for incremental syncs (
updated_atfor Orders,issued_atfor Deliveries invoices). If omitted, records are synced from the full history available in the API. Other streams are full-table extractions relative to the tap configuration.
2. Select streams
Choose which data streams you want to sync. For faster extractions, select only the streams that are relevant to your analysis. You can select entire groups of streams or pick specific ones.Tip: The stream can be found more easily by typing its name.Select the streams and click Next.
3. Configure data streams
Customize how you want your data to appear in your catalog. Select the desired layer where the data will be placed, a folder to organize it inside the layer, a name for each table (which will effectively contain the fetched data) and the type of sync.- Layer: choose between the existing layers on your catalog. This is where you will find your new extracted tables as the extraction runs successfully.
- Folder: a folder can be created inside the selected layer to group all tables being created from this new data source.
- Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix to all tables at once and make this process faster!
- Sync Type: you can choose between INCREMENTAL and FULL_TABLE.
- Incremental: every time the extraction happens, we’ll get only the new data - which is good if, for example, you want to keep every record ever fetched.
- Full table: every time the extraction happens, we’ll get the current state of the data - which is good if, for example, you don’t want to have deleted data in your catalog.
4. Configure data source
Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can define some additional settings:- Configure Delta Log Retention and determine for how long we should store old states of this table as it gets updated. Read more about this resource here.
- Determine when to execute an Additional Full Sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while.
5. Check your new source
You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.Streams and Fields
Below you’ll find all available data streams from Magalu and their corresponding fields:SKUs
SKUs
Product catalog stream containing all SKUs (Stock Keeping Units) from your Magalu seller portfolio.Key Fields:
| Field | Type | Description |
|---|---|---|
sku | String | SKU identifier - unique code that identifies the product |
title | String | Product title or name |
description | String | Detailed product description |
brand | String | Brand name of the product |
status | String | Current status (e.g., ‘active’, ‘inactive’, ‘pending’, ‘rejected’) |
active | Boolean | Whether the SKU is currently active and available for sale |
condition | String | Product condition (e.g., ‘new’, ‘used’, ‘refurbished’) |
type | String | Product type classification |
created_at | Timestamp | When the SKU was created |
updated_at | Timestamp | When the SKU was last updated (the skus stream syncs as full table; this field is useful for change tracking) |
creator | String | User who created the SKU |
updater | String | User who last updated the SKU |
attributes | Array | Array of product attributes (name/value pairs for characteristics like Color, Size) |
datasheet | Array | Array of technical specifications (name/value pairs like Voltage, Power, Warranty) |
extra_data | Array | Array of additional custom data fields |
identifiers | Array | Array of product identifier objects (type, value) |
has_ean | Boolean | Whether the product has an EAN barcode |
group | Object | Product group information linking related SKUs/variants (id) |
categories | Array | Array of category classifications (categories, sub_categories, product_type, channel) |
channels | Array | Array of sales channels where product is available (id) |
url_marketplace | Array | Array of marketplace listing URLs (channel, url) |
dimensions | Array | Array of dimension sets (name, height, length, width, weight) |
images | Array | Array of product images (reference, type) |
videos | Array | Array of product videos (reference, type) |
podcasts | Array | Array of related podcasts (reference, type) |
fulfillment | Boolean | Whether the product uses fulfillment services |
perishable | Boolean | Whether the product is perishable |
Orders
Orders
Orders stream containing all marketplace orders with customer, payment, and delivery information.Key Fields:
| Field | Type | Description |
|---|---|---|
id | String | Unique identifier for the order |
code | String | Order code in the platform |
status | String | Order status (e.g., ‘new’, ‘approved’, ‘cancelled’, ‘finished’) |
created_at | Timestamp | When the order was created |
updated_at | Timestamp | When the order was last updated (replication key) |
approved_at | Timestamp | When the order was approved |
purchased_at | Timestamp | When the order was purchased |
channel | Object | Sales channel information (id, extras, marketplace) |
customer | Object | Customer details (name, email, document_number, customer_type, birth_date, phones) |
amounts | Object | Order totals (currency, normalizer, total, commission, discount, freight, tax) |
foreign_amounts | Object | Foreign currency amounts (currency, normalizer, total, exchange_rate) |
deliveries | Array | Array of order deliveries (id, code, status, purchased_at, seller, amounts, items, shipping) |
payments | Array | Array of payment methods (amount, currency, method, brand, description, installments, normalizer, etc.) |
Deliveries
Deliveries
Deliveries stream providing detailed shipping and fulfillment information for orders.Key Fields:
| Field | Type | Description |
|---|---|---|
id | String | Unique identifier for the delivery |
code | String | Delivery code |
status | String | Delivery status |
purchased_at | Timestamp | When the order was purchased |
order | Object | Associated order information (id, code, channel) |
seller | Object | Seller details (id, name) |
amounts | Object | Delivery totals (currency, normalizer, total, freight, discount, tax) |
items | Array | Array of items in the delivery (quantity, sequencial, measure_unit, info, unit_price, amounts) |
shipping | Object | Shipping details (tracking, recipient, drop_details, handling_time, deadline, provider) |
Deliveries invoices
Deliveries invoices
Brazilian electronic invoice (NF-e) metadata and XML for each delivery. Child stream of Deliveries.Key Fields:
| Field | Type | Description |
|---|---|---|
key | String | NF-e access key (chave de acesso); primary key for this stream |
delivery_id | String | Parent delivery identifier (from context) |
status | String | Invoice status (e.g., approved) |
issued_at | Timestamp | When the invoice was issued (ISO 8601); replication key for incremental sync |
xml | String | Full NF-e XML content |
Prices
Prices
Pricing information for each SKU per sales channel. This is a child stream of SKUs.Key Fields:
| Field | Type | Description |
|---|---|---|
sku | String | SKU identifier - unique code that identifies the product |
channel_id | String | Channel identifier where this price is valid |
created_at | Timestamp | When the price record was created |
updated_at | Timestamp | When the price was last updated |
price | Number | Current selling price of the product |
list_price | Number | List price or original price before discounts |
currency | String | Currency code (e.g., ‘BRL’) |
normalizer | Number | Price normalizer value used for price calculations |
channel | Object | Channel information (id) |
Stocks
Stocks
Stock/inventory information for each SKU per sales channel. This is a child stream of SKUs.Key Fields:
| Field | Type | Description |
|---|---|---|
sku | String | SKU identifier - unique code that identifies the product |
channel_id | String | Channel identifier where this stock is available |
created_at | Timestamp | When the stock record was created |
updated_at | Timestamp | When the stock was last updated |
quantity | Number | Available quantity of the product in stock |
type | String | Type of stock (e.g., ‘AVAILABLE’) |
Data Model
The following diagram illustrates the relationships between the core data streams in Magalu. The arrows indicate the join keys that link the different entities, providing a clear overview of the data structure.Use Cases for Data Analysis
This guide outlines valuable business intelligence use cases when consolidating Magalu Marketplace data, along with ready-to-use SQL queries that you can run on Explorer.1. Order Status Overview
Track the distribution of order statuses to understand your sales pipeline and identify potential bottlenecks. Business Value:- Monitor order fulfillment rates
- Identify issues with specific order statuses
- Track cancellation rates and reasons
SQL query
SQL query
- AWS
- GCP
Sample Result
Sample Result
| status | order_count | percentage | total_revenue | avg_order_value |
|---|---|---|---|---|
| finished | 1,245 | 62.25 | 892,340.50 | 716.74 |
| approved | 456 | 22.80 | 312,450.00 | 685.20 |
| new | 189 | 9.45 | 145,230.00 | 768.41 |
| cancelled | 110 | 5.50 | 78,560.00 | 714.18 |
2. Top Selling Products
Identify your best-performing products based on sales volume and revenue. Business Value:- Understand which products drive the most revenue
- Optimize inventory for high-demand items
- Inform marketing and promotional strategies
SQL query
SQL query
- AWS
- GCP
Sample Result
Sample Result
| sku | product_name | total_quantity | order_count | total_revenue | avg_unit_price |
|---|---|---|---|---|---|
| SKU-12345 | Smart TV 55” 4K Ultra HD | 234 | 230 | 467,532.00 | 1,998.00 |
| SKU-67890 | Smartphone Galaxy S24 | 189 | 185 | 341,811.00 | 1,809.00 |
| SKU-24680 | Notebook Gamer 16GB RAM | 78 | 75 | 312,000.00 | 4,000.00 |
| SKU-13579 | Air Fryer Digital 5.5L | 456 | 420 | 228,456.00 | 501.00 |
| SKU-11223 | Wireless Earbuds Pro | 892 | 845 | 178,400.00 | 200.00 |
3. Delivery Performance Analysis
Monitor delivery times and shipping provider performance to optimize logistics. Business Value:- Track delivery success rates
- Identify slow shipping providers
- Optimize fulfillment processes
SQL query
SQL query
- AWS
- GCP
Sample Result
Sample Result
| provider_name | total_deliveries | total_delivered | total_cancelled | delivery_success_rate | avg_deadline_days |
|---|---|---|---|---|---|
| Magalu Entregas | 1,456 | 1,389 | 42 | 95.40 | 3.2 |
| Correios | 892 | 834 | 35 | 93.50 | 5.8 |
| Jadlog | 456 | 421 | 18 | 92.32 | 4.5 |
| Total Express | 234 | 218 | 8 | 93.16 | 4.1 |
Implementation Notes
Data normalization
Magalu uses a normalizer pattern for monetary values. To get the actual value, divide by the normalizer:100for values stored as cents1for values already in the base currency unit
Order status flow
Orders in Magalu typically follow this status flow:new- Order just placedapproved- Payment confirmedinvoiced- Invoice generatedshipped- Order dispatcheddelivered- Order delivered to customerfinished- Order completed
cancelled- Order was cancelledreturned- Customer returned the order
Brazilian context
This connector is designed for the Brazilian marketplace:- Currency: Values are in BRL (Brazilian Real)
- Documents: Customer documents are CPF (individuals) or CNPJ (companies)
- Addresses: Brazilian address format with CEP (postal code), state abbreviations
- Shipping: Includes Brazilian carriers like Correios, Jadlog, and Magalu’s own logistics
Incremental sync and replication keys
- Orders and Deliveries invoices: Incremental when configured. Orders uses
updated_atand Deliveries invoices usesissued_atas the replication key (API requests include date filters from bookmark or Start Date). - SKUs, Deliveries, Prices, Stocks: Full table sync in the tap (no replication key on those streams). Start Date still applies where the shared client passes date filters only for streams that define a replication key.
Child streams and API volume
- Prices and Stocks are children of SKUs: one extra API request per SKU per stream when enabled.
- Deliveries invoices is a child of Deliveries: one extra API request per delivery when enabled. Includes paginated extraction to safely fetch high volumes.
Nested data structures
Magalu payloads are deeply nested. When querying:- Use
UNNEST(orCROSS JOIN UNNESTin Athena) to flatten arrays - Access nested objects using dot notation (e.g.,
customer.name) - Handle NULL values in nested fields with
COALESCE
Skills for agents
Download Magalu skills file
Magalu connector documentation as plain markdown, for use in AI agent contexts.