# Process payment
**POST /transactions**
Process payment and notify user (payment receipt) if transaction is finished successfully.
The `priceIncludingVAT` and `currency` attributes are required, unless when announcing a transaction in which case those values are copied from the token and any given values are ignored.
Only use after approaching (fueling api), otherwise returns `403 Forbidden`.
## Servers
- Production server (stable release 2024-1): https://api.pace.cloud/pay/2024-1 (Production server (stable release 2024-1))
## Authentication methods
- OAuth2
- Oidc
## Parameters
#### Query parameters
- **announce** (boolean)
Announcing the transaction without actually capturing the payment. An announced transaction can later be processed only if providing the same `paymentToken`, `purposePRN`, and `providerPRN`. By announcing the transaction the token is locked to be used only with this transaction. The `priceIncludingVAT` and `currency` will be taken from the token, and upon capturing the transaction, must be equal or lower than what was announced.
## Body parameters
Content-type: application/vnd.api+json
- **data** (object)
## Responses
### 201: Created
#### Body Parameters: application/vnd.api+json (object)
- **data** (object)
### 400: Bad request
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 401: OAuth token missing or invalid or a linked identity is missing.
Linked identity missing is a special case where you need to make sure that
the user has additionally logged in / authorized with a third-party.
This is not relevant for most use-cases.
The specific error code that identifies a missing linked identity is `missing-linked-identity`
Example:
```
{
"errors": [
{
"id": "cbgmhslmp1o9or9kh1p0",
"title": "Missing linked identity for authorized access",
"detail": "Linked identity is needed to access this resource, please check why the user does not have a linked identity",
"status": "401",
"code": "missing-linked-identity"
}
]
}
```
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 403: The request was well-formed but was unable to be followed due to semantic errors. The following codes may be seen:
* `provider:payment-method-rejected`: The method was rejected by the payment provider
* `provider:authorization-denied`: The transaction was rejected by the payment provider
* `rule:product-denied`: Product restrictions forbid transaction, e.g., forbidden fuel type - token authorized only for Diesel but attempted to fuel Super.
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 404: Resource not found
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 406: The specified accept header is invalid
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 409: Resource conflicts
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 410: Resource is gone
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 415: The specified content type header is invalid
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 422: The request was well-formed but was unable to be followed due to semantic errors.
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 500: Internal server error
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
### 502: Error occurred while communicating with upstream services
#### Body Parameters: application/vnd.api+json (object)
- **errors** (array[object])
[Powered by Bump.sh](https://bump.sh)