Skip to content

Image API

Method Endpoint Description
POST /api/image/preview Preview merchant logo
POST /api/image/store Store merchant logo

POST /api/image/preview

Preview merchant image which might be printed on receipts

Request Body

Image data for which the preview should be generated

Schema: PreviewImageRequest

Examples

Image preview for both variants

Print and electronic receipt image preview with a PNG logo in Base64 format to see how it would fit on the receipt

{
  "imageData": "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADMSURBVFhH7ZRJDsMgDAD9id56zGP7jrwul76hkSOVUjBeMBQfOpJzCCIzWRR4LQauA8DXzILyxAr4FfECVmIKuMr3ozz9ea/EmoQ6gJNwaxKqgCQgJNyaBlvAflQSbk2DPqAh8Nw9YgqgCBHgwbd7AP+AKQHP+5ZGogp4f9UPuKkvUjIswBqRi3Fwv0QVgPREUPLuAMQS0ZK7ApBWRGtysUaOsAFIGaEdLWIAkv73irFi3lEKPXKkb9dAYgR4HmEPuS9WwOwQyhMjYCUnChgemKrC3ZUAAAAASUVORK5CYII=",
  "fitOnReceipt": true,
  "format": "BOTH"
}

Request for a printed logo preview

{
  "imageData": "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADMSURBVFhH7ZRJDsMgDAD9id56zGP7jrwul76hkSOVUjBeMBQfOpJzCCIzWRR4LQauA8DXzILyxAr4FfECVmIKuMr3ozz9ea/EmoQ6gJNwaxKqgCQgJNyaBlvAflQSbk2DPqAh8Nw9YgqgCBHgwbd7AP+AKQHP+5ZGogp4f9UPuKkvUjIswBqRi3Fwv0QVgPREUPLuAMQS0ZK7ApBWRGtysUaOsAFIGaEdLWIAkv73irFi3lEKPXKkb9dAYgR4HmEPuS9WwOwQyhMjYCUnChgemKrC3ZUAAAAASUVORK5CYII=",
  "format": "PRINT"
}
Electronic logo preview

Request for an electronic logo preview

{
  "imageData": "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADMSURBVFhH7ZRJDsMgDAD9id56zGP7jrwul76hkSOVUjBeMBQfOpJzCCIzWRR4LQauA8DXzILyxAr4FfECVmIKuMr3ozz9ea/EmoQ6gJNwaxKqgCQgJNyaBlvAflQSbk2DPqAh8Nw9YgqgCBHgwbd7AP+AKQHP+5ZGogp4f9UPuKkvUjIswBqRi3Fwv0QVgPREUPLuAMQS0ZK7ApBWRGtysUaOsAFIGaEdLWIAkv73irFi3lEKPXKkb9dAYgR4HmEPuS9WwOwQyhMjYCUnChgemKrC3ZUAAAAASUVORK5CYII=",
  "format": "ELECTRONIC"
}

Responses

200 — Response with PNG logos in BASE64 format

Schema: LogoPreviewResponse

Both previews response on receipt

The response contains bot printed and electronic receipt previews on the receipt to see how they would fit.

