---
title: "Create a Price Point"
method: POST
path: "/v1/price-points"
---

# Create a Price Point

`POST /v1/price-points`

Creates a price point.

When you pass the base price in USD, the API returns localized prices for this price point in all currencies supported by Appcharge. Learn more about [how localized prices are calculated](./introduction#how-localized-prices-are-calculated).

To override automatically calculated prices for specific countries, pass the `priceOverrides` property with the relevant country codes and your custom prices.

## Request body

- object
  - `priceInUsdCents` number — Base price in USD cents.
  - `priceOverrides` PriceOverride[] — List of country-specific prices that replace the auto-calculated price. Exchange rates and rounding rules aren't applied. If a country's tax model includes taxes in the price, make sure the custom price include tax. If a country's tax model excludes tax from the price, Appcharge adds the applicable tax during checkout. Overrides apply only to the countries you specify.
    - `countryCode2` string — Two-letter country code in [ISO-3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format. Required if `playerIp` is not provided. Example: `US`.
    - `playerIp` string — Player IP address in [IPv4](https://en.wikipedia.org/wiki/IPv4) format. Required if `countryCode2` is not provided. Example: `192.0.2.1`.
    - `price` number — Override price amount. If the country's currency isn't enabled, the value is treated as USD and displayed in USD.

## Response `201`

Price point created successfully.

- PricePoint
  - `priceInUsdCents` number — Base price in USD cents.
  - `lastUpdate` string, date-time — Timestamp indicating when the price point was last updated, in UTC ISO 8601 format.
  - `priceByCountry` PriceByCountry[] — List of localized prices by country, including overrides if present.
    - `price` number — Localized price for the country.
    - `currencyCode` string — Currency code.
    - `isOverridden` boolean — Whether the price was overridden.
    - `taxModel` 'Included' | 'Excluded' — Tax model applied to the price.
    - `taxRate` number — Tax rate applied to the price.
    - `country` string — Country name.
    - `countryCode2` string — Two-letter country code in [ISO-3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format. Required if `playerIp` is not provided. Example: `US`.
    - `playerIp` string — Player IP address in [IPv4](https://en.wikipedia.org/wiki/IPv4) format. Required if `countryCode2` is not provided. Example: `192.0.2.1`.
    - `usdExchangeRateOnCalc` number — USD exchange rate used at the time of calculation.
    - `exchangeRateDrift` string — Exchange rate drift since the last calculation.

## Other responses

- `400` — Bad request. This can occur due to a schema validation error or an invalid country code.
- `409` — Conflict. The price point already exists.

---

[API](https://skmtc.net/appcharge/apis/grant-award.md) · [All operations](https://skmtc.net/appcharge/apis/grant-award/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/appcharge/grant-award/revisions/b4f6759240d5/schema)
