---
title: "Integrations - Afosto"
url: "https://docs.unified.to/integrations/afosto"
description: "Build Afosto integrations faster with our Unified API — E-Commerce data, OAuth2, real-time sync."
date: "2026-11-11T18:29:28.283Z"
updated: "2026-11-11T18:29:28.283Z"
---

# Afosto integration

> What this integration supports through the Unified.to API, by object. Live data: `GET https://api.unified.to/unified/integration?type=afosto` with your workspace API key (or Core MCP `list_unified_integrations` with `type: "afosto"`). All integrations: https://docs.unified.to/integrations.md

## Overview

- **Type:** `afosto`
- **Categories:** [E-Commerce](https://docs.unified.to/commerce/overview.md), [Accounting](https://docs.unified.to/accounting/overview.md), [Passthrough](https://docs.unified.to/passthrough/overview.md)
- **Website:** https://afosto.com
- **Vendor API docs:** https://docs.afosto.com/
- **Launched:** 2026-11-11

## How end users connect

- **OAuth2** authorization flow. Register your own OAuth2 app with the vendor and add its credentials to the integration.

## OAuth2 scopes

Pass Unified scopes in `scopes=` on the authorization URL; each one requests these vendor scopes. Request only what you need.

| Unified scope | Vendor scopes |
| --- | --- |
| `accounting_contact_read` | `all` |
| `accounting_contact_write` | `all` |
| `accounting_salesorder_read` | `all` |
| `accounting_salesorder_write` | `all` |
| `accounting_taxrate_read` | `all` |
| `commerce_collection_read` | `all` |
| `commerce_collection_write` | `all` |
| `commerce_item_read` | `all` |
| `commerce_item_write` | `all` |
| `commerce_location_read` | `all` |
| `commerce_location_write` | `all` |

## Supported objects

| Object | Methods | Webhooks |
| --- | --- | --- |
| [accounting_contact](#accounting_contact) | list, get, create, update, remove | created, updated |
| [accounting_salesorder](#accounting_salesorder) | list, get, remove | none |
| [accounting_taxrate](#accounting_taxrate) | list, get | none |
| [commerce_collection](#commerce_collection) | list, get, remove | none |
| [commerce_item](#commerce_item) | list, get, remove | none |
| [commerce_location](#commerce_location) | list, get, update, remove | none |
| [passthrough](#passthrough) | none | none |

Values below come from the integration's support data. "Required list filters" must be sent on list calls; "Required on create" fields must be sent when creating. Webhook events are `native` (pushed by the vendor) or `virtual` (polled by Unified.to). Anything not listed is not supported; an unsupported method returns `501`.

### accounting_contact

- **Methods:** `list`, `get`, `create`, `update`, `remove`
- **Webhooks:** `created` (virtual), `updated` (virtual)
- **Virtual webhook filters:** `virtual_webhook_limit`, `virtual_webhook_updated_gte`
- **List filters:** `list_limit`, `list_offset`, `list_query`, `list_updated_gte`
- **Readable fields:** `billing_address`, `created_at`, `emails`, `first_name`, `id`, `identification`, `is_customer`, `is_supplier`, `last_name`, `metadata`, `name`, `shipping_address`, `telephones`, `updated_at`
- **Writable fields:** `first_name`, `last_name`, `name`
- **Required on create:** `emails`
- **Vendor objects:** `Customer`
- **Model:** https://docs.unified.to/accounting/contact/model.md

### accounting_salesorder

- **Methods:** `list`, `get`, `remove`
- **Webhooks:** none
- **List filters:** `list_contact_id`, `list_limit`, `list_offset`, `list_query`, `list_status`
- **Readable fields:** `billing_address`, `contact_id`, `created_at`, `id`, `lineitems`, `order_number`, `paid_amount`, `posted_at`, `shipping_address`, `status`, `tax_amount`, `total_amount`, `updated_at`
- **Writable fields:** none
- **Vendor objects:** `Sale`
- **Model:** https://docs.unified.to/accounting/salesorder/model.md

### accounting_taxrate

- **Methods:** `list`, `get`
- **Webhooks:** none
- **List filters:** `list_limit`, `list_offset`
- **Readable fields:** `id`, `name`, `rate`
- **Writable fields:** none
- **Vendor objects:** `TaxClass`
- **Model:** https://docs.unified.to/accounting/taxrate/model.md

### commerce_collection

- **Methods:** `list`, `get`, `remove`
- **Webhooks:** none
- **List filters:** `list_limit`, `list_offset`
- **Readable fields:** `created_at`, `id`, `name`, `parent_id`, `updated_at`
- **Writable fields:** none
- **Vendor objects:** `Collection`
- **Model:** https://docs.unified.to/commerce/collection/model.md

### commerce_item

- **Methods:** `list`, `get`, `remove`
- **Webhooks:** none
- **List filters:** `list_collection_id`, `list_limit`, `list_offset`
- **Readable fields:** `account_id`, `collections`, `created_at`, `description`, `global_code`, `id`, `media`, `name`, `prices`, `public_description`, `total_stock`, `updated_at`, `weight`
- **Writable fields:** none
- **Vendor objects:** `Product`
- **Model:** https://docs.unified.to/commerce/item/model.md

### commerce_location

- **Methods:** `list`, `get`, `update`, `remove`
- **Webhooks:** none
- **List filters:** `list_limit`, `list_offset`
- **Readable fields:** `id`, `name`
- **Writable fields:** `name`
- **Vendor objects:** `Warehouse`
- **Model:** https://docs.unified.to/commerce/location/model.md

### passthrough

- **Methods:** none
- **Webhooks:** none
- **Readable fields:** none
- **Writable fields:** none
