List residual fees | Moov Documentation

List residual fees

List all fees associated with a residual.

To access this endpoint using an access token you'll need to specify the /accounts/{accountID}/profile.read scope.

GET

/accounts/{accountID}/residuals/{residualID}/fees

Ask

curl -X GET "https://api.moov.io/accounts/{accountID}/residuals/{residualID}/fees" \ 
  -H "Authorization: Bearer {token}" \ 
  -H "X-Moov-Version: v2026.07.00"

Ask

mc, _ := moov.NewClient()

var accountID string
var residualID string

mc.ListResidualFees(ctx, accountID, residualID)

Ask

import { Moov } from "@moovio/sdk";

const moov = new Moov({
  security: {
    username: "",
    password: "",
  },
});

async function run() {
  const result = await moov.feePlans.listResidualFees({
    skip: 60,
    count: 20,
    accountID: "6b95293f-c3e7-42b5-98b7-fd9cc8d49685",
    residualID: "8ecb1a63-25e0-41e7-a9c7-bb8a1cf63d1c",
  });

console.log(result);
}

run();

Ask

declare(strict_types=1);

require 'vendor/autoload.php';

use Moov\MoovPhp;
use Moov\MoovPhp\Models\Components;
use Moov\MoovPhp\Models\Operations;

$sdk = MoovPhp\Moov::builder()
    ->setSecurity(
        new Components\Security(
            username: '',
            password: '',
        )
    )
    ->build();

$request = new Operations\ListResidualFeesRequest(
    skip: 60,
    count: 20,
    accountID: '6b95293f-c3e7-42b5-98b7-fd9cc8d49685',
    residualID: '8ecb1a63-25e0-41e7-a9c7-bb8a1cf63d1c',
);

$response = $sdk->feePlans->listResidualFees(
    request: $request
);

if ($response->incurredFees !== null) {
    // handle response
}

Ask

package hello.world;

import io.moov.sdk.Moov;
import io.moov.sdk.models.components.Security;
import io.moov.sdk.models.operations.ListResidualFeesRequest;
import io.moov.sdk.models.operations.ListResidualFeesResponse;
import java.lang.Exception;

public class Application {

public static void main(String[] args) throws Exception {

Moov sdk = Moov.builder()
                .security(Security.builder()
                    .username("")
                    .password("")
                    .build())
            .build();

ListResidualFeesRequest req = ListResidualFeesRequest.builder()
                .accountID("6b95293f-c3e7-42b5-98b7-fd9cc8d49685")
                .residualID("8ecb1a63-25e0-41e7-a9c7-bb8a1cf63d1c")
                .skip(60L)
                .count(20L)
                .build();

ListResidualFeesResponse res = sdk.feePlans().listResidualFees()
                .request(req)
                .call();

if (res.incurredFees().isPresent()) {
            System.out.println(res.incurredFees().get());
        }
    }
}

Ask

from moovio_sdk import Moov
from moovio_sdk.models import components

with Moov(
    security=components.Security(
        username="",
        password="",
    ),
) as moov:

res = moov.fee_plans.list_residual_fees(account_id="6b95293f-c3e7-42b5-98b7-fd9cc8d49685", residual_id="8ecb1a63-25e0-41e7-a9c7-bb8a1cf63d1c", skip=60, count=20)

# Handle response
    print(res)

Ask

require 'moov_ruby'

Models = ::Moov::Models
s = ::Moov::Client.new(
  security: Models::Components::Security.new(
    username: '',
    password: ''
  )
)

req = Models::Operations::ListResidualFeesRequest.new(
  skip: 60,
  count: 20,
  account_id: '6b95293f-c3e7-42b5-98b7-fd9cc8d49685',
  residual_id: '8ecb1a63-25e0-41e7-a9c7-bb8a1cf63d1c'
)
res = s.fee_plans.list_residual_fees(request: req)

unless res.incurred_fees.nil?
  # handle response
end

Ask

using Moov.Sdk;
using Moov.Sdk.Models.Components;
using Moov.Sdk.Models.Requests;

var sdk = new MoovClient(security: new Security() {
    Username = "",
    Password = "",
});

ListResidualFeesRequest req = new ListResidualFeesRequest() {
    Skip = 60,
    Count = 20,
    AccountID = "6b95293f-c3e7-42b5-98b7-fd9cc8d49685",
    ResidualID = "8ecb1a63-25e0-41e7-a9c7-bb8a1cf63d1c",
};

var res = await sdk.FeePlans.ListResidualFeesAsync(req);

// handle response

The request completed successfully.

Example

[\
  {\
    "feeID": "string",\
    "accountID": "string",\
    "walletID": "string",\
    "createdOn": "2019-08-24T14:15:22Z",\
    "feeName": "string",\
    "amount": {\
      "currency": "USD",\
      "valueDecimal": "12.987654321"\
    },\
    "generatedBy": {\
      "transferID": "string",\
      "cardID": "string",\
      "disputeID": "string",\
      "accountID": "string",\
      "bankAccountID": "string",\
      "invoiceID": "string"\
    },\
    "feeGroup": "string",\
    "residualID": "string"\
  }\
]