# Descargar los estados financieros de una anual

`GET https://api.fiscalisto.com/v1/sat_declarations/{id}/financial_statements`

El Excel de estados financieros de la anual de persona moral, como lo da el SAT. No usa timbres.

## Parámetros

| Nombre | Dónde | Obligatorio | Descripción |
| --- | --- | --- | --- |
| `id` | ruta | sí | El id del objeto. |

## Con el SDK de TypeScript

```ts
import { writeFile } from "node:fs/promises";
import { Fiscalisto } from "fiscalisto";

// La llave viene de FISCALISTO_API_KEY.
const fiscalisto = new Fiscalisto();

await writeFile("factura.xml", await fiscalisto.satDeclarations.financialStatements("id"));
```

## Con el SDK de Python

```python
from fiscalisto import Fiscalisto

# La llave viene de FISCALISTO_API_KEY.
fiscalisto = Fiscalisto()

with open("factura.xml", "w", encoding="utf-8") as f:
    f.write(fiscalisto.sat_declarations.financial_statements("id"))
```

## Con el SDK de PHP

```php
<?php

use Fiscalisto\Fiscalisto;

// La llave viene de FISCALISTO_API_KEY.
$fiscalisto = new Fiscalisto();

file_put_contents('factura.xml', $fiscalisto->satDeclarations->financialStatements('id'));
```

## Con el SDK de .NET

```csharp
using Fiscalisto;

// La llave viene de FISCALISTO_API_KEY.
var fiscalisto = new FiscalistoClient();

await File.WriteAllTextAsync("factura.xml", await fiscalisto.SatDeclarations.FinancialStatementsAsync("id"));
```

## Con el SDK de Go

```go
package main

import (
	"context"
	"log"
	"os"

	fiscalisto "fiscalisto.com/go"
)

func main() {
	// La llave viene de FISCALISTO_API_KEY.
	client, err := fiscalisto.NewClient("")
	if err != nil {
		log.Fatal(err)
	}
	ctx := context.Background()

	xml, err := client.SatDeclarations.FinancialStatements(ctx, "id")
	if err != nil {
		log.Fatal(err)
	}
	if err := os.WriteFile("factura.xml", []byte(xml), 0o644); err != nil {
		log.Fatal(err)
	}
}
```

## Con el SDK de Java

```java
import com.fiscalisto.FiscalistoClient;
import java.nio.file.Files;
import java.nio.file.Path;

// La llave viene de FISCALISTO_API_KEY.
var fiscalisto = new FiscalistoClient();

Files.writeString(Path.of("factura.xml"), fiscalisto.satDeclarations().financialStatements("id"));
```

## Respuesta 200

El archivo.

## Errores

Puede responder 400, 401, 403, 404, 429, 500 con el cuerpo de error de siempre; cada código está en https://fiscalisto.com/docs/api/errores.md.
