> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appcharge.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Price Points for a Country

> Retrieves price points localized for a specific country.

Pass price points in USD cents and a country code. The API returns each requested price point with its localized price in the currency for that country.


<RequestExample>
  ```bash Get Price Points by Country theme={"system"}
    curl -X POST \
    'https://api.appcharge.com/v1/price-points/localized/lookup' \
    -H 'Accept: application/json' \
    -H 'Content-Type: application/json' \
    -H 'x-publisher-token: <x-publisher-token>' \
    -d '{
      "pricesInUsdCents": [699, 4550, 9999],
      "countryCode2": "DE"
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json Get Price Points for a Country theme={"system"}
  {
    "currencyCode": "EUR",
    "pricePoints": {
      "699": {
        "price": 664,
        "displayPrice": "6,64 €"
      },
      "4550": {
        "price": 4323,
        "displayPrice": "43,23 €"
      },
      "9999": {
        "price": 9499,
        "displayPrice": "94,99 €"
      }
    }
  }
  ```

  ```json 400 theme={"system"}
  {
    "message": "Invalid countryCode2: must be ISO 3166-1 alpha-2."
  }
  ```

  ```json 401 theme={"system"}
  {
    "message": "Unauthorized."
  }
  ```

  ```json 429 theme={"system"}
  {
    "message": "Rate limit exceeded."
  }
  ```
</ResponseExample>


## OpenAPI

````yaml openapi-price-points.json post /v1/price-points/localized/lookup
openapi: 3.1.0
info:
  title: Price Localization API
  description: API for managing price points and price localization
  version: 1.0.0
servers:
  - url: https://api.example.com
security: []
paths:
  /v1/price-points/localized/lookup:
    post:
      summary: Get Price Points for a Country
      description: >-
        Retrieves price points localized for a specific country.


        Pass price points in USD cents and a country code. The API returns each
        requested price point with its localized price in the currency for that
        country.
      operationId: lookupLocalizedPricePoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LocalizedPricePointLookupRequest'
            examples:
              byCountry:
                summary: Get by country
                value:
                  pricesInUsdCents:
                    - 699
                    - 4550
                    - 9999
                  countryCode2: DE
      responses:
        '200':
          description: Localized price points retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocalizedPricePointLookupResponse'
              examples:
                localizedPrices:
                  summary: All requested price points configured
                  value:
                    currencyCode: EUR
                    pricePoints:
                      '699':
                        price: 664
                        displayPrice: 6,64 €
                      '4550':
                        price: 4323
                        displayPrice: 43,23 €
                      '9999':
                        price: 9499
                        displayPrice: 94,99 €
                missingPricePoint:
                  summary: One requested price point is not configured
                  value:
                    currencyCode: EUR
                    pricePoints:
                      '699':
                        price: 664
                        displayPrice: 6,64 €
                      '12000': null
        '400':
          description: Bad request. All errors return a `message` property.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestErrorResponse'
              examples:
                tooManyPricePoints:
                  summary: Too many price points
                  value:
                    message: Too many price points used, maximum is 50.
                invalidPricePoint:
                  summary: Invalid price point
                  value:
                    message: >-
                      Invalid priceInUsdCents value: must be a positive integer
                      [invalid1, invalid2].
                invalidCountryCode:
                  summary: Invalid country code
                  value:
                    message: 'Invalid countryCode2: must be ISO 3166-1 alpha-2.'
                unsupportedCountry:
                  summary: Unsupported country
                  value:
                    message: countryCode2 XX is not supported.
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                message: Unauthorized
        '429':
          description: Too many requests. The rate limit is 5,000 requests per minute.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                message: Rate limit exceeded.
components:
  schemas:
    LocalizedPricePointLookupRequest:
      type: object
      required:
        - pricesInUsdCents
        - countryCode2
      properties:
        pricesInUsdCents:
          type: array
          description: List of base prices in USD.
          items:
            type: number
          maxItems: 50
          example:
            - 699
            - 4550
            - 9999
        countryCode2:
          type: string
          description: >-
            Country code in [ISO 3166-1
            alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
          example: DE
    LocalizedPricePointLookupResponse:
      type: object
      properties:
        currencyCode:
          type: string
          description: >-
            ISO 4217 currency code of the resolved local currency. Pass this
            value as `priceDetails.currency` when creating a checkout session.
            Empty string when no local price is configured for any of the
            requested price points.
          example: EUR
        pricePoints:
          type: object
          description: >-
            Map of requested USD price points, as JSON string keys, to localized
            price objects. The value is `null` when no local price is configured
            for that price point.
          additionalProperties:
            type:
              - object
              - 'null'
            properties:
              price:
                type: integer
                description: >-
                  Local price in the currency's lowest unit. For example, cents
                  for USD, and whole yen for JPY. For a list of of supported
                  currencies, their minor unit types, and applicable pricing
                  limitations, see [Supported
                  Currencies](/../../merchant-of-record/finance/supported-currencies#supported-currencies).
                example: 664
              displayPrice:
                type: string
                description: Locale-formatted display price.
                example: 6,64 €
    BadRequestErrorResponse:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: Error message describing what went wrong.
          example: >-
            Invalid priceInUsdCents value: must be a positive integer [invalid1,
            invalid2].
    ErrorResponse:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: Error message describing what went wrong.
          example: Price point 999 not found.

````