---
title: "Enable automatic payouts"
description: "Resume scheduled settlements and restore predictable cashflow with automatic payouts."
canonical: "https://studio.inttegro.com/guides/enable-automatic-payouts"
format: inttegro-machine-docs/v1
language: "C#"
sdk_version: "v10.3.0"
reader_profile: optional
reader_manifest: "https://studio.inttegro.com/machine/csharp/readers/index.json"
reader_identification: "Optional: declare your client only if known and your current-session capabilities; use reader_manifest for supplemental recommendations."
preamble_estimated_tokens: 540
model_token_report: "https://studio.inttegro.com/machine/token-report.json"
preamble_questions: 5
preamble_source: "curated"
recommended_mcp_tools: ["get_payout_settings","list_payouts","get_payout"]
estimated_tokens: 2928
token_estimate_method: "utf8_bytes_divided_by_4"
---

## Machine preamble

**Summary:** Restore scheduled payout creation only after checking per-currency destinations and eligible funds, then observe the first cycle and reconcile actual payout records.

### Five questions

#### Q1. What should be checked before enabling?

Read [current settings](https://studio.inttegro.com/machine/csharp/api/payouts.md#get-payout-settings), validate a same-currency active destination for each intended currency, and check recent manual/open payouts and eligible balance transactions. The mode change does not cure missing routing.

#### Q2. Which operation changes the mode?

Use [Enable automatic payouts](https://studio.inttegro.com/machine/csharp/api/payouts.md#enable-automatic-payouts) from a trusted backend, then read settings again to confirm automatic mode. The current MCP [get_payout_settings](https://studio.inttegro.com/machine/csharp/inttegro-mcp/tools.md#get_payout_settings) tool only reads.

#### Q3. Does enabling immediately transfer the whole balance?

No. The configured weekly cycle creates payouts when aged, unclaimed transactions and destinations are eligible. Mode changes who schedules payouts, not the eligibility rule; see [Payouts](https://studio.inttegro.com/machine/csharp/products/payouts.md#automatic-vs-manual-mode).

#### Q4. How should the first cycle be verified?

Use [page through payouts](https://studio.inttegro.com/machine/csharp/api/payouts.md#page-through-payouts) to find created records and [lookup](https://studio.inttegro.com/machine/csharp/api/payouts.md#lookup-a-payout) for current amount, status, destination, and source transactions. A successful enable response is not a succeeded payout.

#### Q5. Which MCP checks are useful afterward?

An authenticated client may use [get_payout_settings](https://studio.inttegro.com/machine/csharp/inttegro-mcp/tools.md#get_payout_settings) and [list_payouts](https://studio.inttegro.com/machine/csharp/inttegro-mcp/tools.md#list_payouts) for review, then [get_payout](https://studio.inttegro.com/machine/csharp/inttegro-mcp/tools.md#get_payout) for a specific record. The catalog does not enable automatic payouts or move money.

## Document content

# Enable automatic payouts

Switch from manual to automatic payout mode to restore scheduled weekly settlements. This guide walks you through enabling automatic payouts, verifying your configuration, and monitoring the first automatic payout cycle.

> Mcp Guide Callout is interactive content. Use the canonical page to view it.

For complete details on automatic vs. manual payout modes, see [Payouts product documentation](https://studio.inttegro.com/machine/csharp/products/payouts.md#automatic-vs-manual-mode).

## When to enable automatic mode

Enable automatic payouts when you're ready to restore hands-off settlement flows:

- **After financial reconciliation** — Month-end close or audit complete
- **After testing** — New destinations validated with manual payouts
- **Manual control burden** — Tired of remembering to trigger payouts weekly
- **Cashflow stabilized** — Balance reached steady state after uncertain period
- **Destination issues resolved** — New account connected and verified

See the [Payouts product documentation](https://studio.inttegro.com/machine/csharp/products/payouts.md#automatic-vs-manual-mode) for detailed explanations of when to use each mode.

## Prerequisites

Before enabling automatic payouts:

### 1. Verify destinations are configured

Automatic payouts require configured destinations for each currency you accept.

**Check payout settings — POST /payouts/settings**

```csharp
using Inttegro;

using var inttegro = new InttegroClient(
    Environment.GetEnvironmentVariable("INTTEGRO_API_KEY")!
);
var result = await inttegro.Payouts.SettingsAsync();
```

```json
{
  "settings": {
    "schedule": {
      "name": "manual",
      "type": "manual",
      "interval": "manual",
      "schedule_on": "manual",
      "aging_spec": {
        "t_plus": "168h",
        "label": "168_hours",
        "abide": "strictly"
      },
      "description": "Manual payout"
    },
    "destinations": {
      "ghs": "fa_Q90wZdd2P7W8hJ1cN9Mx4Rk5sVWBvY3L6pTz8q0"
    }
  }
}
```

If [`Destinations`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.PayoutSettingsMutation.html) is empty or missing currencies, use `/payouts/set_destinations` to configure them. See [Manage payout destinations](https://studio.inttegro.com/machine/csharp/guides/manage-payout-destinations.md).

### 2. Understand the weekly schedule

Automatic payouts run every Sunday at midnight UTC. Funds arrive Monday (mobile money) or Tuesday-Wednesday (bank transfers). See [Payout schedules](https://studio.inttegro.com/machine/csharp/products/payouts.md#our-current-schedules) for details.

### 3. Check current mode

If [`Schedule.Type`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.PayoutSettingsMutation.html) is already `"automatic"`, you're already in automatic mode—no action needed.

## Enable automatic payouts

Switching to automatic mode is a single API call with an empty JSON object:

**Enable automatic payouts — POST /payouts/enable**

```csharp
using Inttegro;

using var inttegro = new InttegroClient(
    Environment.GetEnvironmentVariable("INTTEGRO_API_KEY")!
);
var result = await inttegro.Payouts.EnableAutomaticAsync();
```

```json
{
  "settings": {
    "schedule": {
      "id": "payout_sched_weekly",
      "name": "weekly",
      "type": "automatic",
      "interval": "weekly",
      "schedule_on": "sunday",
      "spec": {
        "id": "payout_spec_weekly",
        "t_plus": "7",
        "label": "7 days",
        "abide": "strict"
      },
      "description": "Automatic weekly payout. Default."
    },
    "destinations": {
      "ghs": "fa_Q90wZdd2P7W8hJ1cN9Mx4Rk5sVWBvY3L6pTz8q0"
    }
  }
}
```

### What changed

Your payout schedule switched from manual to automatic:

- [`Schedule.Type`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.PayoutSettingsMutation.html):
  `"manual"`
  →
  `"automatic"`
- [`Schedule.Name`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.PayoutSettingsMutation.html):
  `"manual"`
  →
  `"weekly"`
- [`Schedule.ScheduleOn`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.PayoutSettingsMutation.html)
  : Payouts create every Sunday at midnight UTC
- [`Destinations`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.PayoutSettingsMutation.html):
  Unchanged

Starting next Sunday, Inttegro creates automatic payouts for eligible balance transactions (aged 7+ days).

## What happens next

**Sunday midnight UTC**: Inttegro creates payouts for each currency with eligible balance transactions (aged 7+ days) and a configured destination.

**Sunday-Monday**: Payouts execute. Monitor with `/payouts/lookup`.

**Monday-Wednesday**: Funds arrive in your destination accounts. Bank statements show descriptor `INTG*PAYOUT_ID`.

The cycle repeats weekly until you disable automatic payouts. See [How payouts work](https://studio.inttegro.com/machine/csharp/products/payouts.md#how-payouts-typically-work) for complete details.

## Monitoring

Monitor automatic payouts to catch failures and verify amounts:

**List recent payouts — POST /payouts/page**

```csharp
using Inttegro;

using var inttegro = new InttegroClient(
    Environment.GetEnvironmentVariable("INTTEGRO_API_KEY")!
);
var result = await inttegro.Payouts.PageAsync(new PayoutPageRequest {
  PageNumber = 1,
  PageSize = 10,
});
```

Focus on payouts whose [`Payout.Status`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.Payout.html) is `"failed"`, and on unusual amounts. Use [`Payout.Failure.Reason`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.Payout.html) for the stable failure category.

**Dashboard**: [business.inttegro.dev](https://business.inttegro.dev) shows status badges, amounts, and balance trends.

## Common scenarios

**After month-end close**: Call `/payouts/enable` on the 1st. First automatic payout creates the following Sunday for transactions aged 7+ days.

**After testing**: Enable automatic mode once manual payout tests succeed. Monitor the first few automatic cycles closely.

**After destination changes**: Test new destination with manual payout, then enable automatic mode once verified.

## Best practices

- **Monitor the first 2-3 cycles** — Verify payouts create on schedule, amounts match expectations, funds arrive correctly
- **Keep destinations updated** — Update via `/payouts/set_destinations` when accounts change
- **Set up failure alerts** — Use dashboard notifications for immediate failure notification
- **Document the schedule** — Ensure your team knows payouts run Sundays at midnight UTC
- **Review quarterly** — Check destinations, cadence, and aging rules still match business needs

## Troubleshooting

**Payouts not creating**: Verify [`Settings.Schedule.Type`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.PayoutSettingsLookup.html) is `"automatic"`, check destinations are configured, and ensure you have eligible transactions.

**Payout failed**: Use [Lookup a payout](https://studio.inttegro.com/machine/csharp/api/payouts.md#lookup-a-payout) and inspect [`Payout.Failure`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.Payout.html). Branch on its stable reason, show its detail to an operator, and check its retryable value before creating another payout.

**Payouts arriving late**: Bank transfers take 1-3 business days. Mobile money should arrive Monday—if delayed, check with provider.

**Wrong amount**: Check the [`Payout.BalanceTransactions`](https://dotnet.inttegro.dev/v10.3.0/api/Inttegro.Payout.html) array. Sum each item's `allocated_amount`; the original `amount` may be larger when refunds or earlier payouts already consumed part of a source transaction.

**Need to disable**: Call `/payouts/disable` before next Sunday to switch to manual mode.

## Next steps

Now that automatic payouts are enabled, explore related concepts to optimize your settlement flows:

- **[Understand payout schedules](https://studio.inttegro.com/machine/csharp/products/payouts.md)** to learn about weekly vs. daily cadences and when to request changes
- **[Monitor balance transactions](https://studio.inttegro.com/machine/csharp/api/balance-transactions.md)** to understand what's eligible for the next automatic payout
- **[Manage payout destinations](https://studio.inttegro.com/machine/csharp/guides/manage-payout-destinations.md)** to keep your financial account mappings current
- **[Disable automatic payouts](https://studio.inttegro.com/machine/csharp/guides/disable-automatic-payouts.md)** when you need temporary manual control

Questions? Check the [Payouts API reference](https://studio.inttegro.com/machine/csharp/api/payouts.md) for complete endpoint documentation, or contact support at support@inttegro.com.
