---
title: "Get Commission Statement"
method: GET
path: "/v4/commissions/statement/{statementId}"
tags: ["Gateway Features", "Billing & Commission"]
---

# Get Commission Statement

`GET /v4/commissions/statement/{statementId}`

## Request

- Base URL: `https://sandbox.nmi.com/api`
- URL: `https://sandbox.nmi.com/api/v4/commissions/statement/{statementId}`
- Auth: API key in header `Authorization`

> 📘 Commission statements
>
> This endpoint is available only if your partner account has access to the commission statements. Your API key must belong to a partner user with the commission permission. You can get only your own statements, not the statements of your sub-partners.

<details>
<summary>Usage</summary>

Reconcile your commission line by line. This endpoint gets one commission statement with its balances and line items, in any status.

`lineItems` groups the line items by category. Every category is present. A category with no line items is an empty array.

| Category | Contains |
| --- | --- |
| `merchantPayment` | Commission you earn when a merchant pays an invoice |
| `merchantPaymentReturn` | Commission reversed when a merchant invoice payment is returned |
| `affiliatePayment` | Commission you earn when a sub-partner pays an invoice |
| `affiliatePaymentReturn` | Commission reversed when a sub-partner invoice payment is returned |
| `revenueShare` | Revenue share from merchant services |
| `adjustment` | Manual adjustments |
| `startingBalance` | Balance carried into the statement |
| `payment` | Commission payouts to your bank account |

`merchantPayment` and `merchantPaymentReturn` include `invoiceLineItems` for every commission row you have on that invoice. `affiliatePayment` and `affiliatePaymentReturn` include only rows whose commission is paid to you. When the invoice is not found, `invoiceLineItems` is an empty array.

All amounts are `amount` objects with a decimal string and a currency. All dates use ISO 8601 with a UTC offset.

Balances can change until the statement is `finalized`. Until then, the response includes `warnings`.

</details>

## Path parameters

- `statementId` string, uuid, required

## Headers

- `Authorization` string, required

## Response `200`

The statement.

