Finalize payment
PUT https://wallet.paysera.com/rest/v1/payment/{paymentId}/finalize
Finalize a frozen payment, either overriding the freeze to complete it at the reserved price, or settling it at a smaller final price.
Send price and currency to finalize below the frozen amount — the difference is returned to the sender as a new transfer (e.g. a 3 EUR freeze finalized at 1 EUR returns 2 EUR).
Authorization​
This endpoint requires MAC (Message Authentication Code) authentication.
Authorization Header Format:
Authorization: MAC id="CLIENT_ID", ts="TIMESTAMP", nonce="RANDOM_STRING", mac="MAC_HASH", ext="body_hash=BODY_HASH"
Example:
Authorization: MAC id="a9b8c7d6e5f4g3h2", ts="1234567890", nonce="xyz123abc456def", mac="dGhpcyBpcyBhIHJhbmRvbSBtYWMgaGFzaCB2YWx1ZQ==", ext="body_hash=cmFuZG9tQm9keUhhc2hWYWx1ZQ%3D%3D"
For more details, see the Authentication section.
Parameters​
Path Parameters​
| Name | Type | Required | Description |
|---|---|---|---|
paymentId | integer | ✓ | Payment identifier |
Request Body​
The request body is optional. If omitted entirely (not sent as {}), the payment is completed at the originally reserved price, overriding the freeze. If a body is sent, both fields below are required.
| Field | Type | Required | Description |
|---|---|---|---|
price | integer | Yes, if body is sent | Final price in cents (must be ≤ original reserved price, > 0) |
currency | string | Yes, if body is sent | Currency code (must match original payment's currency) |
Example​
Request​
PUT https://wallet.paysera.com/rest/v1/payment/{paymentId}/finalize
Content-Type: application/json
Authorization: MAC id="CLIENT_ID", ts="TIMESTAMP", nonce="RANDOM_STRING", mac="MAC_HASH", ext="body_hash=BODY_HASH"
{
"price": 299,
"currency": "EUR"
}
Response​
{
"id": 2987,
"transaction_key": "pDAlAZ3z",
"created_at": 1355314332,
"status": "done",
"cancelable": false,
"price": 1299,
"currency": "EUR",
"price_decimal": "12.99",
"wallet": 123456,
"confirmed_at": 1355314365,
"freeze": {
"for": 3600
},
"freeze_for": 1,
"description": "Payment for order No. 1234",
"parameters": {
"orderid": 1234
},
"transfer_id": 12345678
}
AUTHORIZATION: HTTP
REQUEST
Base URL
https://wallet.paysera.com
Body REQUIRED
{
"price": 299,
"currency": "EUR"
}
RESPONSE
Payment finalized
{
"id": 2987,
"transaction_key": "pDAlAZ3z",
"created_at": 1355314332,
"status": "done",
"cancelable": false,
"price": 1299,
"currency": "EUR",
"price_decimal": "12.99",
"wallet": 123456,
"confirmed_at": 1355314365,
"freeze": {
"for": 3600
},
"freeze_for": 1,
"description": "Payment for order No. 1234",
"parameters": {
"orderid": 1234
},
"transfer_id": 12345678
}