Inttegro PHP SDK

Payouts
in package

Payouts resource for managing automatic settlements and balance withdrawals.

Payouts transfer funds from your Inttegro balance to configured financial accounts. Control payout schedules, set currency-specific destinations, and enable foreign exchange conversion.

Tags
see
https://studio.inttegro.com/payouts

for detailed guides

Table of Contents

Methods

__construct()  : mixed
cancel()  : Payout
Cancel a scheduled payout before execution.
disableAutomatic()  : PayoutSettingsMutation
Switch payout schedule to manual mode, stopping automatic weekly transfers.
disableFx()  : PayoutSettingsLookup
Disable foreign exchange conversion for payouts.
enableAutomatic()  : PayoutSettingsMutation
Enable automatic payouts.
enableFx()  : PayoutSettingsLookup
Enable foreign exchange conversion for multi-currency payouts.
lookup()  : Payout
Lookup a payout by ID.
page()  : PayoutPage
Retrieve a paginated list of payout history.
schedule()  : Payout
Schedule a payout to a financial account.
setDestinations()  : PayoutSettingsMutation
Configure which financial account receives payouts for each currency.
settings()  : PayoutSettingsLookup
Retrieve current payout configuration including schedule and destination accounts.

Methods

cancel()

Cancel a scheduled payout before execution.

public cancel(string $payoutId) : Payout

Only payouts with scheduled status and future execution windows can be canceled.

Parameters
$payoutId : string

Scheduled payout ID

Return values
Payout

Canceled payout payload

disableAutomatic()

Switch payout schedule to manual mode, stopping automatic weekly transfers.

public disableAutomatic() : PayoutSettingsMutation

When automatic payouts are disabled, you control when funds are transferred to your financial accounts. Use the schedule endpoint to trigger payouts on-demand. Useful for marketplace platforms or when you need explicit control over cash flow timing.

Tags
example

Disable automatic payouts

$settings = $client->payouts->disableAutomatic();
if ($settings->schedule?->type === 'manual') {
    echo "Automatic payouts disabled. You now control payout timing.\n";
}
see
https://studio.inttegro.com/disable-automatic-payouts

for manual payout guide

Return values
PayoutSettingsMutation

Updated payout settings with manual schedule

disableFx()

Disable foreign exchange conversion for payouts.

public disableFx() : PayoutSettingsLookup

After disabling FX, payouts will only be sent in currencies matching your balance currencies. Any financial accounts configured for non-matching currencies will not receive payouts.

Tags
example

Disable FX payouts

$result = $client->payouts->disableFx();
echo "FX conversion disabled. Payouts will match balance currencies.\n";
see
https://studio.inttegro.com/payouts-fx-conversion

for FX details

Return values
PayoutSettingsLookup

Updated payout settings

enableFx()

Enable foreign exchange conversion for multi-currency payouts.

public enableFx() : PayoutSettingsLookup

When FX is enabled, you can receive payouts in a different currency than your balance currency. Inttegro converts funds at market rates during payout execution.

Tags
example

Enable FX payouts

$result = $client->payouts->enableFx();
echo "FX conversion enabled for payouts\n";
see
https://studio.inttegro.com/enable-fx-payouts

for FX payout guide

Return values
PayoutSettingsLookup

Updated payout settings

lookup()

Lookup a payout by ID.

public lookup(string $payoutId) : Payout
Parameters
$payoutId : string
Return values
Payout

page()

Retrieve a paginated list of payout history.

public page([array<string|int, mixed> $payload = [] ]) : PayoutPage

Returns payouts sorted by initiated_at in descending order (most recent first). Each payout includes amount, currency, destination account, status, and execution timestamps.

Parameters
$payload : array<string|int, mixed> = []

Pagination parameters (optional)

  • page_number: int - 1-based page index (1-10, default: 1)
  • page_size: int - Results per page (1-256, default varies)
Tags
example

Get recent payouts

$page = $client->payouts->page([
    'page_number' => 1,
    'page_size' => 20
]);

echo "Page {$page->number} contains {$page->size} payouts\n";

foreach ($page->payouts ?? [] as $payout) {
    echo "Payout {$payout->id}: {$payout->amount?->value} {$payout->amount?->currency}\n";
}
see
https://studio.inttegro.com/pagination

for pagination guide

https://studio.inttegro.com/payouts

for payout overview

Return values
PayoutPage

Paginated payout list with page details

schedule()

Schedule a payout to a financial account.

public schedule(array<string|int, mixed> $payload) : Payout
Parameters
$payload : array<string|int, mixed>
Return values
Payout

setDestinations()

Configure which financial account receives payouts for each currency.

public setDestinations(array<string|int, mixed> $destinations) : PayoutSettingsMutation

Maps currency codes to financial account IDs. Each account must support push operations and match the currency it's assigned to. Only balance transactions that have aged at least 168 hours (7 days) are included in payouts.

Parameters
$destinations : array<string|int, mixed>

Map of currency codes to financial account IDs Example: ['ghs' => 'fa_abc123', 'usd' => 'fa_xyz789']

Tags
example

Set payout destinations

$settings = $client->payouts->setDestinations([
    'ghs' => 'fa_mtnmomo_account',
    'usd' => 'fa_bank_account'
]);

foreach ($settings->destinations ?? [] as $currency => $accountId) {
    echo "Payouts in $currency go to $accountId\n";
}
see
https://studio.inttegro.com/manage-payout-destinations

for payout destination guide

Return values
PayoutSettingsMutation

Updated payout settings

settings()

Retrieve current payout configuration including schedule and destination accounts.

public settings() : PayoutSettingsLookup

Returns the payout schedule (automatic or manual) and the financial accounts configured for each currency. Use this to display current settings to users or verify configuration.

Tags
example

Get payout settings

$settings = $client->payouts->settings();
echo "Schedule: {$settings->schedule?->name}\n";
echo "Type: {$settings->schedule?->type}\n";
see
https://studio.inttegro.com/payouts

for payout overview

Return values
PayoutSettingsLookup

Payout settings with schedule and destinations

On this page

Search results