# Incremental authorisation

Increase the authorised amount of a cloud device transaction.

## Increment an authorisation

/v1/cloud-device/{merchantPointOfSaleId}/transactions/{systemTransactionId}/modifications

Process a modification on a previously initiated cloud device transaction. Supported operations include captures, refunds, incremental authorisations, and voids.

### Request example

Use the following request to increment an authorisation. Replace `{merchantPointOfSaleId}` and `{systemTransactionId}` in the path with the device identifier and the `systemTransactionId` from the original authorisation.

```json
{
  "merchant": "MERCHANT-1",
  "site": "SITE-1",
  "merchantTransactionId": "TXN-001-INCREMENTAL",
  "merchantTransactionDate": "2025-01-27T09:00:00.000Z",
  "operation": "Incremental",
  "amounts": {
    "currencyCode": "EUR",
    "transaction": 35
  }
}
```

| Parameter | Description |
|  --- | --- |
| `merchantPointOfSaleId`string | The unique merchant point-of-sale device identifier. Path parameter. |
| `systemTransactionId`string | The `systemTransactionId` from the original transaction to be modified. Path parameter. |
| `merchant`string (≤ 20 characters) | A unique identifier assigned by PXP to represent a merchant entity, such as a store, hotel, or website, within the payment processing system. |
| `site`string (≤ 50 characters) | The unique identifier for the site associated with the transaction, as assigned by PXP. |
| `merchantTransactionId`string (≤ 50 characters) | A unique transaction reference assigned by you. Must be unique per transaction. |
| `merchantTransactionDate`date-time | The date and time when you initiated the transaction, in ISO 8601 format. |
| `amounts`object | Details about the transaction amount, including the currency and optional gratuity, cashback, shipping, or service charge values. Note that `gratuity` and `serviceCharge` can't be sent together. |
| `amounts.transaction`number | The new total authorised amount. Values after the decimal are zero-padded to the currency exponent (e.g., GBP 1.1 becomes 1.10). Requests are rejected if there are too many decimal places for the currency, or if a decimal is supplied for a zero-exponent currency (e.g., JPY 1.0). For `Incremental` operations, this must be greater than the original authorised amount. |
| `amounts.currencyCode`string (3 characters) | The currency code in ISO 4217 format. |
| `amounts.gratuity`number | The tip amount added by the customer, separate from the main transaction amount. Can't be used together with `serviceCharge`. |
| `operation`string | The operation to apply. Set this to `Incremental`.Possible values:`Capture``FinalCapture``Incremental``Refund``Void` |


### Response example

If your request is successful, you'll receive a `200` response with `state` set to `Authorised`.

```json
{
  "state": "Authorised",
  "stateData": {
    "code": "CRD000",
    "message": "Approved"
  },
  "approvalCode": "A123456",
  "merchantTransactionId": "TXN-001-INCREMENTAL",
  "systemTransactionId": "1ed768bb-e88a-4636-91ae-67927ccbb02b",
  "merchantTransactionDate": "2025-01-27T09:00:00.000Z",
  "providerTransactionId": "PROV-98765",
  "fundingData": {
    "maskedPrimaryAccountNumber": "************1234",
    "cardScheme": "Visa",
    "expiryMonth": "12",
    "expiryYear": "2025",
    "gatewayTokenId": "1ed768bb-e88a-4636-91ae-67927ccbb03a",
    "providerResponse": {
      "provider": "PXPFinancial",
      "code": "00",
      "message": "Approved",
      "merchantId": "77772182",
      "terminalId": "75836665"
    }
  },
  "amounts": {
    "transaction": 35,
    "currencyCode": "EUR"
  }
}
```