# GET /api/customers/recurring-billing/customers/{customerId}/history

Get billing history filtered by customer.

**Required permissions**: `Customers.RecurringBilling.ViewHistory`  
**Scope**: merchant

**Operation ID:** `GET_api_customers_recurring-billing_customers_customerId_history`

## Authorization

Requires: Customers.RecurringBilling.ViewHistory, merchant scope.

Required permissions:
- `Customers.RecurringBilling.ViewHistory`

## Parameters

| Name | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| customerId | path | yes | string(uuid) |  |
| MerchantId | query | no | string(uuid) | Optional filter to restrict history to a specific merchant. |
| StartDateUtc | query | no | string(date-time) | Start of date range filter (inclusive). |
| EndDateUtc | query | no | string(date-time) | End of date range filter (inclusive). |
| TriggerType | query | no | PhoeniXGateCustomersRecurringBillingRecurringBillingTriggerType | Optional filter by trigger type (Auto/Manual). |
| ContractId | query | no | string(uuid) | Optional filter to show only runs that included a specific contract. |
| CustomerId | query | no | string(uuid) | Optional filter to show only runs that included a specific customer. |
| MaxResultCount | query | no | integer(int32) |  |
| ContinuationToken | query | no | string |  |
| IncludeDeleted | query | no | boolean |  |
| IncludeInactive | query | no | boolean |  |
| suppressNulls | query | no | boolean | If true, omit properties with null values. |

## Responses

### 200

OK

**Content type:** `text/plain`

Schema: `PhoenixAbpCoreApplicationContractsContinuationPagedResultDtoOfPhoeniXGateCustomersRecurringBillingRecurringBillingRunSummaryDto`

**Content type:** `application/json`

Schema: `PhoenixAbpCoreApplicationContractsContinuationPagedResultDtoOfPhoeniXGateCustomersRecurringBillingRecurringBillingRunSummaryDto`

**Content type:** `text/json`

Schema: `PhoenixAbpCoreApplicationContractsContinuationPagedResultDtoOfPhoeniXGateCustomersRecurringBillingRecurringBillingRunSummaryDto`

### 403

Forbidden

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 401

Unauthorized

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 400

Bad Request

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 404

Not Found

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 501

Not Implemented

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 500

Internal Server Error

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### default

The request failed. The body carries the standard error envelope: a machine-readable `error.code`, a human-readable `error.message`, and `error.validationErrors` when the failure was a validation rejection. See the error-code reference in this document's description for the values `error.code` can take.

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

## See also

- [All documentation](https://docs.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
