class BasePaymentInitiationService extends AbstractService implements PaymentInitiationService {

    @Override
    public Response<PaymentInitiationStatusResponse200Json> getPaymentInitiationStatus(PaymentService paymentService,
                                                                                       PaymentProduct paymentProduct,
                                                                                       String paymentId,
                                                                                       RequestHeaders requestHeaders,
                                                                                       RequestParams requestParams) {
        requireValid(validateGetPaymentInitiationStatus(paymentService, paymentProduct, paymentId, requestHeaders,
            requestParams));

        String uri = getPaymentInitiationStatusUri(paymentService, paymentProduct, paymentId);
        uri = buildUri(uri, requestParams);
        Map<String, String> headersMap = populateGetHeaders(requestHeaders.toMap());

        return httpClient.get(uri)
            .headers(headersMap)
            .send(jsonResponseHandler(PaymentInitiationStatusResponse200Json.class), interceptors);
    }

    public  BasePaymentInitiationService(Aspsp aspsp, HttpClient httpClient);
    public  BasePaymentInitiationService(Aspsp aspsp,
                                        HttpClient httpClient,
                                        Interceptor requestBuilderInterceptor);
    public  BasePaymentInitiationService(Aspsp aspsp,
                                        HttpClient httpClient,
                                        LinksRewriter linksRewriter);
    public  BasePaymentInitiationService(Aspsp aspsp,
                                        HttpClient httpClient,
                                        Interceptor requestBuilderInterceptor,
                                        LinksRewriter linksRewriter);
    public  BasePaymentInitiationService(Aspsp aspsp,
                                        HttpClient httpClient,
                                        List<Interceptor> interceptors,
                                        LinksRewriter linksRewriter);

}