# Fiscal Aggregation Overview (Mexico)

> Simplify your tax compliance and financial reporting in Mexico with our Fiscal Aggregation product. Seamlessly retrieve critical financial and tax documents from Mexico's SAT (Servicio de Administración Tributaria) to streamline your operations and meet regulatory requirements.


## Introduction

Our **Fiscal Aggregation (Mexico)** product offers a comprehensive suite of resources that integrates with Mexico's SAT (Servicio de Administración Tributaria) to automate the retrieval of critical financial and tax documents. These resources provide businesses with the tools to manage tax compliance, financial reporting, and regulatory requirements more efficiently.

Our Fiscal Aggregation (Mexico) product provides access to the following resources:

| Resource  | Description |
|  --- | --- |
| Financial Statements | Gain a comprehensive understanding of a company's financial health with our Financial Statements resource. Access detailed overviews, including balance sheets and income statements specific to Mexico. These provide a complete picture of a company's financial position and performance, covering assets, liabilities, equity, revenues, and expenses for any given year. This resource is essential for insightful financial analysis and strategic decision-making for businesses operating in Mexico. |
| Invoices | **Effortlessly retrieve and manage transaction data** with our Invoices resource. Access information directly from Mexico's SAT regarding *Facturas Electrónicas* (*CFDIs*), the official record of transactions between businesses and individuals. Each invoice provides critical details on goods or services, payments, applicable taxes, and the tax status of all parties involved, streamlining your accounting and compliance processes.SAT imposes limits on the number of invoices you can download per day. For more information, as well as potential workarounds, see our help center article.
 |
| Tax Retentions | **Simplify your compliance with tax withholding regulations** using our Tax Retentions resource. Retrieve comprehensive information from Mexico's SAT on withholdings (*retenciones*) made or received by any taxpayer (individual or business). These reports cover payments subject to tax withholding, such as those for employees, contractors, or service providers, as well as other financial transactions, ensuring accurate reporting and minimizing compliance risks. |
| Tax Returns | **Access comprehensive tax filing information** with our Tax Returns resource, providing both Yearly and Monthly tax returns (*Declaraciones Fiscales*) filed with the SAT.- **Yearly Tax Returns (*Declaración Anual*):** Obtain a complete summary of a business or individual's financial activity for the entire fiscal year, including income, expenses, deductions, and taxes owed or refundable, for accurate annual reporting.
- **Monthly Tax Returns (*Declaración Mensual*):** Stay on top of your ongoing tax obligations with detailed summaries of monthly income, VAT, payroll taxes, and other relevant taxes, ensuring timely and accurate submissions.

The data structure will be different depending on if it is a monthly or yearly tax return as well as if it is related to a person or a business (you will find examples for both in the API reference)
 |
| Tax Status | **Quickly and easily verify key taxpayer information** with our Tax Status resource. Retrieve the official *Constancia de Situación Fiscal* document directly from SAT, containing vital details about an individual or business entity, such as their Tax ID (RFC), tax regime, registered address, and economic activities. This is crucial for due diligence, onboarding, and ensuring compliance.The tax status data structure will be different depending on if it is related to a person or a business
 |
| Tax Compliance Status | **Instantly confirm the tax compliance status of individuals and businesses** using our Tax Compliance Status resource. Access the official *Opinión de Cumplimiento de Obligaciones Fiscales* document from SAT, which definitively certifies whether an entity is up to date with their tax obligations. This is essential for evaluating business partners, vendors, and ensuring regulatory adherence. |


## Available Institutions

| Name | Available Resources | MFA | Products supported |
|  --- | --- | --- | --- |
| SAT`sat_mx_fiscal` | 🟢 Financial Statements🟢 Invoices🟢 Tax retentions🟢 Tax returns🟢 Tax status🟢 Tax compliance status | Yes (for Invoices) | 🟢 Personal 🟢 Business |
| Sandbox`tatooine_mx_fiscal` | 🟢 Invoices🟢 Tax returns🟢 Tax status🟢 Tax compliance statuso | No | 🟢 Personal 🟢 Business |


## Connecting Users (Links)

In order to extract data about your users, they will need to connect their account using the Belvo API (see the integration options below). When they connect their account, we create a *link* between the user and the institution.

```mermaid
sequenceDiagram
    participant App as Application
    participant Inst as Institution

    App->>Inst: User connects to the financial institution using Belvo
    Inst-->>App: "Link" established
```

Depending on your use case, we offer two different link types:

| Link Type  | Description |
|  --- | --- |
| Recurrent | Data is automatically retrieved at a given interval (daily, weekly, monthly) and you are notified via webhook. Ideal for ongoing monitoring and up-to-date insights. |
| Single | Data is retrieved "on demand". Useful for one-time evaluations or user-initiated requests. |


For more information about link types, the refresh intervals, and what data is extracted automatically, please see our dedicated Links article.

## Integration Options

To extract fiscal data in Mexico, you can use the following integration options:

### Belvo Hosted Widget

For mobile-native and web-based applications, we've created a hosted version of our widget that significantly simplifies your development and integration process. All it requires is for you to create a webview in your application and some knowledge of handling deeplink redirects.

```mermaid
sequenceDiagram
    participant App as Application
    participant Belvo as Belvo
    participant Institution as Fiscal Institution

    App->>Belvo: POST /token/
    Note over App,Belvo: fetch_resources=[INVOICES, TAX_RETURNS ...]
    Belvo-->>App: 200 - Token Generated

    App->>Belvo: Direct your user to the Hosted Widget
    Belvo->>Institution: User logs in to their institution
    Belvo-->>App: User redirected back to your application + link generated
    
    Belvo->>Institution: Belvo retrieves historical information for the Link ID

    Note over App,Institution: For each resource listed in fetch_resources, you will<br/>receive a historical_update webhook.

    Belvo->>App: WEBHOOK: historical_update (INVOICES)
    App->>Belvo: GET /invoices/?link={id}
    Belvo-->>App: 200 + Invoice Details

    Note over App,Institution: If using recurrent links, at the scheduled refresh frequency<br/>you will receive a new_{resource}_available webhook.

    Belvo->>App: WEBHOOK: new_tax_returns_available
    App->>Belvo: GET /tax-returns/?link={link.id}
    Belvo-->>App: 200 + Tax Return Details
```

### Direct API

You can also integrate directly with our API, giving you complete control of the onboarding and credential-gathering process.

```mermaid
sequenceDiagram
    participant App as Application
    participant Belvo as Belvo
    participant Institution as Fiscal Institution

    App->>Belvo: POST /links/
    Note over App,Belvo: fetch_resources=[INVOICES, TAX_RETURNS ...]
    Belvo->>Institution: Connect and confirm the provided credentials
    Belvo-->>App: 201 - Link Created + Link ID
    
    Belvo->>Institution: Belvo retrieves historical information for the Link ID

    Note over App,Institution: For each resource listed in fetch_resources, you will<br/>receive a historical_update webhook.

    Belvo->>App: WEBHOOK: historical_update (INVOICES)
    App->>Belvo: GET /invoices/?link={id}
    Belvo-->>App: 200 + Invoice Details

    Note over App,Institution: If using recurrent links, at the scheduled refresh frequency<br/>you will receive a new_{resource}_available webhook.

    Belvo->>App: WEBHOOK: new_tax_returns_available
    App->>Belvo: GET /tax-returns/?link={link.id}
    Belvo-->>App: 200 + Tax Return Details
```