- StatementDetailsResponse: A commission statement with its line items.
  - `objectType` 'rcssCommissionStatementDetailReport', required: Always `rcssCommissionStatementDetailReport`.
  - `statementId` string, uuid, required: Statement ID.
  - `status` 'open' | 'pending_approval' | 'approved' | 'finalized', required: Statement status. `open`: the period is in progress. `pending_approval`: the period has ended and the statement is under review. `approved`: approved for payout. `finalized`: closed; balances are final and the PDF is available.
  - `periodStart` string, date-time, required: Start of the statement period.
  - `periodEnd` string, date-time, required: End of the statement period.
  - `customerId` string, uuid, required: ID of the partner's account in the commission statement service.
  - `externalCustomerId` string, required: The partner ID, wrapped in periods.
  - `openingBalance` CommissionAmount, required: A monetary amount.
    - `objectType` 'amount', required: Always `amount`.
    - `amount` string, required: The amount as a decimal string.
    - `currency` string, required: ISO 4217 currency code.
  - `closingBalance` CommissionAmount, required: A monetary amount.
    - `objectType` 'amount', required: Always `amount`.
    - `amount` string, required: The amount as a decimal string.
    - `currency` string, required: ISO 4217 currency code.
  - `lineItems` object, required: Line items grouped by category. Every category is present; an empty category is an empty array.
    - `affiliatePayment` object[], required: Commission earned when a sub-partner pays an invoice.
      - `date` string, date-time, required: When the line item was posted to the statement.
      - `amount` CommissionAmount, required: A monetary amount.
        - `objectType` 'amount', required: Always `amount`.
        - `amount` string, required: The amount as a decimal string.
        - `currency` string, required: ISO 4217 currency code.
      - `metaData` AffiliateInvoiceMetaData, required: Details of a sub-partner invoice payment or return.
        - `invoiceNumber` string, required: Invoice number.
        - `affiliateId` string, required: ID of the partner that paid the invoice.
        - `affiliateName` string, required: Name of the partner that paid the invoice. Empty when the name is not found.
        - `subAffiliateId` string, nullable, required: ID of the sub-partner that owns the merchant. Null when it is the same partner as `affiliateId`.
        - `subAffiliateName` string, nullable, required: Name of the sub-partner that owns the merchant. Null when it is the same partner as `affiliateId`.
        - `merchantId` string, nullable, required: Gateway ID of the merchant on the invoice. Null when the invoice is not found.
        - `merchantName` string, required: Merchant company name. Empty when the invoice is not found.
        - `merchantExternalIdentifier` string, required: External identifier for the merchant. Can be empty.
        - `invoiceLineItems` InvoiceLineItem[], required: Fees on the invoice that earned commission. Empty when the invoice is not found.
          - `description` string, required: Fee description.
          - `processorType` string, required: Processor type code, for example `cc` (credit card) or `fs` (feature service).
          - `processorName` string, required: Name of the processing platform.
          - `merchantProcessorName` string, required: Name the merchant gave the processor configuration. Can be empty.
          - `quantity` string, required: Billed quantity as a decimal string.
          - `yourCost` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalYourCost` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `resalePrice` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalResalePrice` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalCommission` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
        - `invoiceDate` string, date-time, required: Invoice date.
        - `invoiceAmount` CommissionAmount, required: A monetary amount.
          - `objectType` 'amount', required: Always `amount`.
          - `amount` string, required: The amount as a decimal string.
          - `currency` string, required: ISO 4217 currency code.
    - `merchantPayment` object[], required: Commission earned when a merchant pays an invoice.
      - `date` string, date-time, required: When the line item was posted to the statement.
      - `amount` CommissionAmount, required: A monetary amount.
        - `objectType` 'amount', required: Always `amount`.
        - `amount` string, required: The amount as a decimal string.
        - `currency` string, required: ISO 4217 currency code.
      - `metaData` MerchantInvoiceMetaData, required: Details of a merchant invoice payment or return. The merchant and sub-partner fields are omitted when the invoice is not found.
        - `invoiceNumber` string, required: Invoice number.
        - `subAffiliateId` string, nullable: ID of the sub-partner that owns the merchant. Null when the partner owns the merchant directly.
        - `subAffiliateName` string, nullable: Name of the sub-partner that owns the merchant. Null when the partner owns the merchant directly.
        - `merchantId` string, required: Gateway ID of the merchant.
        - `merchantName` string: Merchant company name.
        - `merchantExternalIdentifier` string: The partner's external identifier for the merchant. Can be empty.
        - `invoiceLineItems` InvoiceLineItem[], required: Fees on the invoice that earned commission. Empty when the invoice is not found.
          - `description` string, required: Fee description.
          - `processorType` string, required: Processor type code, for example `cc` (credit card) or `fs` (feature service).
          - `processorName` string, required: Name of the processing platform.
          - `merchantProcessorName` string, required: Name the merchant gave the processor configuration. Can be empty.
          - `quantity` string, required: Billed quantity as a decimal string.
          - `yourCost` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalYourCost` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `resalePrice` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalResalePrice` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalCommission` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
        - `invoiceDate` string, date-time, required: Invoice date.
        - `invoiceAmount` CommissionAmount, required: A monetary amount.
          - `objectType` 'amount', required: Always `amount`.
          - `amount` string, required: The amount as a decimal string.
          - `currency` string, required: ISO 4217 currency code.
    - `merchantPaymentReturn` object[], required: Commission reversed when a merchant invoice payment is returned.
      - `date` string, date-time, required: When the line item was posted to the statement.
      - `amount` CommissionAmount, required: A monetary amount.
        - `objectType` 'amount', required: Always `amount`.
        - `amount` string, required: The amount as a decimal string.
        - `currency` string, required: ISO 4217 currency code.
      - `metaData` MerchantInvoiceMetaData, required: Details of a merchant invoice payment or return. The merchant and sub-partner fields are omitted when the invoice is not found.
        - `invoiceNumber` string, required: Invoice number.
        - `subAffiliateId` string, nullable: ID of the sub-partner that owns the merchant. Null when the partner owns the merchant directly.
        - `subAffiliateName` string, nullable: Name of the sub-partner that owns the merchant. Null when the partner owns the merchant directly.
        - `merchantId` string, required: Gateway ID of the merchant.
        - `merchantName` string: Merchant company name.
        - `merchantExternalIdentifier` string: The partner's external identifier for the merchant. Can be empty.
        - `invoiceLineItems` InvoiceLineItem[], required: Fees on the invoice that earned commission. Empty when the invoice is not found.
          - `description` string, required: Fee description.
          - `processorType` string, required: Processor type code, for example `cc` (credit card) or `fs` (feature service).
          - `processorName` string, required: Name of the processing platform.
          - `merchantProcessorName` string, required: Name the merchant gave the processor configuration. Can be empty.
          - `quantity` string, required: Billed quantity as a decimal string.
          - `yourCost` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalYourCost` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `resalePrice` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalResalePrice` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalCommission` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
        - `invoiceDate` string, date-time, required: Invoice date.
        - `invoiceAmount` CommissionAmount, required: A monetary amount.
          - `objectType` 'amount', required: Always `amount`.
          - `amount` string, required: The amount as a decimal string.
          - `currency` string, required: ISO 4217 currency code.
    - `affiliatePaymentReturn` object[], required: Commission reversed when a sub-partner invoice payment is returned.
      - `date` string, date-time, required: When the line item was posted to the statement.
      - `amount` CommissionAmount, required: A monetary amount.
        - `objectType` 'amount', required: Always `amount`.
        - `amount` string, required: The amount as a decimal string.
        - `currency` string, required: ISO 4217 currency code.
      - `metaData` AffiliateInvoiceMetaData, required: Details of a sub-partner invoice payment or return.
        - `invoiceNumber` string, required: Invoice number.
        - `affiliateId` string, required: ID of the partner that paid the invoice.
        - `affiliateName` string, required: Name of the partner that paid the invoice. Empty when the name is not found.
        - `subAffiliateId` string, nullable, required: ID of the sub-partner that owns the merchant. Null when it is the same partner as `affiliateId`.
        - `subAffiliateName` string, nullable, required: Name of the sub-partner that owns the merchant. Null when it is the same partner as `affiliateId`.
        - `merchantId` string, nullable, required: Gateway ID of the merchant on the invoice. Null when the invoice is not found.
        - `merchantName` string, required: Merchant company name. Empty when the invoice is not found.
        - `merchantExternalIdentifier` string, required: External identifier for the merchant. Can be empty.
        - `invoiceLineItems` InvoiceLineItem[], required: Fees on the invoice that earned commission. Empty when the invoice is not found.
          - `description` string, required: Fee description.
          - `processorType` string, required: Processor type code, for example `cc` (credit card) or `fs` (feature service).
          - `processorName` string, required: Name of the processing platform.
          - `merchantProcessorName` string, required: Name the merchant gave the processor configuration. Can be empty.
          - `quantity` string, required: Billed quantity as a decimal string.
          - `yourCost` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalYourCost` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `resalePrice` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalResalePrice` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
          - `totalCommission` CommissionAmount, required: A monetary amount.
            - `objectType` 'amount', required: Always `amount`.
            - `amount` string, required: The amount as a decimal string.
            - `currency` string, required: ISO 4217 currency code.
        - `invoiceDate` string, date-time, required: Invoice date.
        - `invoiceAmount` CommissionAmount, required: A monetary amount.
          - `objectType` 'amount', required: Always `amount`.
          - `amount` string, required: The amount as a decimal string.
          - `currency` string, required: ISO 4217 currency code.
    - `startingBalance` object[], required: Balance carried into the statement.
      - `date` string, date-time, required: When the line item was posted to the statement.
      - `amount` CommissionAmount, required: A monetary amount.
        - `objectType` 'amount', required: Always `amount`.
        - `amount` string, required: The amount as a decimal string.
        - `currency` string, required: ISO 4217 currency code.
      - `metaData` StartingBalanceMetaData, required: Details of a starting balance.
        - `description` string, required: Description of the starting balance.
        - `originatingStatementId` string, nullable, required: ID of the statement the balance came from. Null for an initial balance.
    - `adjustment` object[], required: Manual adjustments to the balance.
      - `date` string, date-time, required: When the line item was posted to the statement.
      - `amount` CommissionAmount, required: A monetary amount.
        - `objectType` 'amount', required: Always `amount`.
        - `amount` string, required: The amount as a decimal string.
        - `currency` string, required: ISO 4217 currency code.
      - `metaData` AdjustmentMetaData, required: Details of a manual adjustment.
        - `description` string, required: Reason for the adjustment.
    - `payment` object[], required: Commission payouts to the partner's bank account.
      - `date` string, date-time, required: When the line item was posted to the statement.
      - `amount` CommissionAmount, required: A monetary amount.
        - `objectType` 'amount', required: Always `amount`.
        - `amount` string, required: The amount as a decimal string.
        - `currency` string, required: ISO 4217 currency code.
      - `metaData` PaymentMetaData, required: Details of a commission payout to the partner's bank account.
        - `paymentAmountAttempted` CommissionAmount, required: A monetary amount.
          - `objectType` 'amount', required: Always `amount`.
          - `amount` string, required: The amount as a decimal string.
          - `currency` string, required: ISO 4217 currency code.
        - `transactionId` string, required: Gateway transaction ID of the payout.
        - `paymentStatus` 'success' | 'failed' | 'return' | 'not_attempted', required: Result of the payout: `success`, `failed`, `return` (the bank returned the payout after it was sent), or `not_attempted`. A payout is `not_attempted` when the commission earned is zero or negative.
        - `accountNumber` string, required: Masked bank account number. Longer than 5 digits: the first digit, asterisks, and the last four digits. 5 digits or fewer: asterisks and the last digit. Empty when no account was sent.
        - `routingNumber` string, required: Bank routing number.
        - `processorResponseCode` string, required: Response code from the processor.
    - `revenueShare` object[], required: Revenue share from merchant services.
      - `date` string, date-time, required: When the line item was posted to the statement.
      - `amount` CommissionAmount, required: A monetary amount.
        - `objectType` 'amount', required: Always `amount`.
        - `amount` string, required: The amount as a decimal string.
        - `currency` string, required: ISO 4217 currency code.
      - `metaData` RevenueShareMetaData, required: Details of a revenue share from a merchant service.
        - `affiliateId` string, required: The partner ID.
        - `affiliateName` string, required: The partner name.
        - `subAffiliateId` string, nullable, required: ID of the sub-partner that owns the merchant. Null when the partner owns the merchant directly.
        - `subAffiliateName` string, nullable, required: Name of the sub-partner that owns the merchant. Null when the partner owns the merchant directly.
        - `merchantNumber` string, required: Gateway ID of the merchant.
        - `merchantName` string, required: Merchant company name. Empty when the merchant is not found.
        - `merchantExternalIdentifier` string, required: The partner's external identifier for the merchant. Can be empty.
        - `service` string, required: The service that produced the revenue.
        - `grossIncome` CommissionAmount, required: A monetary amount.
          - `objectType` 'amount', required: Always `amount`.
          - `amount` string, required: The amount as a decimal string.
          - `currency` string, required: ISO 4217 currency code.
        - `downstreamShare` CommissionAmount, required: A monetary amount.
          - `objectType` 'amount', required: Always `amount`.
          - `amount` string, required: The amount as a decimal string.
          - `currency` string, required: ISO 4217 currency code.
  - `warnings` string[]: Present only when the statement is not finalized.

## Other responses

- `401`: The API key is missing or not valid.
- `403`: The key cannot access this resource: it lacks the commission permission, the partner does not have access to the commission statements, or the statement belongs to another partner.
- `404`: The statement does not exist.
- `422`: The statement ID is not valid, the statement is not available, or the statement service returned an error.
- `500`: The statement service could not complete the request.

---

[API](https://skmtc.dev/nmi/apis/payments-api.md) - [All operations](https://skmtc.dev/nmi/apis/payments-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nmi/apis/payments-api/revisions/c03727f27e27?raw)
