---
title: "Retrieve a subscription purchase"
method: GET
path: "/api/v1/subscription-purchases/{subscriptionPurchaseId}"
tags: ["Subscription Purchases"]
---

# Retrieve a subscription purchase

`GET /api/v1/subscription-purchases/{subscriptionPurchaseId}`

Required scope: `subscriptions:read` </br>Organization authorization: `supported`

## Path parameters

- `subscriptionPurchaseId` integer, required

## Response `200`

Subscription purchase with provided id

- SubscriptionPurchase
  - `id` integer — Id of the subscription purchase
  - `note` string, nullable — Note for this subscription purchase
  - `type` 'pending' | 'diff' | 'unknown', required — Enumerate the possible purchase types for subscription purchases
  - `discountPercentage` number, double — The discount percentage applied to this purchase
  - `discountAbsolute` number, double — The absolute discount applied to this purchase
  - `originalAmount` number, double — The original amount of this purchase
  - `discountAmount` number, double — The discounted amount of this purchase
  - `totalAmount` number, double — The total amount of this purchase
  - `currency` Currency1, required
    - `identifier` string, required — Currency identifier, e.g. dkk
    - `name` string, required — Readable name of currency
    - `decimals` integer — Number of decimals for this currency
  - `subscription` Subscription, required
    - `id` integer — Id of the subscription
    - `state` 'pending' | 'active' | 'paused' | 'cancelling' | 'cancelled' | 'unpaid' | 'other', required
    - `nextPurchaseAt` string, date-time, nullable — Date of next purchase
    - `cancelledAt` string, date-time, nullable — Subscription cancellation date
    - `endAt` string, date-time, nullable — Subscription end date
    - `validityPeriod` SubscriptionValidityPeriod — The validity period of the subscription, with optional from (start) and to (end) dates.
      - `from` string, date-time, nullable — Start date of the subscription's validity period
      - `to` string, date-time, nullable — End date of the subscription's validity period
    - `discountPercentage` number, double — Discount percentage
    - `discountAbsolute` number, double — Discount absolute
    - `discountAmount` number, double — Discount amount
    - `originalAmount` number, double — Original amount
    - `totalAmount` number, double — Total amount
    - `purchaseCount` integer — Number of purchases
    - `chargePoints` integer — Number of charge points
    - `customerId` integer — The id of the customer
    - `customerType` 'team' | 'charge-point' | 'operator' | 'other', required — Enumerate the various subscription customer types
    - `planId` integer — Plan id
    - `serviceConfig` union
      - object
        - `serviceType` 'custom' | 'tax-refund' | 'charge-package', required
        - `payoutPerKwh` number, double, required — Amount to pay out per kWh
        - `priceIncludesVat` boolean, required — Indicates whether the VAT is already included in the price
        - `additionalFeeAbsolute` number, double, nullable, required — This absolute value will be added as additional fee, paid by charge point owner.Will be only applied to charge point owned by operator.Note: This uses the default currency of the operator!
        - `roamingAdditionalFeeAbsolute` number, double, nullable — Same as the additional fee absolute, but only applied to roaming sessions.
      - object
        - `serviceType` 'custom' | 'tax-refund' | 'charge-package', required
        - `subscriptionAdditionalFeeApplicationScope` 'all' | 'paid', required
        - `additionalFeePercentage` integer, required — This percentage will be added as additional fee, paid by charge point owner.Will only be applied to charge point owned by operator.
        - `additionalFeeAbsolute` number, double, required — This absolute value will be added as additional fee, paid by charge point owner.Will only be applied to charge point owned by operator.Note: This uses the default currency of the operator!
        - `additionalStartingFee` number, double, required — This absolute value will be added as additional fee, once per charge session, paid by charge point owner.Will only be applied to charge point owned by operator.Note: This uses the default currency of the operator!
        - `roamingAdditionalFeePercentage` integer, nullable — Same as the additional fee percentage, but only applied to roaming sessions.
        - `roamingAdditionalFeeAbsolute` number, double, nullable — Same as the additional fee absolute, but only applied to roaming sessions.
        - `roamingAdditionalStartingFee` number, double, nullable — Same as the additional starting fee, but only applied to roaming sessions.
    - `createdAt` string, date-time, required — Subscription creation date
    - `updatedAt` string, date-time, required — Subscription update date
    - `canCancel` boolean — Indicates if the subscription can be cancelled
    - `note` string, nullable — A note on the subscription
    - `deletedAt` string, date-time, nullable — Subscription marked as deleted date
  - `createdAt` string, date-time, required — Creation date of this subscription purchase
  - `updatedAt` string, date-time, nullable — Update date of this subscription purchase
  - `deletedAt` string, date-time, nullable — Deleted date of this subscription purchase

## Other responses

- `400` — The request is invalid
- `401` — Consumer with provided credentials was not found
- `403` — Operator doesn't have access to resource
- `404` — Entity with the provided id was not found

---

[API](https://skmtc.net/monta/apis/monta-partner-api.md) · [All operations](https://skmtc.net/monta/apis/monta-partner-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/monta/monta-partner-api/revisions/517e18f11015/schema)
