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

# External systems

> Push reviewed invoices, B/Ls, contracts, deals and hedges to your CTRM, such as Agiblocks, and let the Copilot read its reporting data.

If your firm books its contracts, deliveries, invoices and hedges in a CTRM (commodity trading and risk management system), Mercora can push the work you've reviewed into it, so nobody keys it in twice. Today the connected CTRM is **Agiblocks**. Some buttons call it by its vendor's name, Agiboo, such as **Sync to Agiboo**.

Mercora pushes only after an operator acts, such as approving a document. For example, with **Invoice sync** on, approving Kanchana Siam Sugar's invoice KSS-INV-26-0288 in the Inbox creates it in Agiblocks as a draft incoming invoice.

## The connection

The Mercora team sets up the Agiblocks connection for your workspace; there's no key to paste. Admins see its **Status** under **Settings → Integrations → Agiblocks**, and choose there which actions automations and the Copilot may take, such as **Find a contract** or **Push a supplier invoice**. Anything that writes to Agiblocks always asks first. See [Control what Mercora may do](https://docs.mercora.io/integrations/overview.md#control-what-mercora-may-do).

## Choose which pushes are on

> [!NOTE]
>
> Pushes need the **External systems sync** module, plus the switch for each kind of push below. With **External systems sync** off, no push runs. Ask your workspace admin.

| Switch | What it pushes | When |
| - | - | - |
| **Invoice sync** | A supplier invoice, as a draft incoming invoice | An operator approves it in the Inbox |
| **B/L sync** | A B/L's number, date and vessel, onto the matching delivery | An operator approves it in the Inbox |
| **Contract sync** | A contract captured from an uploaded document | An operator approves the contract document |
| **Deal Capture sync** | A recap or contract captured from email, WhatsApp, Teams or the Copilot | An operator clicks **Create contract** in [Deal capture](https://docs.mercora.io/workflows/deal-capture.md) |
| **Hedging sync** | Hedge fills, booked as futures and allocated to a position | A fill is recorded on an approved hedge. See [Hedging](https://docs.mercora.io/workflows/hedging.md) |

The operator's role also needs the matching permission: **Invoice sync**, **B/L sync** and **Contract sync** under Documents, and **External sync** under Deal Capture and under Hedging. Turning a switch off stops new pushes of that kind; a push that already reached Agiblocks can still be finished.

## Follow a push

Before you click, the card says what the push will do. If Agiblocks needs something Mercora doesn't have yet, it shows **Blocked by:** with the missing fields. After you click, the push runs in the background:

* **Syncing to Agiboo** (under **Waiting**): running.
* **Synced to Agiboo** (under **Done**): landed, with the Agiblocks reference.
* **Agiboo needs you** or **Sync failed** (under **Needs you**): fix what it says, then approve again.
* **Check Agiboo** (under **Needs you**): interrupted with no result. It may have landed, so check Agiblocks before retrying.

Mercora never retries on its own. To recover an interrupted push:

* **Invoice or B/L**: if it isn't in Agiblocks, use **Reopen for retry**.
* **Contract**: if the create was submitted but not confirmed, link the existing contract instead of creating it again. See [Deal capture](https://docs.mercora.io/workflows/deal-capture.md#push-the-deal-to-your-ctrm).
* **Hedge**: use **Retry booking** or **Retry allocation**, which check Agiblocks first, or **Mark as handled** if someone booked it by hand. See [Hedging](https://docs.mercora.io/workflows/hedging.md#hedges-in-agiblocks).

To finish in Mercora without pushing, cards offer an option such as **Skip Agiboo**.

## Agiblocks reporting for the Copilot

The Copilot can read your Agiblocks reporting data, such as contracts, deliveries, invoices, positions, hedges and the general ledger, to answer questions and build exports. It can't change anything there. For example: "Which purchase contracts did we trade this month?"

> [!NOTE]
>
> Needs the **Agiblocks reporting** module, under **Copilot**, and **Reports** access for members. An admin also switches on **Read the reporting schema** and **Query reporting data** on the Agiblocks page.

## Next steps

* [The Inbox](https://docs.mercora.io/documents/inbox.md): approve the invoices and B/Ls that push to Agiblocks.
* [Deal capture](https://docs.mercora.io/workflows/deal-capture.md#push-the-deal-to-your-ctrm): create a captured contract in Mercora and Agiblocks at once.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.