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

# API Connectivity: Custom System Integrations | Neoflo

> Connect any system to Neoflo using the API-first integration layer — webhooks, OAuth 2.0, and JSON/CSV/XML/PDF support for custom integrations.

Neoflo is built on an API-first architecture, which means the pre-built connectors for SAP, Salesforce, and other major platforms are built on the same foundation available to you for custom integrations. If your business runs on a proprietary ERP, an industry-specific platform, a homegrown billing system, or any other tool that exposes an API, Neoflo can integrate with it. You are not limited to the platforms listed in the pre-built connector library — the integration layer is extensible by design.

## How data flows through the API integration

Every Neoflo integration — pre-built or custom — follows the same two-sided data flow: data comes in for processing, and processed results go back out to your systems.

<CardGroup cols={2}>
  <Card title="Inbound Integration" icon="arrow-right-to-bracket">
    **Send data to Neoflo for processing.**

    Your systems push documents, transactions, and work items to Neoflo via API. This includes invoices for AP processing, bank statements for reconciliation, support tickets for triage, or any other input Neoflo needs to do its work. Inbound data can be pushed on a schedule, triggered by an event in your system, or delivered in real time as new items arrive.

    Supported inbound formats: **JSON, CSV, XML, PDF**
  </Card>

  <Card title="Outbound Integration" icon="arrow-right-from-bracket">
    **Receive processed results back in your systems.**

    When Neoflo completes a task — approving an invoice, reconciling a statement, resolving a ticket — it writes the result back to your system via API or webhook. Your records stay current without any manual intervention, and your team always has visibility into what has been processed and what is pending.

    Supported outbound formats: **JSON, CSV, XML**
  </Card>
</CardGroup>

## Webhook notifications

In addition to direct API write-backs, Neoflo can send **webhook events** to any endpoint you configure. Webhooks are ideal for triggering downstream actions in your systems the moment Neoflo completes a task or encounters an exception that needs your attention.

### Example webhook events

| Event               | Description                                                                    |
| ------------------- | ------------------------------------------------------------------------------ |
| `invoice.approved`  | An invoice has passed all validation checks and been approved for payment      |
| `invoice.exception` | An invoice requires human review — mismatch, missing PO, or duplicate detected |
| `ticket.resolved`   | A support ticket has been resolved and closed by Neoflo                        |
| `close.complete`    | A financial close task (reconciliation, journal entry) has been completed      |

### Webhook payload structure

Neoflo sends webhook payloads as JSON over HTTPS. Each payload includes the event type, a UTC timestamp, and a `data` object with the relevant record details.

```json theme={null}
{
  "event": "invoice.approved",
  "timestamp": "2025-01-15T10:30:00Z",
  "data": {
    "invoice_id": "INV-2025-001234",
    "vendor_id": "VEND-4567",
    "amount": 12500.00,
    "currency": "USD",
    "approved_by": "neoflo_ai",
    "gl_code": "5100-001",
    "payment_due_date": "2025-02-14"
  }
}
```

Your receiving endpoint should return a `2xx` HTTP status to acknowledge receipt. Neoflo retries failed deliveries with exponential backoff and alerts your integration team if a webhook endpoint becomes unreachable.

## Supported data formats

Neoflo's API integration layer accepts and produces data in the following formats, depending on the use case:

| Format | Inbound (to Neoflo) | Outbound (from Neoflo) | Typical Use Case                                                 |
| ------ | ------------------- | ---------------------- | ---------------------------------------------------------------- |
| JSON   | ✓                   | ✓                      | Structured transactions, API payloads, webhook events            |
| CSV    | ✓                   | ✓                      | Bulk data exports, bank statements, batch invoice files          |
| XML    | ✓                   | ✓                      | EDI-adjacent workflows, legacy system exchange, ERP file imports |
| PDF    | ✓                   | —                      | Document ingestion — invoices, statements, contracts             |

## Security

All API integrations with Neoflo operate under the same security standards as the pre-built connectors.

* **Authentication** — All API calls are authenticated using API keys or OAuth 2.0 tokens. Unauthenticated requests are rejected.
* **Encryption in transit** — All data exchanged over the API uses HTTPS (TLS 1.2 or higher). Unencrypted connections are not accepted.
* **Credential storage** — API keys and tokens are stored in Neoflo's encrypted credential vault and never exposed in logs, dashboards, or error messages.
* **IP allowlist** — Enterprise customers can restrict inbound API access to a specific set of approved IP addresses, adding a network-level control on top of authentication.

<Warning>
  Never share API credentials in email, chat, or support tickets. Neoflo will never ask for your API keys or OAuth secrets through these channels. Use the secure credential handoff process provided during onboarding.
</Warning>

## Getting set up

Custom API integrations are scoped and configured as part of your Neoflo onboarding. You do not need to build or maintain the integration yourself — Neoflo's integration team handles the technical setup.

<Steps>
  <Step title="Design the data flow">
    Work with your Neoflo integration engineer to map out which systems need to connect, what data Neoflo needs to receive, and where processed results should be written back. This typically takes one working session during the first week of onboarding.
  </Step>

  <Step title="Share API documentation and credentials">
    Provide your system's API documentation (or SFTP details for file-based exchange) along with the credentials needed for Neoflo to connect. Your integration engineer will specify exactly what access is required.
  </Step>

  <Step title="Configure the integration">
    Neoflo's team builds the connector, maps fields, configures webhook endpoints, and sets up error handling and retry logic tailored to your system's behavior.
  </Step>

  <Step title="Test and validate">
    End-to-end tests confirm that data flows correctly in both directions — inbound data is processed as expected, and outbound results arrive in your system in the right format and at the right time.
  </Step>

  <Step title="Go live">
    The integration is promoted to production and Neoflo begins processing real work. Your team monitors outcomes through the Neoflo dashboard and your own systems simultaneously.
  </Step>
</Steps>

<Note>
  Enterprise customers are assigned a **dedicated integration engineer** for the duration of onboarding and for any subsequent integration changes. Your integration engineer is your single point of contact for all technical setup, testing, and post-launch adjustments. Contact your Neoflo account team to confirm whether this applies to your plan.
</Note>
