---
title: "How to Handle Attachments in Invoice, Bill and Credit Memo"
img: https://s3.us-east-2.amazonaws.com/unified-article-images/how_to_handle_attachments_in_invoice_bill_and_credit_memo-icon.png
date: 2025-08-05T00:00:00.000Z
tag: Guides
description: "Unified.to provides a standardized way to read, upload, and manage attachments (e.g., invoices, receipts, contracts) across various integrations like..."
url: "https://docs.unified.to/guides/how_to_handle_attachments_in_invoice_bill_and_credit_memo"
---

# How to Handle Attachments in Invoice, Bill and Credit Memo
------
_August 5, 2025_

Unified.to provides a standardized way to read, upload, and manage attachments (e.g., invoices, receipts, contracts) across various integrations like accounting, CRM, and etc platforms. Here's everything you need to know to get started with attachments via the `Storage File` endpoint.


---


### 🔍 How to Check If an Integration Supports Attachments


To check if a specific integration supports reading or writing attachments:

1. **Go to the Integration Page** in the Unified.to dashboard.
2. Navigate to **Feature Support**.
3. Select the relevant **endpoint** (e.g., `Accounting → Invoice`).
4. Look under **Readable Fields** — if `attachments` is listed, the endpoint supports reading attachments.

🛠️ **Tip:** You can also check support programmatically using the `/storage` endpoint.


---


### 📂 How to List All Attachments


To fetch all available attachments across an integration:

- Use the `GET /storage` (Storage File List) endpoint.

⚠️ **Note:** Most integrations **do not support** listing all attachments globally. Unified.to reflects this limitation. However, some integrations like **Sage** _do_ support it.


---


### 📌 How to Fetch Attachments for a Specific Record (e.g., Invoice)


To get attachments for a specific entity like an invoice, bill, or candidate:

- Use the `GET /storage` endpoint.
- Pass the corresponding `parent_id` (e.g., `invoice_id`) in the query parameters.

Example:


```plain text
http
CopyEdit
GET /storage-file?parent_id=inv_1234
```


---


### 🧾 How to Get Details of a Specific Attachment


To retrieve metadata (name, file type, size, etc.) of a particular attachment:

- Use either:
    - `GET /storage/:id` — to get a single attachment
    - `GET /storage` — to filter and retrieve multiple files with query params

---


### 📥 How to Download an Attachment


We return a secure `download_url` in the response when you fetch an attachment. You can use this URL to download the file directly.


⚠️ **Note:** The `download_url` is **time-limited** and expires after a few minutes for security reasons. Always use the URL shortly after fetching.


---


### 📤 How to Upload or Create an Attachment


To upload a new attachment:

1. Go to the **Integration Page** and confirm the `storage-file` endpoint is supported under Feature Support.
2. Use the `POST /storage-file` endpoint with required fields.

Key fields:

- `name`
- `data` (base64 encoded) | `download_url`
- `parent_id` (e.g., `invoice_id`, `bill_id`, `employee_id`)

Unified.to will automatically associate the attachment with the parent entity.


Example payload:


```json
json
CopyEdit
{
  "file_name": "invoice-august.pdf",
  "file_data": "base64-encoded-data",
  "parent_id": "inv_1234"
}
```


---


### 🧷 How to Associate an Attachment with an Entity


When uploading a file, simply set the `parent_id` to the ID of the resource (invoice, bill, employee, etc.). Unified.to handles the rest — no extra linking needed.


---


### 💬 Questions or Requests?

- If you're unsure whether an integration supports attachments for a specific resource type, reach out to our support team.
- If a feature isn't currently supported, let us know! We're always looking to expand support where possible.