# Import my file

Once your billing file is correctly structured, you can import it into Fincome to automatically populate your key metrics: MRR, ARR, churn, revenue recognition, etc.

## 1. Available import methods

### Option A — Excel file (.xlsx)

1. Download the Excel template from Fincome: **Settings → Connect a billing system → Import a .xlsx file**
2. Fill the file with your billing data according to the rules seen in [Prepare your import file](/help-center/en/guide/sources/import-a-billing-file/prepare-my-file.md).
3. Import your file directly `.xlsx` into Fincome. Be sure to fill in the "Import end date \*" with the last invoice issue date (i.e. the date from the "date" column that is closest to today).&#x20;

{% hint style="info" %}
**Tip** : start with a test of 5 to 10 rows to validate the format before importing your entire history.
{% endhint %}

#### Option B — Google Sheet (recommended if < 100,000 rows)

{% @guideflow/guideflow-embed requestedUrl="<https://app.guideflow.com/player/5pvylxswpn>" %}

1. Import the template into your Google account: **Settings → Connect a billing system → Sync a Google Sheet document.**&#x20;
2. Fill the file with your billing data according to the rules seen in [Prepare your import file](/help-center/en/guide/sources/import-a-billing-file/prepare-my-file.md).
3. You can check your file with the "Check file" button.
4. Share the file, read-only, with our Fincome account: <fincome-ggsheet-connector-prod@fincome-ggsheet-connector-prod.iam.gserviceaccount.com>
5. Paste the link on the Fincome page

{% hint style="info" %}
On first launch, an authorization will be requested:<br>

<img src="https://storage.crisp.chat/users/helpdesk/website/620ea71851239000/authgsheet_d6w5a9.png" alt="" data-size="original">
{% endhint %}

### 2. Upload the file to Fincome

{% @guideflow/guideflow-embed requestedUrl="<https://app.guideflow.com/player/9r2y14daok>" %}

1. Log in to Fincome then go to:\
   **Settings → Connect a billing system → Import a .xlsx file**
2. Name the **source** (e.g. “History 2023” or “Additional Stripe import”).
3. Select the **import end date**.
4. Upload your Excel file.
5. Fincome automatically analyzes the structure and validates compliance.
6. In case of an error, a precise message is displayed with the affected rows and fields to facilitate correction.

### 3. Troubleshooting: common errors

| Error message                                 | Interpretation                                                          | Solution                                                       |
| --------------------------------------------- | ----------------------------------------------------------------------- | -------------------------------------------------------------- |
| **Inconsistent customer/invoice information** | The same ID (`invoice_id`, `customer_id`) contains different attributes | Harmonize the fields across all affected rows                  |
| **Invalid type**                              | Unrecognized value in the column `type`                                 | Use only `subscription`, `one_off` or `future_sub`             |
| **Invalid period**                            | `period_start` ≥ `period_end` or dates in text format                   | Check the Excel format and chronological order                 |
| **Invalid status**                            | Invoice or subscription status not allowed                              | Correct according to accepted values (`open`, `paid`, etc.)    |
| **Rejected dates**                            | Values not recognized as Excel dates                                    | Convert the column back to type **Date (DD/MM/YYYY)**          |
| **Non-numeric amount**                        | Cells containing text instead of a number                               | Reformat the column as **Number**, without thousands separator |

> 💡 **Advice** : to quickly identify a problem, test with a mini-file of 3 to 5 rows before reimporting the whole dataset.

***

### 4. Post-import checks

Once the file is imported and validated, you can verify data consistency:

1. **Compare your metrics before/after import:** MRR, ARR, churn, total revenue.
2. **Open the Revenue dashboard** to distinguish one-off revenue from recurring revenue.&#x20;
3. **Explore the “MRR Movements” section** to analyze upsells, churns, or potential errors.
4. If needed, adjust lines directly in Fincome (see Adjust and correct invoice lines).

{% hint style="info" %}
You can follow [these steps](/help-center/en/avancees/required-step-data-scoping.md).&#x20;
{% endhint %}

### 5. FAQ — Import and validation

**→ How to avoid duplicates when re-importing?**\
Use **stable identifiers** (`customer_id`, `subscription_id`, `invoice_id`).\
To correct lines already imported, re-import the same file with the updated fields: Fincome will automatically replace the existing data.\
You can also delete the previous dataset, complete it and re-import it.

***

**→ Can we simulate the import before applying it in production?**\
Yes. Import a **test file** with a few rows: you can then delete it without impact.\
A **sample template** is available in **Settings → Connect a billing system → Import a .xlsx file**, then click on **Download the template**.

***

**→ Who can perform an import and where to find the full documentation?**\
Only **Fincome administrators** have import rights.\
If the menu does not appear, contact your instance administrator or your CSM.

***

**→ How are our data secured during import?**\
Exchanges are protected by **encrypted connections in transit and at rest**.\
No data is shared with third parties without your consent.\
These guarantees are part of our security framework validated by the **SOC II Type 1**.

***

**→ What to do if the tool reports “Invalid period” while my dates seem correct?**\
Check:

* That the **cell format** is set to “Date” (not text);
* That no **space or stray character** is present;
* That `period_start` is **earlier than `period_end`** ;
* That the time zones of your exports have not shifted the dates (a common case with timestamps).

***

**→ Can CARR/CMRR be tracked according to discount end dates or pricing tiers?**\
Yes. Fincome supports tracking of **ramp-up tiers** and **discount end dates**.\
Just ensure that periods are correctly segmented in your subscription lines.

***

**→ After import, how do I ensure the numbers are consistent?**\
From your Fincome space:

* Compare the **total MRR/ARR** before/after import,
* Check the **breakdown by customer, plan and currency**,
* Consult the **MRR Movements** section to detect possible inconsistencies (churns, plan upgrades, etc.).

***

### 6. Related articles

* [Prepare your import file](https://help.fincome.co/guide/sources/importer-un-fichier-de-facturation)
* [Connect and enrich your data via the Fincome API](https://help.fincome.co/guide/connecter-et-enrichir-ses-donnees-de-facturation-via-lapi-fincome)
* [Frame your revenue and your MRR – ARR](https://help.fincome.co/avancees/cadrage-des-revenus-et-du-mrr-arr)
* [Using filters and breakdowns in Fincome](https://help.fincome.co/conduite-danalyses-approfondies/utiliser-les-filtres-et-la-decomposition-dans-fincome)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://fincome.gitbook.io/help-center/en/guide/sources/import-a-billing-file/import-my-file.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
