class IngPaymentInitiationService implements PaymentInitiationService {

    @Override
    public Response<PeriodicPaymentInitiationMultipartBody> getPeriodicPain001PaymentInformation(PaymentProduct paymentProduct,
                                                                                                 String paymentId,
                                                                                                 RequestHeaders requestHeaders,
                                                                                                 RequestParams requestParams) {
        IngXmlPaymentProduct product = IngXmlPaymentProduct.of(paymentProduct);
        return paymentInitiationApi.getPeriodicPaymentDetailsXml(product,
            paymentId,
            requestHeaders.get(RequestHeaders.X_REQUEST_ID).orElse(null),
            requestHeaders.get(RequestHeaders.PSU_IP_ADDRESS).orElse(null),
            ingOauth2Service.getClientAuthentication())
            .map(mapper::map);
    }

    public  IngPaymentInitiationService(IngPaymentInitiationApi paymentInitiationApi,
                                       IngOauth2Service ingOauth2Service,
                                       LinksRewriter linksRewriter);

}