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

# Feed your finance stack from Introw

> Get commission and payout data into your ERP or accounting tool as CSV or through the API, write payment status back, and book one-off rewards from workflows or the API so they join the next payout.

Introw is the source of truth for what each partner earned; your finance stack may still be the source of truth for what was paid. This guide covers the hand-offs in both directions, with no spreadsheet in between. Export commission lines and payouts as CSV, or pull the same data through the API. Write payment status and PO numbers back when your ERP pays. Book one-off rewards from a workflow or any system, and they land in the next payout like any other line. Reach for it when you keep **Manual invoicing** as your payout method, or when you run Introw Pay and finance still wants the detail in its own system.

## What you'll achieve

Your finance system holds the commission detail for every period, in the columns it needs, with statuses that match Introw. Payouts you settle elsewhere read **Paid** in Introw and in the partner portal, with the PO number on the statement. Rewards decided outside a commission plan, a bonus for finishing onboarding or a spiff booked by an agent, arrive as normal commission lines and are paid in the next run.

## Before you start

<Steps>
  <Step title="Confirm access">
    You need read access to commissions for exports, write access to advance payouts, and an API key with the **commissions:read** or **commissions:write** scope for the API steps. See [Create and manage API keys](/features/developer/api/guides/create-and-manage-api-keys).
  </Step>

  <Step title="Know which direction you need">
    Exporting and reading need nothing else. Writing status back assumes your payout method is **Manual invoicing**; on Introw Pay the stages advance on their own once you pay the consolidated invoice.
  </Step>
</Steps>

## Steps

### Phase 1 - Export commission lines as CSV

<Steps>
  <Step title="Build a commissions report">
    Go to [Reports](https://app.introw.io/reports) and create a report with **Commissions** as its data source. Each row is one commission line, and the default columns are **Partner**, **Commission Plan**, **Amount**, **Currency**, **Status**, **Source** and **Date**. Add partner CRM properties as extra columns when your finance system keys partners on a CRM id or a supplier number. Filter on **Status** and **Date** to match the period you are booking. **Potential** is forecast on open pipeline, **Expected** is earned but not yet on a payout, **In Payout** is on a payout, **Paid** is settled and **Voided** was declined.
  </Step>

  <Step title="Export the rows">
    Open the report's **Data** tab and export the rows to CSV. Money columns carry a matching currency column so multi-currency programs import cleanly. The same tab works on any saved commissions report, so save one per period or per finance entity and re-export it each cycle. See [Export report data to CSV](/features/reporting/report-builder/guides/export-report-data-to-csv) for the export itself.
  </Step>

  <Step title="Or export straight from the Payouts page">
    For a quick pull, go to [Payouts](https://app.introw.io/commission?section=payouts) and click a metric card such as **Expected**, **Upcoming payouts**, **Total paid** or **Declined**. The dialog lists the lines behind that figure with **Partner**, **Commission item**, **Close date**, **Amount**, **Commission** and **Plan**, plus **Status** and **Description** for declined or postponed lines, and exports them to CSV named after the metric.
  </Step>
</Steps>

### Phase 2 - Read and write through the API

<Steps>
  <Step title="Read payouts and the lines behind them">
    List payouts for a period or a stage, then the commission lines on each. A payout carries the partner, the period, the amount in your company currency, its stage and the PO number. A line carries the partner, the amount and currency, the plan it came from, its status and the payout it sits on, if any. This is the same data as the CSV, without the export step, and it is how an ERP polls for new payouts to book.

    ```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
    curl "https://api.introw.io/api/v1/payouts?stage=PENDING_REVIEW" \
      -H "x-api-key: $INTROW_API_KEY"
    ```
  </Step>

  <Step title="Write status and PO numbers back">
    When your ERP approves or pays a payout, update its stage and PO number in Introw so the partner sees the same status in the portal and the statement carries the PO. Advance through **APPROVED** and **PENDING\_PAYMENT** to **PAID** as your process moves; the statement is regenerated when a PO number changes.

    ```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
    curl -X PATCH "https://api.introw.io/api/v1/payouts/{payoutId}" \
      -H "x-api-key: $INTROW_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "stage": "PAID", "poNumber": "PO-2026-Q3-0042" }'
    ```

    The full walkthrough and every stage value are in the [Commissions API](/general/commission-overview).
  </Step>
</Steps>

### Phase 3 - Book rewards along the way

<Steps>
  <Step title="From a workflow">
    Open [Workflows](https://app.introw.io/workflows) and add the **Give commission** action under **Rewards** to any trigger that marks an achievement, such as **Journey completed** or **Certificate issued**. Set **Amount**, leave **Currency** on **Partner's currency** unless the bonus is fixed in one currency, and write a **Description** the partner will read on their statement. The line is created as pending and joins the next payout batch, so it still goes through your normal review. See [Reward a partner for finishing a journey](/features/automation/workflows/guides/reward-a-finished-journey).
  </Step>

  <Step title="From any other system">
    Create a commission line through the API when the decision lives elsewhere: a spiff approved in your CRM, a bonus from a sales contest tool, or an agent acting on your rules. Give it the partner, an amount, a currency and a description; leave the payout out and it waits in the pending pool for the next batch, or pass a payout to attach it straight away. Lines created this way are labeled **Api** in the source column, so finance can tell them from plan-calculated lines.

    ```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
    curl -X POST "https://api.introw.io/api/v1/commission-lines" \
      -H "x-api-key: $INTROW_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "partnerId": "{partnerId}", "amount": "500.00", "currency": "USD", "description": "Q3 onboarding bonus" }'
    ```
  </Step>
</Steps>

## Verify it worked

Your finance system shows one row per commission line for the period, and its totals match the batch **Total** on the Payouts page. Payouts you settled elsewhere read **Paid** in Introw and in the partner portal, with the PO number printed on the statement. A reward booked from a workflow or the API appears as a pending line on the partner, then inside the next batch, with its description on the partner's statement.

## Related

<CardGroup cols={2}>
  <Card title="Run a payout cycle" icon="book-open" href="./run-a-payout-cycle">
    The batch and stages your exports and writes refer to.
  </Card>

  <Card title="Pay a payout cycle with Introw Pay" icon="book-open" href="/features/commissions/introw-pay/guides/pay-partners-with-introw-pay">
    Let Introw Pay settle the batch instead of your ERP.
  </Card>

  <Card title="Commissions API" icon="code" href="/general/commission-overview">
    Endpoints, stages and request examples.
  </Card>

  <Card title="Implementation reference" icon="screwdriver-wrench" href="../technical">
    Full configuration options.
  </Card>
</CardGroup>
