
Configuring Bling as a Source
In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Bling option from the list of connectors. Click Next and you’ll be prompted to add your access.1. Add account access
You’ll need OAuth credentials to connect to Bling. Log in with your Bling account to generate the access token. Make sure you use an account with sufficient privileges to access your Bling data. The following configurations are available:- Start Date: Records created or updated after this date will be extracted from the source.
- Lookback Window: Optional. The number of days to look back when re-fetching records based on the replication key. Leave it empty to use the connector’s per-stream defaults (a few hours for streams filtered by modification date, up to 90 days for contracts); when set, it overrides those defaults for all streams, so higher values increase run time.
2. Select streams
Choose which data streams you want to sync: you can select all streams or pick specific ones that matter most to you. The available streams include invoices (NFe, NFSe), products, sales orders, accounts payable/receivable, cash registers, stock balances, contacts, and more.Tip: The stream can be found more easily by typing its name.
If the connected Bling user lacks permission to a specific module, the connector skips the corresponding stream instead of failing the run. If a stream’s table stays empty or is not updated, verify that the user has the necessary module permissions in Bling, reconnect the account and run a new sync.
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.
Bling API only allows fetching historical data from 2025-01-01.
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.API Limitations & Performance
Understanding Sync Times
Bling uses a parent-child stream architecture for detailed data. For each parent record (e.g., a Product or Sales Order), an additional API request is made to fetch the detailed information. This means:- Products + Product Details: 1 request for the list + 1 request per product
- Product Stores + Product Store Details: 1 request for the list + 1 request per product-store link
- Sales Orders + Sales Order Details: 1 request for the list + 1 request per order
- Purchase Orders + Purchase Order Details: 1 request for the list + 1 request per order
- Contracts + Contract Details: 1 request for the list + 1 request per contract
- Commercial Proposals + Commercial Proposal Details: 1 request for the list + 1 request per proposal
- NFe + NFe Details + NFe Document: 1 request for the list + 1 request per invoice for each child stream
- NFe Purchase + NFe Purchase Details: 1 request for the list + 1 request per invoice
- NFCe + NFCe Details: 1 request for the list + 1 request per invoice
- Contacts + Contact Details: 1 request for the list + 1 request per contact
- Cash Registers + Cash Register Details: 1 request for the list + 1 request per entry
- Stock Balances: Batch requests for multiple products to optimize API usage
Tip for faster syncs: If you don’t need the detailed information, consider syncing only the parent streams (e.g.,
Products without Product Details). This significantly reduces the number of API calls and sync time.Products and Product Details streams:
- At 3 requests/second, fetching all product details alone would take approximately 55 minutes
- With 120,000 daily requests, you’re limited to syncing approximately 120,000 detailed records per day
- If you have more than 120,000 detailed records in your account, an initial sync might hit the daily limit. The connector handles this by gracefully pausing the extraction when the limit is reached and automatically resuming during the next run until all historical data is fetched.
- Start with a minimal set of streams and add more as needed
- Use incremental sync when available to reduce the number of records fetched
- Schedule full syncs during off-peak hours if you have large datasets
- Consider syncing only parent streams if detailed data isn’t required
Stream to Endpoint Mapping
Streams and Fields
Below you’ll find all available data streams from Bling and their corresponding fields:Invoices & Fiscal Documents
Contacts & CRM
Contacts
Contacts
Stream for managing contacts (customers, suppliers, partners). Supports incremental sync using modification date filter.
Contact Details
Contact Details
Stream for detailed contact information (child of Contacts).
Invoices & Fiscal Documents
NFe (Notas Fiscais Eletrônicas)
NFe (Notas Fiscais Eletrônicas)
Stream for managing electronic invoices (NFe) for products.
NFe Details
NFe Details
Stream for detailed NFe information (child of NFe stream).
NFe Document
NFe Document
Stream for retrieving the XML document content of an NFe (child of NFe stream). Supports incremental sync.
NFe records without an access key (
chaveAcesso) are skipped, as their XML document is not available in Bling.NFSe (Notas Fiscais de Serviço Eletrônicas)
NFSe (Notas Fiscais de Serviço Eletrônicas)
Stream for managing electronic service invoices (NFSe). Unlike NFe which is for products, NFSe is specifically for service-based transactions.
NFe Situation
NFe Situation
Static stream providing a mapping of NFe situation IDs to their descriptions.
NFSe Situation
NFSe Situation
Static stream providing a mapping of NFSe situation IDs to their descriptions.
Operation Types
Operation Types
Stream for managing different types of business operations (nature of operations for invoices).
Sales & Orders
Sales Orders
Sales Orders
Stream for managing sales orders. Supports incremental sync using modification date filter.
Sales Order Details
Sales Order Details
Stream for detailed sales order information (child of Sales Orders).
Products & Inventory
Products
Products
Stream for managing product catalog. Supports incremental sync using modification date filter.
Product Details
Product Details
Stream for detailed product information (child of Products).
Product Categories
Product Categories
Stream for managing product categories.
Product Stores
Product Stores
Stream for managing product-store links (produtos lojas).
Product Store Details
Product Store Details
Stream for detailed product-store link information (child of Product Stores).
Product Suppliers
Product Suppliers
Stream for retrieving product suppliers (produtos fornecedores). Extracts all suppliers linked to a product, and is extracted in full as no date filter is available.
Stock Balances
Stock Balances
Stream for retrieving current stock balances by product and deposit. This stream provides real-time inventory information across different warehouses and locations.
Financial
Accounts Receivable
Accounts Receivable
Stream for managing accounts receivable (amounts to be received).
Accounts Receivable Details
Accounts Receivable Details
Stream for detailed accounts receivable information (child of Accounts Receivable).
Borderos
Borderos
Stream for managing borderos (settlement batches with the actual receipt/payment date). This is a child stream of Accounts Receivable Details.
Boleto
Boleto
Stream for managing payment slips (boletos) associated with accounts receivable (child of Accounts Receivable). Only receivables that have a boleto link and an origin are queried.
Accounts Payable
Accounts Payable
Stream for managing accounts payable (amounts to be paid).
Accounts Payable Details
Accounts Payable Details
Stream for detailed accounts payable information (child of Accounts Payable).
Cash Registers
Cash Registers
Stream for managing cash register entries. Supports incremental sync using date filter.
Accounting Accounts
Accounting Accounts
Stream for managing accounting accounts (bank accounts, payment integrations).
Revenue Expense Categories
Revenue Expense Categories
Stream for managing revenue and expense categories.
Revenue Expense Category Details
Revenue Expense Category Details
Stream for detailed revenue/expense category information (child of Revenue Expense Categories).
Configuration
Store Categories
Store Categories
Stream for managing store categories (for e-commerce integrations).
Store Category Details
Store Category Details
Stream for detailed store category information (child of Store Categories).
Situation Modules
Situation Modules
Stream for retrieving situation modules (situações módulos).
Situations
Situations
Stream for retrieving situations per module (situações por módulo). Child stream of Situation Modules.