{
  "resultCode": 0,
  "printedLogoData": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAAgAQAAAADSivroAAAAr0lEQVR4XtXVsQkCURBF0QXNtYMtYUvY0jRbMDE0HKzEErQFQTDdcBVxzN9/wQ0+HzzhC24402UlnQ6lKfOuW6llKDJfupVahhgSeh51MUjoGroYJDRtdDFI6DToYpBQ9LoYJHQZdTFIKHa6GCSE/Glo0cEAoTnfOhkkND50MkBoiZtOBgh9hoNOBgh9t2edDBDK9UoXg4T2tc7I3OtikBDSMhS13lHUClV72dVCzA8CJOQrFK5viQAAAABJRU5ErkJggg==",
  "electronicLogoData": "iVBORw0KGgoAAAANSUhEUgAAAYwAAAB2CAYAAADbR6SBAAACJklEQVR4Xu3aMU7DMABA0VyCjZHDcg5Ox8IZglIVGkKEPh7j9yQPseXN7VfcLisABMtxAgDOCAYAiWAAkAgGAIlgAJAIBgCJYACQCAYAiWAAkAgGAIlgAJAIBgCJYACQCAYAiWAAkAgGAIlgAJAIBgCJYACQCAYAiWAAkAgGAIlgAJAIBgCJYACQCAYAiWAAkAgGAIlgAJAIBlNaluU2/mNkD1yJ08+URr/4R/fBFTj9ACSCAXf7t4fb9dPb+24VEAxYfwfi+AwIBtwcf5s4PgOCAUAkGAAkgsHUtqunj+eX4/S3be2vdZiJYDC1LRivy9NpFL5isa0DggE/orEf25xYwINgwHr/G+3JAB58IgBIBIMpjb49jO6DK3D6mdLIldPIHrgSpx+ARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOARDAASAQDgEQwAEgEA4BEMABIBAOA5BNo+/1j8WR0rQAAAABJRU5ErkJggg=="
}
Physical print preview

The response contains just the printed version of the logo. No negative space is used. The purpose of this response is to check how the shading is done, since the thermal printers do print only black colors.

{
  "resultCode": 0,
  "printedLogoData": "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgAQAAAABbAUdZAAAAZ0lEQVR4XmP4DwQM7f//P4QQ8////wkhwBL/n/cDifPzgUQ7P5CYrg8k5ssDif32IFb9f6g6JOLHf4YP/38BCfsn/xl+zL/wn+GPftd/hn8CC4GyLMxAogFk1AeQKXBtCHsRbgFJAADtbmwzR1+DpwAAAABJRU5ErkJggg=="
}
Electronic logo preview

The response contains just the electronic version of the logo, without any negative space. The purpose of this response is to check how the logo was scaled down.

{
  "resultCode": 0,
  "electronicLogoData": "iVBORw0KGgoAAAANSUhEUgAAAEwAAABhCAYAAAB8pUfDAAABVklEQVR4Xu3XQUrEMABA0V7CnUsP6zk8nRvPoGRgpBQZ+KWYDLwHWTQhpPNpFrN9k2zHCR4TLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLJoWbNu22yjO7LnatNPP/vCz+64y9/QntFSw/ddzu34fn7vVNSwT7Bjo+LyKpYI9el7Fmm+1MMGi6cHG1ft6fTtO/xprj9b/2xLB3reXP6PcY431VUwPNuyj7ceYWynWsESw4f635zhWs94bLW5asLNfz9l9V5l2+pkrd2bP1eae/oQEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIsEiwSLBIt+AJ6PUHe3MoB1AAAAAElFTkSuQmCC"
}

500 — Response if the input validation fails or the preview couldn't be made

Schema: ErrorResponse

Invalid input image

Response returned if the input image couldn't be parsed.

{
  "resultCode": 701,
  "error": "java.lang.IllegalArgumentException: Unsupported format"
}

POST /api/image/store

Store merchant image which will be printed on receipts

Request Body

Image data or null to remove the logo

Schema: StoreImageRequest

Examples

PNG Image upload

Saves the PNG logo in Base64 format into the CHDU memory.

{
  "imageData": "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADMSURBVFhH7ZRJDsMgDAD9id56zGP7jrwul76hkSOVUjBeMBQfOpJzCCIzWRR4LQauA8DXzILyxAr4FfECVmIKuMr3ozz9ea/EmoQ6gJNwaxKqgCQgJNyaBlvAflQSbk2DPqAh8Nw9YgqgCBHgwbd7AP+AKQHP+5ZGogp4f9UPuKkvUjIswBqRi3Fwv0QVgPREUPLuAMQS0ZK7ApBWRGtysUaOsAFIGaEdLWIAkv73irFi3lEKPXKkb9dAYgR4HmEPuS9WwOwQyhMjYCUnChgemKrC3ZUAAAAASUVORK5CYII="
}

Responses

500 — Some error occurred...

default — Response description...

Schema: GenericResponse