class PaymentController implements PaymentApi {

    @Override
    public ResponseEntity getPaymentInformation(String paymentService, String paymentProduct, String paymentId, UUID xRequestID, String digest,
                                                String signature, byte[] tpPSignatureCertificate, String psUIPAddress, String psUIPPort,
                                                String psUAccept, String psUAcceptCharset, String psUAcceptEncoding, String psUAcceptLanguage,
                                                String psUUserAgent, String psUHttpMethod, UUID psUDeviceID, String psUGeoLocation) {

        ResponseObject<CommonPayment> serviceResponse = xs2aPaymentService.getPaymentById(getPaymentType(paymentService), paymentProduct, paymentId);

        return serviceResponse.hasError()
                   ? responseErrorMapper.generateErrorResponse(serviceResponse.getError())
                   : responseMapper.ok(serviceResponse, paymentModelMapperPsd2::mapToGetPaymentResponse);
    }

}