---
title: "Adds and directly posts a charge to the folio. If there are any fees configured for the property, an additional charge for each configured fee will be added."
method: POST
path: "/finance/v0-nsfw/folio-actions/{folioId}/charges"
tags: ["FolioActions"]
---

# Adds and directly posts a charge to the folio. If there are any fees configured for the property, an additional charge for each configured fee will be added.

`POST /finance/v0-nsfw/folio-actions/{folioId}/charges`

## Request

- Base URL: `https://api.apaleo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.apaleo.com/finance/v0-nsfw/folio-actions/{folioId}/charges`
- Auth: OAuth 2
  - Implicit: `https://identity.apaleo.com/connect/authorize`
  - Scopes: `charges.create`, `folios.manage`, `admin`

Adds a charge for any good or service, and directly posts it. Can be used to charge items that are not part of the reservation,
but should appear on the invoice.


Requires 'allowed action': AddCharge.<br>You must have at least one of these scopes: 'charges.create, folios.manage'.<br>For fine-grained clients, you must have this permission: 'core.folios.post_charge'.

## Path parameters

- `folioId` string, required

## Headers

- `Idempotency-Key` string

## Request body

- CreateChargeModel
  - `serviceType` 'Other' | 'Accommodation' | 'FoodAndBeverages' | 'CityTax' | 'SecondCityTax', required: The service type, used by accounting to determine the correct revenue account
  - `vatType` 'Null' | 'VeryReduced' | 'Reduced' | 'Normal' | 'Without' | 'Special' | 'Special1' | 'Special2' | 'ReducedCovid19' | 'NormalCovid19' | 'Mixed', nullable: The VAT type, used by accounting to determine the correct vat amount and account. Ignored if ServiceId is provided.
  - `subAccountId` string, nullable: ID of the custom sub-account to post the charge to, used by accounting to determine the correct revenue account. Ignored if ServiceId is provided.
  - `serviceId` string, nullable: The serviceId is used only as a template for posting a charge and is not equivalent to booking a service on the reservation. Therefore, it does not affect service quotas or any related metrics.
  - `name` string, nullable: The name, article number, or other description of this charge
  - `amount` MonetaryValueModel, required
    - `amount` number, double, required
    - `currency` string, required
  - `receipt` string, nullable: Receipt for this transaction
  - `quantity` integer, nullable: The count of services provided. Defaults to 1. NOTE: this field will become required 07.05.2020.
  - `businessDate` string, date, nullable: The business date of the charge. Defaults to the current date. In some cases you might want to post the charges to the previous business date, this is only possible until 6 AM of the current day.

## Response `200`

Success.

- AddedChargeModel
  - `id` string, required: The id of the added charge
  - `feeChargeIds` string[], nullable: The fee charges ids

## Other responses

- `400`: Bad request.
- `401`: You are unauthorized.
- `403`: Forbidden.
- `404`: The Request-URI could not be found.
- `415`: Unsupported media type.
- `422`: Validation errors in the request body or query params.
- `499`: Client closed request.
- `500`: An unexpected error occurred.
- `503`: The server is currently unavailable. Please try later.

---

[API](https://skmtc.dev/apaleo/apis/apaleo-finance-api-not-safe-for-work.md) - [All operations](https://skmtc.dev/apaleo/apis/apaleo-finance-api-not-safe-for-work/llms.txt) - [OpenAPI document](https://skmtc.dev/apaleo/apis/apaleo-finance-api-not-safe-for-work/revisions/72cbd31f02f4?raw)
