> ## Documentation Index
> Fetch the complete documentation index at: https://docs-mx.taxo.ws/llms.txt
> Use this file to discover all available pages before exploring further.

# Taxo API

> Automate the extraction of tax documents from SAT with our enterprise API

<Note>
  The Taxo API is designed for companies that need to automate the bulk download of invoices, tax status certificates, and tax retentions from SAT.
</Note>

## What is the Taxo API?

The Taxo API allows companies to integrate automated extraction of Mexican tax documents directly into their systems. With our API you can:

<CardGroup cols={3}>
  <Card title="Facturas (CFDI)" icon="file-invoice-dollar">
    Extract issued and received invoices in XML and PDF format
  </Card>

  <Card title="Constancias Fiscales" icon="certificate">
    Download updated tax status certificates
  </Card>

  <Card title="Retenciones" icon="receipt">
    Obtain tax retention documents
  </Card>
</CardGroup>

## Key features

<Icon icon="bolt" /> **Fast processing**
Parallel extraction of thousands of documents in minutes

<Icon icon="webhook" /> **Real-time webhooks**
Instant notifications when documents are ready

<Icon icon="chart-line" /> **High availability**
99.9% guaranteed uptime with enterprise SLA

## Use cases

<AccordionGroup>
  <Accordion title="Accounting automation" icon="calculator">
    Integrate automatic invoice downloading into your ERP or accounting system to eliminate manual processes and reduce errors.
  </Accordion>

  <Accordion title="Audit and compliance" icon="clipboard-check">
    Maintain a complete backup of all tax documents for internal and external audits.
  </Accordion>

  <Accordion title="Expense analysis" icon="chart-pie">
    Automatically process received invoices for expense analysis and cost optimization.
  </Accordion>

  <Accordion title="Vendor portals" icon="users">
    Allow your vendors to upload their invoices automatically through SAT integration.
  </Accordion>
</AccordionGroup>

## Job-Based Processing

All document extractions in Taxo are processed as **jobs**. When you create an extraction request, the system:

1. Creates a unique job with a `publicId` (e.g., "JOB20250104123456789A")
2. Processes the extraction asynchronously in the background
3. Allows you to track progress and get results using the job's `publicId`

Each job represents a single extraction request for a specific taxpayer, information type, and time period.

## Workflow

<Steps>
  <Step title="Authentication">
    Get your API key from the dashboard and configure authentication
  </Step>

  <Step title="Create Extraction Job">
    Send SAT credentials and search filters. You receive a job `publicId`
  </Step>

  <Step title="Asynchronous Processing">
    The API validates credentials and extracts documents from SAT in the background
  </Step>

  <Step title="Job Monitoring">
    Query the job status using the `publicId` until it completes
  </Step>

  <Step title="Notification (Optional)">
    Receive a webhook when documents are ready
  </Step>

  <Step title="Download">
    Download individual documents using the job's `publicId`
  </Step>
</Steps>

## Get started

<CardGroup cols={2}>
  <Card title="Quick start" icon="rocket" href="/api-reference/taxo-b2b/quickstart">
    Perform your first extraction in less than 5 minutes
  </Card>

  <Card title="API Reference" icon="code" href="/api-reference/taxo-b2b/endpoints/create-extraction">
    Explore all available endpoints
  </Card>
</CardGroup>

## Support

<Card>
  <Icon icon="headset" size={32} />

  **Need help?**

  * Email: [api-support@taxo.co](mailto:api-support@taxo.co)
  * Documentation: [docs.taxo.co/api](https://docs.taxo.co/api)
  * Service status: [status.taxo.co](https://status.taxo.co)
</Card>
