# Get payment provider by ID

`GET /api/financial/payment-providers/{paymentProviderId}`

- **Success:** `200 OK`
- **Products:** Operator (`FOH`), Consumer (`CONSUMER`) (any one of these products, not all)
- **Features:** Online Bookings (`ONLINEBOOK`), Online Joining (`ONLINEJOIN`), Front of House Generic Access (`FOHGENERIC`) (any one of these features, not all)

HTML version: [Get payment provider by ID](https://support.gladstonesoftware.cloud/reference/payments/get-payment-provider-by-id)

## Overview

Retrieves one payment provider by id.

Despite what the summary suggests, this returns no credentials, no supported payment methods and
no fee structure — it is the same three-field object
[Get all payment providers](get-all-payment-providers.md) returns for each entry,
selected by id. It returns the matching entry from that same list, so there is nothing to be gained over calling the list endpoint once and filtering
client-side.

## Endpoint

`GET {base_url}/api/financial/payment-providers/{paymentProviderId}`

`{base_url}` is the environment URL issued to your integration. See [Authenticating with Gladstone APIs](../../guides/authenticating-with-gladstone-apis.md).

## Path parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `paymentProviderId` | integer (int32) | Yes | The provider to retrieve, as returned in `[].id` by [Get all payment providers](get-all-payment-providers.md). An id that matches no provider returns `404`. |

## Sample request

```bash title="cURL"
curl -X GET '{base_url}/api/financial/payment-providers/{paymentProviderId}' \
  -H 'Authorization: Bearer {accessToken}' \
  -H 'X-Use-SSO: true'
```

## Response fields

| Field | Type | Description |
|-------|------|-------------|
| `id` | integer (int32) | The payment provider identifier — the same value you sent in the path. |
| `configurationGroupId` | integer (int32) | The system configuration group holding this provider's settings. This API exposes no endpoint for reading the group, so there is nothing you can do with the value. |
| `name` | string | The provider's display name, always present and at most 60 characters. It is free-text configuration rather than a controlled vocabulary, so do not switch on it: the value that matters when taking a payment is the `paymentProvider` enum on [Pay for sales invoices](pays-for-sales-invoices-using-a-specified-payment-provider-and-can-handle-paymen.md), which currently accepts only `GladstonePay`. |

## Sample response

```json title="200 OK"
{
  "id": 12345,
  "configurationGroupId": 12345,
  "name": "string"
}
```

## Errors

| Status | Meaning | When |
|--------|---------|------|
| `404` | Not found | `Payment provider ID {paymentProviderId} could not be found.` — no provider with that id exists for the operator. |
| `500` | Internal server error | An unexpected server-side failure while reading the provider list. The response body is empty. |
