Fiscalisation for Online Sales (Beta)
Sign and fiscalize receipts for Merchants and ISV/Resellers.
Available for Merchants and ISV Partners
Merchant
Signs (fiscalizes) a receipt for the authenticated merchant. Requires the AllowFiscalization role.
post
/fiscalization/v1/receipts:sign
Authorization
Authenticate using OAuth2 with a Bearer token. Pass the token in the request header:
Authorization: Bearer {access_token}
The
AllowFiscalization role must be enabled on the account. Contact Viva to request access.
Environments
| Environment | URL |
|---|---|
| Production | https://api.vivapayments.com/fiscalization/v1/receipts:sign |
| Demo | https://demo-api.vivapayments.com/fiscalization/v1/receipts:sign |
Request body
| Field | Type | Description |
|---|---|---|
| cbArea | string | |
| cbUser | object or null | |
| sessionId | string <uuid> | |
| cbCustomer | object or null | |
| ftReceiptCase | integer <int64> | |
| ftPosSystemId | string or null <uuid> | Uniquely identifies the software version of the ECR. |
| currencyCode | string | |
| cbReceiptAmount | integer <int64> | |
| ftReceiptCaseData | object or null | |
| cbReceiptReference | string | |
| cbReceiptMoment | string <date-time> | |
| cbPreviousReceiptReference | object or null | |
| cbPayItems | Array of objects (FiscalizationPayItem) | |
| cbChargeItems | Array of objects (FiscalizationChargeItem) |
cbPayItems — each object in the array
| Field | Type | Description |
|---|---|---|
| amount | integer <int64> | |
| position | integer <int32> | |
| ftPayItemCase | integer <int64> | |
| description | string | |
| currencyCode | string | |
| transactionId | string or null <uuid> | |
| moment | string <date-time> |
cbChargeItems — each object in the array
| Field | Type | Description |
|---|---|---|
| amount | integer <int64> | The total amount of the line (price * quantity). |
| unit | string | Unit of measurement. |
| position | integer <int32> | |
| vatRate | integer <int64> | |
| quantity | integer <int64> | |
| unitPrice | integer or null <int64> | The price of a single unit. |
| vatAmount | integer <int64> | |
| unitQuantity | integer or null <int64> | |
| description | string | |
| currencyCode | string | |
| ftChargeItemCase | integer <int64> | |
| productNumber | string | |
| productBarcode | string | |
| moment | string <date-time> |
Request sample
{
"cbChargeItems":
[
{
"amount": 1780,
"description": "product x",
"position": 1,
"moment": "2026-07-10T11:28:00Z",
"quantity": 200,
"vatRate": 0,
"vatAmount": 0,
"ftChargeItemCase": 5139205309155246098,
"currencyCode": 978
}
],
"cbPayItems":
[
{
"amount": 1780,
"description": "cash-payment",
"position": 1,
"currencyCode": "978",
"moment": "2026-07-10T11:28:00Z",
"ftPayItemCase": 5139205309155246082,
"transactionId": "27efa6c4-1e51-440e-96c8-e674a04c9184"
}
],
"sessionId" : "9e346121-cb51-4234-16cb-7c347bfe05d1",
"cbReceiptMoment": "2026-07-10T11:28:00Z",
"cbReceiptReference": "testreceiptreference1",
"cbReceiptAmount": 1780,
"ftReceiptCase": 5139205309155770370,
"currencyCode": "978",
"ftReceiptCaseData": {
"GR":
{
"MerchantVATID": "099565360",
"Series": "AB",
"AA": 123,
"HashAlg": "sha256",
"HashPayload": "099565360-AB-123-testreceiptreference1-2026-07-10T11:28:00Z-17.8"
}
}
}Response sample
{
"ftState": 0,
"ftStateData": {},
"ftReceiptIdentification": "string",
"ftCashBoxIdentification": "string",
"ftSignatures": [{}],
"transmissionIndicator": 0
}ISV / Reseller
Signs (fiscalizes) a receipt on behalf of a merchant, for ISV/reseller callers.
post
/fiscalization/v1/isv/receipts:sign?merchantId={merchantId}
Authorization
Authenticate using OAuth2 with a Bearer token. Pass the token in the request header:
Authorization: Bearer {access_token}
The
AllowFiscalization role must be enabled on the account. Contact Viva to request access.
Environments
| Environment | URL |
|---|---|
| Production | https://api.vivapayments.com/fiscalization/v1/isv/receipts:sign |
| Demo | https://demo-api.vivapayments.com/fiscalization/v1/isv/receipts:sign |
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| merchantId | string <uuid> | required | The merchant on whose behalf the receipt is signed. |
Request body
| Field | Type | Description |
|---|---|---|
| cbArea | string | |
| cbUser | object or null | |
| sessionId | string <uuid> | |
| cbCustomer | object or null | |
| ftReceiptCase | integer <int64> | |
| ftPosSystemId | string or null <uuid> | Uniquely identifies the software version of the ECR. |
| currencyCode | string | |
| cbReceiptAmount | integer <int64> | |
| ftReceiptCaseData | object or null | |
| cbReceiptReference | string | |
| cbReceiptMoment | string <date-time> | |
| cbPreviousReceiptReference | object or null | |
| cbPayItems | Array of objects (FiscalizationPayItem) | |
| cbChargeItems | Array of objects (FiscalizationChargeItem) |
cbPayItems — each object in the array
| Field | Type | Description |
|---|---|---|
| amount | integer <int64> | |
| position | integer <int32> | |
| ftPayItemCase | integer <int64> | |
| description | string | |
| currencyCode | string | |
| transactionId | string or null <uuid> | |
| moment | string <date-time> |
cbChargeItems — each object in the array
| Field | Type | Description |
|---|---|---|
| amount | integer <int64> | The total amount of the line (price * quantity). |
| unit | string | Unit of measurement. |
| position | integer <int32> | |
| vatRate | integer <int64> | |
| quantity | integer <int64> | |
| unitPrice | integer or null <int64> | The price of a single unit. |
| vatAmount | integer <int64> | |
| unitQuantity | integer or null <int64> | |
| description | string | |
| currencyCode | string | |
| ftChargeItemCase | integer <int64> | |
| productNumber | string | |
| productBarcode | string | |
| moment | string <date-time> |
Request sample
{
"cbChargeItems":
[
{
"amount": 1780,
"description": "product x",
"position": 1,
"moment": "2026-07-10T11:28:00Z",
"quantity": 200,
"vatRate": 0,
"vatAmount": 0,
"ftChargeItemCase": 5139205309155246098,
"currencyCode": 978
}
],
"cbPayItems":
[
{
"amount": 1780,
"description": "cash-payment",
"position": 1,
"currencyCode": "978",
"moment": "2026-07-10T11:28:00Z",
"ftPayItemCase": 5139205309155246082,
"transactionId": "27efa6c4-1e51-440e-96c8-e674a04c9184"
}
],
"sessionId" : "9e346121-cb51-4234-16cb-7c347bfe05d1",
"cbReceiptMoment": "2026-07-10T11:28:00Z",
"cbReceiptReference": "testreceiptreference1",
"cbReceiptAmount": 1780,
"ftReceiptCase": 5139205309155770370,
"currencyCode": "978",
"ftReceiptCaseData": {
"GR":
{
"MerchantVATID": "099565360",
"Series": "AB",
"AA": 123,
"HashAlg": "sha256",
"HashPayload": "099565360-AB-123-testreceiptreference1-2026-07-10T11:28:00Z-17.8"
}
}
}Response sample
{
"ftState": 0,
"ftStateData": {},
"ftReceiptIdentification": "string",
"ftCashBoxIdentification": "string",
"ftSignatures": [{}],
"transmissionIndicator": 0
}