/*
 * Swagger of Opencellsoft Api
 * @#Introduction
 *
 * The version of the OpenAPI document: 7.3.1-SNAPSHOT
 * Contact: contact@opencellsoft.fr
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


package org.openapitools.client.api;

import org.openapitools.client.ApiCallback;
import org.openapitools.client.ApiClient;
import org.openapitools.client.ApiException;
import org.openapitools.client.ApiResponse;
import org.openapitools.client.Configuration;
import org.openapitools.client.Pair;
import org.openapitools.client.ProgressRequestBody;
import org.openapitools.client.ProgressResponseBody;

import com.google.gson.reflect.TypeToken;

import java.io.IOException;


import org.openapitools.client.model.ActionStatus;
import org.openapitools.client.model.CardPaymentMethodDto;
import org.openapitools.client.model.CardPaymentMethodTokenDto;
import org.openapitools.client.model.CardPaymentMethodTokensDto;
import org.openapitools.client.model.CustomerPaymentsResponse;
import org.openapitools.client.model.DDRequestBuilderDto;
import org.openapitools.client.model.DDRequestBuilderResponseDto;
import org.openapitools.client.model.GenericSequenceValueResponseDto;
import org.openapitools.client.model.PagingAndFiltering;
import org.openapitools.client.model.PaymentActionStatus;
import org.openapitools.client.model.PaymentDto;
import org.openapitools.client.model.PaymentGatewayDto;
import org.openapitools.client.model.PaymentGatewayResponseDto;
import org.openapitools.client.model.PaymentGatewayRumSequenceDto;
import org.openapitools.client.model.PaymentGatewayRumSequenceResponseDto;
import org.openapitools.client.model.PaymentHistoriesDto;
import org.openapitools.client.model.PaymentHostedCheckoutResponseDto;
import org.openapitools.client.model.PaymentMethodDto;
import org.openapitools.client.model.PaymentMethodTokenDto;
import org.openapitools.client.model.PaymentMethodTokensDto;
import org.openapitools.client.model.PaymentScheduleInstanceDto;
import org.openapitools.client.model.PaymentScheduleInstanceResponseDto;
import org.openapitools.client.model.PaymentScheduleInstancesDto;
import org.openapitools.client.model.PaymentScheduleTemplateDto;
import org.openapitools.client.model.PaymentScheduleTemplateResponseDto;
import org.openapitools.client.model.PaymentScheduleTemplatesDto;

import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class PaymentApi {
    private ApiClient localVarApiClient;

    public PaymentApi() {
        this(Configuration.getDefaultApiClient());
    }

    public PaymentApi(ApiClient apiClient) {
        this.localVarApiClient = apiClient;
    }

    public ApiClient getApiClient() {
        return localVarApiClient;
    }

    public void setApiClient(ApiClient apiClient) {
        this.localVarApiClient = apiClient;
    }

    /**
     * Build call for dELETEPaymentCardPaymentMethod1
     * @param id  id Id  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentCardPaymentMethod1Call(Long id, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/cardPaymentMethod";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (id != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("id", id));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "DELETE", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call dELETEPaymentCardPaymentMethod1ValidateBeforeCall(Long id, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = dELETEPaymentCardPaymentMethod1Call(id, _callback);
        return localVarCall;

    }

    /**
     *  Remove card payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     *  Remove card payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     * @param id  id Id  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus dELETEPaymentCardPaymentMethod1(Long id) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = dELETEPaymentCardPaymentMethod1WithHttpInfo(id);
        return localVarResp.getData();
    }

    /**
     *  Remove card payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     *  Remove card payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     * @param id  id Id  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> dELETEPaymentCardPaymentMethod1WithHttpInfo(Long id) throws ApiException {
        okhttp3.Call localVarCall = dELETEPaymentCardPaymentMethod1ValidateBeforeCall(id, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Remove card payment method. If it was marked as preferred, some other payment method will be marked as preferred   (asynchronously)
     *  Remove card payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     * @param id  id Id  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentCardPaymentMethod1Async(Long id, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = dELETEPaymentCardPaymentMethod1ValidateBeforeCall(id, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for dELETEPaymentDdRequestBuilder1
     * @param code  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentDdRequestBuilder1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (code != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("code", code));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "DELETE", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call dELETEPaymentDdRequestBuilder1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = dELETEPaymentDdRequestBuilder1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Remove ddRequest builder.  
     *  Remove ddRequest builder.  
     * @param code  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus dELETEPaymentDdRequestBuilder1(String code) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = dELETEPaymentDdRequestBuilder1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Remove ddRequest builder.  
     *  Remove ddRequest builder.  
     * @param code  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> dELETEPaymentDdRequestBuilder1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = dELETEPaymentDdRequestBuilder1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Remove ddRequest builder.   (asynchronously)
     *  Remove ddRequest builder.  
     * @param code  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentDdRequestBuilder1Async(String code, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = dELETEPaymentDdRequestBuilder1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for dELETEPaymentPaymentGateway1
     * @param code  code payment gateway&#39;s code  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentPaymentGateway1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (code != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("code", code));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "DELETE", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call dELETEPaymentPaymentGateway1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = dELETEPaymentPaymentGateway1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Remove payment gateway.  
     *  Remove payment gateway.  
     * @param code  code payment gateway&#39;s code  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus dELETEPaymentPaymentGateway1(String code) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = dELETEPaymentPaymentGateway1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Remove payment gateway.  
     *  Remove payment gateway.  
     * @param code  code payment gateway&#39;s code  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> dELETEPaymentPaymentGateway1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = dELETEPaymentPaymentGateway1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Remove payment gateway.   (asynchronously)
     *  Remove payment gateway.  
     * @param code  code payment gateway&#39;s code  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentPaymentGateway1Async(String code, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = dELETEPaymentPaymentGateway1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for dELETEPaymentPaymentGatewayRumSequenceCode1
     * @param code  code code of the RUM sequence  (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentPaymentGatewayRumSequenceCode1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/rumSequence/{code}"
            .replaceAll("\\{" + "code" + "\\}", localVarApiClient.escapeString(code.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "DELETE", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call dELETEPaymentPaymentGatewayRumSequenceCode1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'code' is set
        if (code == null) {
            throw new ApiException("Missing the required parameter 'code' when calling dELETEPaymentPaymentGatewayRumSequenceCode1(Async)");
        }
        

        okhttp3.Call localVarCall = dELETEPaymentPaymentGatewayRumSequenceCode1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Deletes the RUM sequence with the specified code. 
     *  Deletes the RUM sequence with the specified code. 
     * @param code  code code of the RUM sequence  (required)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus dELETEPaymentPaymentGatewayRumSequenceCode1(String code) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = dELETEPaymentPaymentGatewayRumSequenceCode1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Deletes the RUM sequence with the specified code. 
     *  Deletes the RUM sequence with the specified code. 
     * @param code  code code of the RUM sequence  (required)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> dELETEPaymentPaymentGatewayRumSequenceCode1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = dELETEPaymentPaymentGatewayRumSequenceCode1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Deletes the RUM sequence with the specified code.  (asynchronously)
     *  Deletes the RUM sequence with the specified code. 
     * @param code  code code of the RUM sequence  (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentPaymentGatewayRumSequenceCode1Async(String code, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = dELETEPaymentPaymentGatewayRumSequenceCode1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for dELETEPaymentPaymentMethod1
     * @param id  id Id  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentPaymentMethod1Call(Long id, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentMethod";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (id != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("id", id));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "DELETE", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call dELETEPaymentPaymentMethod1ValidateBeforeCall(Long id, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = dELETEPaymentPaymentMethod1Call(id, _callback);
        return localVarCall;

    }

    /**
     *  Remove payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     *  Remove payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     * @param id  id Id  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus dELETEPaymentPaymentMethod1(Long id) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = dELETEPaymentPaymentMethod1WithHttpInfo(id);
        return localVarResp.getData();
    }

    /**
     *  Remove payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     *  Remove payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     * @param id  id Id  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> dELETEPaymentPaymentMethod1WithHttpInfo(Long id) throws ApiException {
        okhttp3.Call localVarCall = dELETEPaymentPaymentMethod1ValidateBeforeCall(id, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Remove payment method. If it was marked as preferred, some other payment method will be marked as preferred   (asynchronously)
     *  Remove payment method. If it was marked as preferred, some other payment method will be marked as preferred  
     * @param id  id Id  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentPaymentMethod1Async(Long id, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = dELETEPaymentPaymentMethod1ValidateBeforeCall(id, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for dELETEPaymentPaymentScheduleTemplate1
     * @param paymentScheduleTemplateCode  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentPaymentScheduleTemplate1Call(String paymentScheduleTemplateCode, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleTemplate";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (paymentScheduleTemplateCode != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("paymentScheduleTemplateCode", paymentScheduleTemplateCode));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "DELETE", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call dELETEPaymentPaymentScheduleTemplate1ValidateBeforeCall(String paymentScheduleTemplateCode, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = dELETEPaymentPaymentScheduleTemplate1Call(paymentScheduleTemplateCode, _callback);
        return localVarCall;

    }

    /**
     *  remove  payment Schedules template.  
     *  remove  payment Schedules template.  
     * @param paymentScheduleTemplateCode  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus dELETEPaymentPaymentScheduleTemplate1(String paymentScheduleTemplateCode) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = dELETEPaymentPaymentScheduleTemplate1WithHttpInfo(paymentScheduleTemplateCode);
        return localVarResp.getData();
    }

    /**
     *  remove  payment Schedules template.  
     *  remove  payment Schedules template.  
     * @param paymentScheduleTemplateCode  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> dELETEPaymentPaymentScheduleTemplate1WithHttpInfo(String paymentScheduleTemplateCode) throws ApiException {
        okhttp3.Call localVarCall = dELETEPaymentPaymentScheduleTemplate1ValidateBeforeCall(paymentScheduleTemplateCode, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  remove  payment Schedules template.   (asynchronously)
     *  remove  payment Schedules template.  
     * @param paymentScheduleTemplateCode  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call dELETEPaymentPaymentScheduleTemplate1Async(String paymentScheduleTemplateCode, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = dELETEPaymentPaymentScheduleTemplate1ValidateBeforeCall(paymentScheduleTemplateCode, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETIBaseVersion91
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status with version number as a message  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETIBaseVersion91Call(final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/version";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETIBaseVersion91ValidateBeforeCall(final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETIBaseVersion91Call(_callback);
        return localVarCall;

    }

    /**
     *  Get version of application  
     *  Get version of application  
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status with version number as a message  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus gETIBaseVersion91() throws ApiException {
        ApiResponse<ActionStatus> localVarResp = gETIBaseVersion91WithHttpInfo();
        return localVarResp.getData();
    }

    /**
     *  Get version of application  
     *  Get version of application  
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status with version number as a message  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> gETIBaseVersion91WithHttpInfo() throws ApiException {
        okhttp3.Call localVarCall = gETIBaseVersion91ValidateBeforeCall(null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Get version of application   (asynchronously)
     *  Get version of application  
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status with version number as a message  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETIBaseVersion91Async(final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETIBaseVersion91ValidateBeforeCall(_callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentCardPaymentMethod1
     * @param id  id Id  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Card payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentCardPaymentMethod1Call(Long id, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/cardPaymentMethod";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (id != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("id", id));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentCardPaymentMethod1ValidateBeforeCall(Long id, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentCardPaymentMethod1Call(id, _callback);
        return localVarCall;

    }

    /**
     *  Retrieve card payment method by its id.  
     *  Retrieve card payment method by its id.  
     * @param id  id Id  (optional)
     * @return CardPaymentMethodTokenDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Card payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public CardPaymentMethodTokenDto gETPaymentCardPaymentMethod1(Long id) throws ApiException {
        ApiResponse<CardPaymentMethodTokenDto> localVarResp = gETPaymentCardPaymentMethod1WithHttpInfo(id);
        return localVarResp.getData();
    }

    /**
     *  Retrieve card payment method by its id.  
     *  Retrieve card payment method by its id.  
     * @param id  id Id  (optional)
     * @return ApiResponse&lt;CardPaymentMethodTokenDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Card payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<CardPaymentMethodTokenDto> gETPaymentCardPaymentMethod1WithHttpInfo(Long id) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentCardPaymentMethod1ValidateBeforeCall(id, null);
        Type localVarReturnType = new TypeToken<CardPaymentMethodTokenDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Retrieve card payment method by its id.   (asynchronously)
     *  Retrieve card payment method by its id.  
     * @param id  id Id  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Card payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentCardPaymentMethod1Async(Long id, final ApiCallback<CardPaymentMethodTokenDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentCardPaymentMethod1ValidateBeforeCall(id, _callback);
        Type localVarReturnType = new TypeToken<CardPaymentMethodTokenDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentCardPaymentMethodList1
     * @param customerAccountId  customerAccountId Customer account id  (optional)
     * @param customerAccountCode  customerAccountCode Customer account code  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  A list of card payment methods  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentCardPaymentMethodList1Call(Long customerAccountId, String customerAccountCode, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/cardPaymentMethod/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (customerAccountId != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("customerAccountId", customerAccountId));
        }

        if (customerAccountCode != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("customerAccountCode", customerAccountCode));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentCardPaymentMethodList1ValidateBeforeCall(Long customerAccountId, String customerAccountCode, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentCardPaymentMethodList1Call(customerAccountId, customerAccountCode, _callback);
        return localVarCall;

    }

    /**
     *  List available card payment methods for a given customer account identified either by id or by code.  
     *  List available card payment methods for a given customer account identified either by id or by code.  
     * @param customerAccountId  customerAccountId Customer account id  (optional)
     * @param customerAccountCode  customerAccountCode Customer account code  (optional)
     * @return CardPaymentMethodTokensDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  A list of card payment methods  </td><td>  -  </td></tr>
     </table>
     */
    public CardPaymentMethodTokensDto gETPaymentCardPaymentMethodList1(Long customerAccountId, String customerAccountCode) throws ApiException {
        ApiResponse<CardPaymentMethodTokensDto> localVarResp = gETPaymentCardPaymentMethodList1WithHttpInfo(customerAccountId, customerAccountCode);
        return localVarResp.getData();
    }

    /**
     *  List available card payment methods for a given customer account identified either by id or by code.  
     *  List available card payment methods for a given customer account identified either by id or by code.  
     * @param customerAccountId  customerAccountId Customer account id  (optional)
     * @param customerAccountCode  customerAccountCode Customer account code  (optional)
     * @return ApiResponse&lt;CardPaymentMethodTokensDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  A list of card payment methods  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<CardPaymentMethodTokensDto> gETPaymentCardPaymentMethodList1WithHttpInfo(Long customerAccountId, String customerAccountCode) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentCardPaymentMethodList1ValidateBeforeCall(customerAccountId, customerAccountCode, null);
        Type localVarReturnType = new TypeToken<CardPaymentMethodTokensDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List available card payment methods for a given customer account identified either by id or by code.   (asynchronously)
     *  List available card payment methods for a given customer account identified either by id or by code.  
     * @param customerAccountId  customerAccountId Customer account id  (optional)
     * @param customerAccountCode  customerAccountCode Customer account code  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  A list of card payment methods  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentCardPaymentMethodList1Async(Long customerAccountId, String customerAccountCode, final ApiCallback<CardPaymentMethodTokensDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentCardPaymentMethodList1ValidateBeforeCall(customerAccountId, customerAccountCode, _callback);
        Type localVarReturnType = new TypeToken<CardPaymentMethodTokensDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentCustomerPayment1
     * @param customerAccountCode  customerAccountCode customer account code  (optional)
     * @param pagingAndFiltering  pagingAndFiltering  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  list of customer&#39;s response.  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentCustomerPayment1Call(String customerAccountCode, PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = pagingAndFiltering;

        // create path and map variables
        String localVarPath = "/payment/customerPayment";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (customerAccountCode != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("customerAccountCode", customerAccountCode));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentCustomerPayment1ValidateBeforeCall(String customerAccountCode, PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentCustomerPayment1Call(customerAccountCode, pagingAndFiltering, _callback);
        return localVarCall;

    }

    /**
     *  Returns a list of account operations along with the balance of a customer.  
     *  Returns a list of account operations along with the balance of a customer.  
     * @param customerAccountCode  customerAccountCode customer account code  (optional)
     * @param pagingAndFiltering  pagingAndFiltering  (optional)
     * @return CustomerPaymentsResponse
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  list of customer&#39;s response.  </td><td>  -  </td></tr>
     </table>
     */
    public CustomerPaymentsResponse gETPaymentCustomerPayment1(String customerAccountCode, PagingAndFiltering pagingAndFiltering) throws ApiException {
        ApiResponse<CustomerPaymentsResponse> localVarResp = gETPaymentCustomerPayment1WithHttpInfo(customerAccountCode, pagingAndFiltering);
        return localVarResp.getData();
    }

    /**
     *  Returns a list of account operations along with the balance of a customer.  
     *  Returns a list of account operations along with the balance of a customer.  
     * @param customerAccountCode  customerAccountCode customer account code  (optional)
     * @param pagingAndFiltering  pagingAndFiltering  (optional)
     * @return ApiResponse&lt;CustomerPaymentsResponse&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  list of customer&#39;s response.  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<CustomerPaymentsResponse> gETPaymentCustomerPayment1WithHttpInfo(String customerAccountCode, PagingAndFiltering pagingAndFiltering) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentCustomerPayment1ValidateBeforeCall(customerAccountCode, pagingAndFiltering, null);
        Type localVarReturnType = new TypeToken<CustomerPaymentsResponse>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Returns a list of account operations along with the balance of a customer.   (asynchronously)
     *  Returns a list of account operations along with the balance of a customer.  
     * @param customerAccountCode  customerAccountCode customer account code  (optional)
     * @param pagingAndFiltering  pagingAndFiltering  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  list of customer&#39;s response.  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentCustomerPayment1Async(String customerAccountCode, PagingAndFiltering pagingAndFiltering, final ApiCallback<CustomerPaymentsResponse> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentCustomerPayment1ValidateBeforeCall(customerAccountCode, pagingAndFiltering, _callback);
        Type localVarReturnType = new TypeToken<CustomerPaymentsResponse>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentDdRequestBuilder1
     * @param code  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  ddRequest builder DTO  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentDdRequestBuilder1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (code != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("code", code));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentDdRequestBuilder1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentDdRequestBuilder1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Retrieve ddRequest builder by its code.  
     *  Retrieve ddRequest builder by its code.  
     * @param code  (optional)
     * @return DDRequestBuilderResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  ddRequest builder DTO  </td><td>  -  </td></tr>
     </table>
     */
    public DDRequestBuilderResponseDto gETPaymentDdRequestBuilder1(String code) throws ApiException {
        ApiResponse<DDRequestBuilderResponseDto> localVarResp = gETPaymentDdRequestBuilder1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Retrieve ddRequest builder by its code.  
     *  Retrieve ddRequest builder by its code.  
     * @param code  (optional)
     * @return ApiResponse&lt;DDRequestBuilderResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  ddRequest builder DTO  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<DDRequestBuilderResponseDto> gETPaymentDdRequestBuilder1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentDdRequestBuilder1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Retrieve ddRequest builder by its code.   (asynchronously)
     *  Retrieve ddRequest builder by its code.  
     * @param code  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  ddRequest builder DTO  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentDdRequestBuilder1Async(String code, final ApiCallback<DDRequestBuilderResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentDdRequestBuilder1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentDdRequestBuilderList1
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An ddRequest builder list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentDdRequestBuilderList1Call(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (query != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("query", query));
        }

        if (fields != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("fields", fields));
        }

        if (offset != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("offset", offset));
        }

        if (limit != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
        }

        if (sortBy != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
        }

        if (sortOrder != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortOrder", sortOrder));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentDdRequestBuilderList1ValidateBeforeCall(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentDdRequestBuilderList1Call(query, fields, offset, limit, sortBy, sortOrder, _callback);
        return localVarCall;

    }

    /**
     *  List DDRequest Builders matching a given criteria  
     *  List DDRequest Builders matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @return DDRequestBuilderResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An ddRequest builder list  </td><td>  -  </td></tr>
     </table>
     */
    public DDRequestBuilderResponseDto gETPaymentDdRequestBuilderList1(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        ApiResponse<DDRequestBuilderResponseDto> localVarResp = gETPaymentDdRequestBuilderList1WithHttpInfo(query, fields, offset, limit, sortBy, sortOrder);
        return localVarResp.getData();
    }

    /**
     *  List DDRequest Builders matching a given criteria  
     *  List DDRequest Builders matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @return ApiResponse&lt;DDRequestBuilderResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An ddRequest builder list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<DDRequestBuilderResponseDto> gETPaymentDdRequestBuilderList1WithHttpInfo(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentDdRequestBuilderList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, null);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List DDRequest Builders matching a given criteria   (asynchronously)
     *  List DDRequest Builders matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An ddRequest builder list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentDdRequestBuilderList1Async(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback<DDRequestBuilderResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentDdRequestBuilderList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, _callback);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentHistoryList1
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An invoice list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentHistoryList1Call(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/history/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (query != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("query", query));
        }

        if (fields != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("fields", fields));
        }

        if (offset != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("offset", offset));
        }

        if (limit != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
        }

        if (sortBy != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
        }

        if (sortOrder != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortOrder", sortOrder));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentHistoryList1ValidateBeforeCall(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentHistoryList1Call(query, fields, offset, limit, sortBy, sortOrder, _callback);
        return localVarCall;

    }

    /**
     *  List Payment matching a given criteria.  
     *  List Payment matching a given criteria.  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @return PaymentHistoriesDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An invoice list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentHistoriesDto gETPaymentHistoryList1(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        ApiResponse<PaymentHistoriesDto> localVarResp = gETPaymentHistoryList1WithHttpInfo(query, fields, offset, limit, sortBy, sortOrder);
        return localVarResp.getData();
    }

    /**
     *  List Payment matching a given criteria.  
     *  List Payment matching a given criteria.  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @return ApiResponse&lt;PaymentHistoriesDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An invoice list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentHistoriesDto> gETPaymentHistoryList1WithHttpInfo(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentHistoryList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, null);
        Type localVarReturnType = new TypeToken<PaymentHistoriesDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List Payment matching a given criteria.   (asynchronously)
     *  List Payment matching a given criteria.  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An invoice list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentHistoryList1Async(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback<PaymentHistoriesDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentHistoryList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, _callback);
        Type localVarReturnType = new TypeToken<PaymentHistoriesDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentGateway1
     * @param code  code payment gateway&#39;s code  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentGateway1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (code != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("code", code));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentGateway1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentGateway1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Retrieve payment gateway by its code.  
     *  Retrieve payment gateway by its code.  
     * @param code  code payment gateway&#39;s code  (optional)
     * @return PaymentGatewayResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentGatewayResponseDto gETPaymentPaymentGateway1(String code) throws ApiException {
        ApiResponse<PaymentGatewayResponseDto> localVarResp = gETPaymentPaymentGateway1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Retrieve payment gateway by its code.  
     *  Retrieve payment gateway by its code.  
     * @param code  code payment gateway&#39;s code  (optional)
     * @return ApiResponse&lt;PaymentGatewayResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentGatewayResponseDto> gETPaymentPaymentGateway1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentGateway1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Retrieve payment gateway by its code.   (asynchronously)
     *  Retrieve payment gateway by its code.  
     * @param code  code payment gateway&#39;s code  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentGateway1Async(String code, final ApiCallback<PaymentGatewayResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentGateway1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentGatewayGetHostedCheckoutUrl1
     * @param ca  (optional)
     * @param returnUrl  (optional)
     * @param locale  (optional, default to &quot;fr_FR&quot;)
     * @param amount  (optional, default to &quot;100&quot;)
     * @param currencyCode  (optional, default to &quot;EUR&quot;)
     * @param authorizationMode  (optional, default to &quot;FINAL_AUTHORIZATION&quot;)
     * @param countryCode  (optional, default to &quot;fr&quot;)
     * @param skipAuthentication  (optional, default to false)
     * @param gatewayPaymentName  (optional, default to &quot;INGENICO_GC&quot;)
     * @param variant  (optional, default to &quot;101&quot;)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the PaymentHostedCheckoutResponseDto  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentGatewayGetHostedCheckoutUrl1Call(String ca, String returnUrl, String locale, String amount, String currencyCode, String authorizationMode, String countryCode, Boolean skipAuthentication, String gatewayPaymentName, String variant, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/getHostedCheckoutUrl";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (ca != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("ca", ca));
        }

        if (returnUrl != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("returnUrl", returnUrl));
        }

        if (locale != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("locale", locale));
        }

        if (amount != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("amount", amount));
        }

        if (currencyCode != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("currencyCode", currencyCode));
        }

        if (authorizationMode != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("authorizationMode", authorizationMode));
        }

        if (countryCode != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("countryCode", countryCode));
        }

        if (skipAuthentication != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("skipAuthentication", skipAuthentication));
        }

        if (gatewayPaymentName != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("gatewayPaymentName", gatewayPaymentName));
        }

        if (variant != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("variant", variant));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentGatewayGetHostedCheckoutUrl1ValidateBeforeCall(String ca, String returnUrl, String locale, String amount, String currencyCode, String authorizationMode, String countryCode, Boolean skipAuthentication, String gatewayPaymentName, String variant, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentGatewayGetHostedCheckoutUrl1Call(ca, returnUrl, locale, amount, currencyCode, authorizationMode, countryCode, skipAuthentication, gatewayPaymentName, variant, _callback);
        return localVarCall;

    }

    /**
     *  Get the Hosted Checkout URL for payment. 
     *  Get the Hosted Checkout URL for payment. 
     * @param ca  (optional)
     * @param returnUrl  (optional)
     * @param locale  (optional, default to &quot;fr_FR&quot;)
     * @param amount  (optional, default to &quot;100&quot;)
     * @param currencyCode  (optional, default to &quot;EUR&quot;)
     * @param authorizationMode  (optional, default to &quot;FINAL_AUTHORIZATION&quot;)
     * @param countryCode  (optional, default to &quot;fr&quot;)
     * @param skipAuthentication  (optional, default to false)
     * @param gatewayPaymentName  (optional, default to &quot;INGENICO_GC&quot;)
     * @param variant  (optional, default to &quot;101&quot;)
     * @return PaymentHostedCheckoutResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the PaymentHostedCheckoutResponseDto  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentHostedCheckoutResponseDto gETPaymentPaymentGatewayGetHostedCheckoutUrl1(String ca, String returnUrl, String locale, String amount, String currencyCode, String authorizationMode, String countryCode, Boolean skipAuthentication, String gatewayPaymentName, String variant) throws ApiException {
        ApiResponse<PaymentHostedCheckoutResponseDto> localVarResp = gETPaymentPaymentGatewayGetHostedCheckoutUrl1WithHttpInfo(ca, returnUrl, locale, amount, currencyCode, authorizationMode, countryCode, skipAuthentication, gatewayPaymentName, variant);
        return localVarResp.getData();
    }

    /**
     *  Get the Hosted Checkout URL for payment. 
     *  Get the Hosted Checkout URL for payment. 
     * @param ca  (optional)
     * @param returnUrl  (optional)
     * @param locale  (optional, default to &quot;fr_FR&quot;)
     * @param amount  (optional, default to &quot;100&quot;)
     * @param currencyCode  (optional, default to &quot;EUR&quot;)
     * @param authorizationMode  (optional, default to &quot;FINAL_AUTHORIZATION&quot;)
     * @param countryCode  (optional, default to &quot;fr&quot;)
     * @param skipAuthentication  (optional, default to false)
     * @param gatewayPaymentName  (optional, default to &quot;INGENICO_GC&quot;)
     * @param variant  (optional, default to &quot;101&quot;)
     * @return ApiResponse&lt;PaymentHostedCheckoutResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the PaymentHostedCheckoutResponseDto  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentHostedCheckoutResponseDto> gETPaymentPaymentGatewayGetHostedCheckoutUrl1WithHttpInfo(String ca, String returnUrl, String locale, String amount, String currencyCode, String authorizationMode, String countryCode, Boolean skipAuthentication, String gatewayPaymentName, String variant) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentGatewayGetHostedCheckoutUrl1ValidateBeforeCall(ca, returnUrl, locale, amount, currencyCode, authorizationMode, countryCode, skipAuthentication, gatewayPaymentName, variant, null);
        Type localVarReturnType = new TypeToken<PaymentHostedCheckoutResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Get the Hosted Checkout URL for payment.  (asynchronously)
     *  Get the Hosted Checkout URL for payment. 
     * @param ca  (optional)
     * @param returnUrl  (optional)
     * @param locale  (optional, default to &quot;fr_FR&quot;)
     * @param amount  (optional, default to &quot;100&quot;)
     * @param currencyCode  (optional, default to &quot;EUR&quot;)
     * @param authorizationMode  (optional, default to &quot;FINAL_AUTHORIZATION&quot;)
     * @param countryCode  (optional, default to &quot;fr&quot;)
     * @param skipAuthentication  (optional, default to false)
     * @param gatewayPaymentName  (optional, default to &quot;INGENICO_GC&quot;)
     * @param variant  (optional, default to &quot;101&quot;)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the PaymentHostedCheckoutResponseDto  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentGatewayGetHostedCheckoutUrl1Async(String ca, String returnUrl, String locale, String amount, String currencyCode, String authorizationMode, String countryCode, Boolean skipAuthentication, String gatewayPaymentName, String variant, final ApiCallback<PaymentHostedCheckoutResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentGatewayGetHostedCheckoutUrl1ValidateBeforeCall(ca, returnUrl, locale, amount, currencyCode, authorizationMode, countryCode, skipAuthentication, gatewayPaymentName, variant, _callback);
        Type localVarReturnType = new TypeToken<PaymentHostedCheckoutResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentGatewayList1
     * @param query  query Search criteria. Query is composed of the following: filterKey1:filterValue1|filterKey2:filterValue2  (optional)
     * @param fields  fields Data retrieval options/fieldnames separated by a comma  (optional)
     * @param offset  offset Pagination - from record number  (optional)
     * @param limit  limit Pagination - number of records to retrieve  (optional)
     * @param sortBy  sortBy Sorting - field to sort by - a field from a main entity being searched. See Data model for a list of fields.  (optional, default to &quot;id&quot;)
     * @param sortOrder  sortOrder Sorting - sort order.  (optional, default to ASCENDING)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment gateway list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentGatewayList1Call(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (query != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("query", query));
        }

        if (fields != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("fields", fields));
        }

        if (offset != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("offset", offset));
        }

        if (limit != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
        }

        if (sortBy != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
        }

        if (sortOrder != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortOrder", sortOrder));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentGatewayList1ValidateBeforeCall(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentGatewayList1Call(query, fields, offset, limit, sortBy, sortOrder, _callback);
        return localVarCall;

    }

    /**
     *  List payment gateways matching a given criteria  
     *  List payment gateways matching a given criteria  
     * @param query  query Search criteria. Query is composed of the following: filterKey1:filterValue1|filterKey2:filterValue2  (optional)
     * @param fields  fields Data retrieval options/fieldnames separated by a comma  (optional)
     * @param offset  offset Pagination - from record number  (optional)
     * @param limit  limit Pagination - number of records to retrieve  (optional)
     * @param sortBy  sortBy Sorting - field to sort by - a field from a main entity being searched. See Data model for a list of fields.  (optional, default to &quot;id&quot;)
     * @param sortOrder  sortOrder Sorting - sort order.  (optional, default to ASCENDING)
     * @return PaymentGatewayResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment gateway list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentGatewayResponseDto gETPaymentPaymentGatewayList1(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        ApiResponse<PaymentGatewayResponseDto> localVarResp = gETPaymentPaymentGatewayList1WithHttpInfo(query, fields, offset, limit, sortBy, sortOrder);
        return localVarResp.getData();
    }

    /**
     *  List payment gateways matching a given criteria  
     *  List payment gateways matching a given criteria  
     * @param query  query Search criteria. Query is composed of the following: filterKey1:filterValue1|filterKey2:filterValue2  (optional)
     * @param fields  fields Data retrieval options/fieldnames separated by a comma  (optional)
     * @param offset  offset Pagination - from record number  (optional)
     * @param limit  limit Pagination - number of records to retrieve  (optional)
     * @param sortBy  sortBy Sorting - field to sort by - a field from a main entity being searched. See Data model for a list of fields.  (optional, default to &quot;id&quot;)
     * @param sortOrder  sortOrder Sorting - sort order.  (optional, default to ASCENDING)
     * @return ApiResponse&lt;PaymentGatewayResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment gateway list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentGatewayResponseDto> gETPaymentPaymentGatewayList1WithHttpInfo(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentGatewayList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, null);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List payment gateways matching a given criteria   (asynchronously)
     *  List payment gateways matching a given criteria  
     * @param query  query Search criteria. Query is composed of the following: filterKey1:filterValue1|filterKey2:filterValue2  (optional)
     * @param fields  fields Data retrieval options/fieldnames separated by a comma  (optional)
     * @param offset  offset Pagination - from record number  (optional)
     * @param limit  limit Pagination - number of records to retrieve  (optional)
     * @param sortBy  sortBy Sorting - field to sort by - a field from a main entity being searched. See Data model for a list of fields.  (optional, default to &quot;id&quot;)
     * @param sortOrder  sortOrder Sorting - sort order.  (optional, default to ASCENDING)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment gateway list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentGatewayList1Async(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback<PaymentGatewayResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentGatewayList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, _callback);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentGatewayRumSequenceCode1
     * @param code  code code of the RUM sequence   (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentGatewayRumSequenceCode1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/rumSequence/{code}"
            .replaceAll("\\{" + "code" + "\\}", localVarApiClient.escapeString(code.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentGatewayRumSequenceCode1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'code' is set
        if (code == null) {
            throw new ApiException("Missing the required parameter 'code' when calling gETPaymentPaymentGatewayRumSequenceCode1(Async)");
        }
        

        okhttp3.Call localVarCall = gETPaymentPaymentGatewayRumSequenceCode1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Finds the RUM sequence with the specified code. 
     *  Finds the RUM sequence with the specified code. 
     * @param code  code code of the RUM sequence   (required)
     * @return PaymentGatewayRumSequenceResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentGatewayRumSequenceResponseDto gETPaymentPaymentGatewayRumSequenceCode1(String code) throws ApiException {
        ApiResponse<PaymentGatewayRumSequenceResponseDto> localVarResp = gETPaymentPaymentGatewayRumSequenceCode1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Finds the RUM sequence with the specified code. 
     *  Finds the RUM sequence with the specified code. 
     * @param code  code code of the RUM sequence   (required)
     * @return ApiResponse&lt;PaymentGatewayRumSequenceResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentGatewayRumSequenceResponseDto> gETPaymentPaymentGatewayRumSequenceCode1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentGatewayRumSequenceCode1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<PaymentGatewayRumSequenceResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Finds the RUM sequence with the specified code.  (asynchronously)
     *  Finds the RUM sequence with the specified code. 
     * @param code  code code of the RUM sequence   (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentGatewayRumSequenceCode1Async(String code, final ApiCallback<PaymentGatewayRumSequenceResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentGatewayRumSequenceCode1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<PaymentGatewayRumSequenceResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentMethod1
     * @param id  id Id  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentMethod1Call(Long id, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentMethod";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (id != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("id", id));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentMethod1ValidateBeforeCall(Long id, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentMethod1Call(id, _callback);
        return localVarCall;

    }

    /**
     *  Retrieve payment method by its id.  
     *  Retrieve payment method by its id.  
     * @param id  id Id  (optional)
     * @return PaymentMethodTokenDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentMethodTokenDto gETPaymentPaymentMethod1(Long id) throws ApiException {
        ApiResponse<PaymentMethodTokenDto> localVarResp = gETPaymentPaymentMethod1WithHttpInfo(id);
        return localVarResp.getData();
    }

    /**
     *  Retrieve payment method by its id.  
     *  Retrieve payment method by its id.  
     * @param id  id Id  (optional)
     * @return ApiResponse&lt;PaymentMethodTokenDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentMethodTokenDto> gETPaymentPaymentMethod1WithHttpInfo(Long id) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentMethod1ValidateBeforeCall(id, null);
        Type localVarReturnType = new TypeToken<PaymentMethodTokenDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Retrieve payment method by its id.   (asynchronously)
     *  Retrieve payment method by its id.  
     * @param id  id Id  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment DTO  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentMethod1Async(Long id, final ApiCallback<PaymentMethodTokenDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentMethod1ValidateBeforeCall(id, _callback);
        Type localVarReturnType = new TypeToken<PaymentMethodTokenDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentMethodList1
     * @param query  query Search criteria. Query is composed of the following: filterKey1:filterValue1|filterKey2:filterValue2  (optional)
     * @param fields  fields Data retrieval options/fieldnames separated by a comma  (optional)
     * @param offset  offset Pagination - from record number  (optional)
     * @param limit  limit Pagination - number of records to retrieve  (optional)
     * @param sortBy  sortBy Sorting - field to sort by - a field from a main entity being searched. See Data model for a list of fields.  (optional, default to &quot;id&quot;)
     * @param sortOrder  sortOrder Sorting - sort order.  (optional, default to ASCENDING)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment method list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentMethodList1Call(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentMethod/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (query != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("query", query));
        }

        if (fields != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("fields", fields));
        }

        if (offset != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("offset", offset));
        }

        if (limit != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
        }

        if (sortBy != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
        }

        if (sortOrder != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortOrder", sortOrder));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentMethodList1ValidateBeforeCall(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentMethodList1Call(query, fields, offset, limit, sortBy, sortOrder, _callback);
        return localVarCall;

    }

    /**
     *  List Payment Methods matching a given criteria  
     *  List Payment Methods matching a given criteria  
     * @param query  query Search criteria. Query is composed of the following: filterKey1:filterValue1|filterKey2:filterValue2  (optional)
     * @param fields  fields Data retrieval options/fieldnames separated by a comma  (optional)
     * @param offset  offset Pagination - from record number  (optional)
     * @param limit  limit Pagination - number of records to retrieve  (optional)
     * @param sortBy  sortBy Sorting - field to sort by - a field from a main entity being searched. See Data model for a list of fields.  (optional, default to &quot;id&quot;)
     * @param sortOrder  sortOrder Sorting - sort order.  (optional, default to ASCENDING)
     * @return PaymentMethodTokensDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment method list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentMethodTokensDto gETPaymentPaymentMethodList1(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        ApiResponse<PaymentMethodTokensDto> localVarResp = gETPaymentPaymentMethodList1WithHttpInfo(query, fields, offset, limit, sortBy, sortOrder);
        return localVarResp.getData();
    }

    /**
     *  List Payment Methods matching a given criteria  
     *  List Payment Methods matching a given criteria  
     * @param query  query Search criteria. Query is composed of the following: filterKey1:filterValue1|filterKey2:filterValue2  (optional)
     * @param fields  fields Data retrieval options/fieldnames separated by a comma  (optional)
     * @param offset  offset Pagination - from record number  (optional)
     * @param limit  limit Pagination - number of records to retrieve  (optional)
     * @param sortBy  sortBy Sorting - field to sort by - a field from a main entity being searched. See Data model for a list of fields.  (optional, default to &quot;id&quot;)
     * @param sortOrder  sortOrder Sorting - sort order.  (optional, default to ASCENDING)
     * @return ApiResponse&lt;PaymentMethodTokensDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment method list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentMethodTokensDto> gETPaymentPaymentMethodList1WithHttpInfo(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentMethodList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, null);
        Type localVarReturnType = new TypeToken<PaymentMethodTokensDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List Payment Methods matching a given criteria   (asynchronously)
     *  List Payment Methods matching a given criteria  
     * @param query  query Search criteria. Query is composed of the following: filterKey1:filterValue1|filterKey2:filterValue2  (optional)
     * @param fields  fields Data retrieval options/fieldnames separated by a comma  (optional)
     * @param offset  offset Pagination - from record number  (optional)
     * @param limit  limit Pagination - number of records to retrieve  (optional)
     * @param sortBy  sortBy Sorting - field to sort by - a field from a main entity being searched. See Data model for a list of fields.  (optional, default to &quot;id&quot;)
     * @param sortOrder  sortOrder Sorting - sort order.  (optional, default to ASCENDING)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment method list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentMethodList1Async(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback<PaymentMethodTokensDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentMethodList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, _callback);
        Type localVarReturnType = new TypeToken<PaymentMethodTokensDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentScheduleInstance1
     * @param id  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  A paymentScheduleInstance dto  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentScheduleInstance1Call(Long id, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleInstance";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (id != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("id", id));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentScheduleInstance1ValidateBeforeCall(Long id, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentScheduleInstance1Call(id, _callback);
        return localVarCall;

    }

    /**
     *  Find  PaymentScheduleInstance by ID  
     *  Find  PaymentScheduleInstance by ID  
     * @param id  (optional)
     * @return PaymentScheduleInstanceResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  A paymentScheduleInstance dto  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentScheduleInstanceResponseDto gETPaymentPaymentScheduleInstance1(Long id) throws ApiException {
        ApiResponse<PaymentScheduleInstanceResponseDto> localVarResp = gETPaymentPaymentScheduleInstance1WithHttpInfo(id);
        return localVarResp.getData();
    }

    /**
     *  Find  PaymentScheduleInstance by ID  
     *  Find  PaymentScheduleInstance by ID  
     * @param id  (optional)
     * @return ApiResponse&lt;PaymentScheduleInstanceResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  A paymentScheduleInstance dto  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentScheduleInstanceResponseDto> gETPaymentPaymentScheduleInstance1WithHttpInfo(Long id) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentScheduleInstance1ValidateBeforeCall(id, null);
        Type localVarReturnType = new TypeToken<PaymentScheduleInstanceResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Find  PaymentScheduleInstance by ID   (asynchronously)
     *  Find  PaymentScheduleInstance by ID  
     * @param id  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  A paymentScheduleInstance dto  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentScheduleInstance1Async(Long id, final ApiCallback<PaymentScheduleInstanceResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentScheduleInstance1ValidateBeforeCall(id, _callback);
        Type localVarReturnType = new TypeToken<PaymentScheduleInstanceResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentScheduleInstanceList1
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleInstance dto list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentScheduleInstanceList1Call(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleInstance/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (query != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("query", query));
        }

        if (fields != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("fields", fields));
        }

        if (offset != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("offset", offset));
        }

        if (limit != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
        }

        if (sortBy != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
        }

        if (sortOrder != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortOrder", sortOrder));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentScheduleInstanceList1ValidateBeforeCall(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentScheduleInstanceList1Call(query, fields, offset, limit, sortBy, sortOrder, _callback);
        return localVarCall;

    }

    /**
     *  List  paymentScheduleInstance matching a given criteria  
     *  List  paymentScheduleInstance matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @return PaymentScheduleInstancesDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleInstance dto list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentScheduleInstancesDto gETPaymentPaymentScheduleInstanceList1(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        ApiResponse<PaymentScheduleInstancesDto> localVarResp = gETPaymentPaymentScheduleInstanceList1WithHttpInfo(query, fields, offset, limit, sortBy, sortOrder);
        return localVarResp.getData();
    }

    /**
     *  List  paymentScheduleInstance matching a given criteria  
     *  List  paymentScheduleInstance matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @return ApiResponse&lt;PaymentScheduleInstancesDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleInstance dto list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentScheduleInstancesDto> gETPaymentPaymentScheduleInstanceList1WithHttpInfo(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentScheduleInstanceList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, null);
        Type localVarReturnType = new TypeToken<PaymentScheduleInstancesDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List  paymentScheduleInstance matching a given criteria   (asynchronously)
     *  List  paymentScheduleInstance matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleInstance dto list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentScheduleInstanceList1Async(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback<PaymentScheduleInstancesDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentScheduleInstanceList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, _callback);
        Type localVarReturnType = new TypeToken<PaymentScheduleInstancesDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentScheduleTemplate1
     * @param paymentScheduleTemplateCode  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentScheduleTemplate1Call(String paymentScheduleTemplateCode, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleTemplate";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (paymentScheduleTemplateCode != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("paymentScheduleTemplateCode", paymentScheduleTemplateCode));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentScheduleTemplate1ValidateBeforeCall(String paymentScheduleTemplateCode, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentScheduleTemplate1Call(paymentScheduleTemplateCode, _callback);
        return localVarCall;

    }

    /**
     *  find  payment Schedules template.  
     *  find  payment Schedules template.  
     * @param paymentScheduleTemplateCode  (optional)
     * @return PaymentScheduleTemplateResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentScheduleTemplateResponseDto gETPaymentPaymentScheduleTemplate1(String paymentScheduleTemplateCode) throws ApiException {
        ApiResponse<PaymentScheduleTemplateResponseDto> localVarResp = gETPaymentPaymentScheduleTemplate1WithHttpInfo(paymentScheduleTemplateCode);
        return localVarResp.getData();
    }

    /**
     *  find  payment Schedules template.  
     *  find  payment Schedules template.  
     * @param paymentScheduleTemplateCode  (optional)
     * @return ApiResponse&lt;PaymentScheduleTemplateResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentScheduleTemplateResponseDto> gETPaymentPaymentScheduleTemplate1WithHttpInfo(String paymentScheduleTemplateCode) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentScheduleTemplate1ValidateBeforeCall(paymentScheduleTemplateCode, null);
        Type localVarReturnType = new TypeToken<PaymentScheduleTemplateResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  find  payment Schedules template.   (asynchronously)
     *  find  payment Schedules template.  
     * @param paymentScheduleTemplateCode  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentScheduleTemplate1Async(String paymentScheduleTemplateCode, final ApiCallback<PaymentScheduleTemplateResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentScheduleTemplate1ValidateBeforeCall(paymentScheduleTemplateCode, _callback);
        Type localVarReturnType = new TypeToken<PaymentScheduleTemplateResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for gETPaymentPaymentScheduleTemplateList1
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleTemplate dto list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentScheduleTemplateList1Call(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleTemplate/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        if (query != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("query", query));
        }

        if (fields != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("fields", fields));
        }

        if (offset != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("offset", offset));
        }

        if (limit != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
        }

        if (sortBy != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
        }

        if (sortOrder != null) {
            localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortOrder", sortOrder));
        }

        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call gETPaymentPaymentScheduleTemplateList1ValidateBeforeCall(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = gETPaymentPaymentScheduleTemplateList1Call(query, fields, offset, limit, sortBy, sortOrder, _callback);
        return localVarCall;

    }

    /**
     *  List  PaymentScheduleTemplate matching a given criteria  
     *  List  PaymentScheduleTemplate matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @return PaymentScheduleTemplatesDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleTemplate dto list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentScheduleTemplatesDto gETPaymentPaymentScheduleTemplateList1(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        ApiResponse<PaymentScheduleTemplatesDto> localVarResp = gETPaymentPaymentScheduleTemplateList1WithHttpInfo(query, fields, offset, limit, sortBy, sortOrder);
        return localVarResp.getData();
    }

    /**
     *  List  PaymentScheduleTemplate matching a given criteria  
     *  List  PaymentScheduleTemplate matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @return ApiResponse&lt;PaymentScheduleTemplatesDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleTemplate dto list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentScheduleTemplatesDto> gETPaymentPaymentScheduleTemplateList1WithHttpInfo(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder) throws ApiException {
        okhttp3.Call localVarCall = gETPaymentPaymentScheduleTemplateList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, null);
        Type localVarReturnType = new TypeToken<PaymentScheduleTemplatesDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List  PaymentScheduleTemplate matching a given criteria   (asynchronously)
     *  List  PaymentScheduleTemplate matching a given criteria  
     * @param query  (optional)
     * @param fields  (optional)
     * @param offset  (optional)
     * @param limit  (optional)
     * @param sortBy  (optional, default to &quot;id&quot;)
     * @param sortOrder  (optional, default to ASCENDING)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleTemplate dto list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call gETPaymentPaymentScheduleTemplateList1Async(String query, String fields, Integer offset, Integer limit, String sortBy, String sortOrder, final ApiCallback<PaymentScheduleTemplatesDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = gETPaymentPaymentScheduleTemplateList1ValidateBeforeCall(query, fields, offset, limit, sortBy, sortOrder, _callback);
        Type localVarReturnType = new TypeToken<PaymentScheduleTemplatesDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentCardPaymentMethod1
     * @param cardPaymentMethodDto  cardPaymentMethod Card payment method DTO  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Token id in payment gateway  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentCardPaymentMethod1Call(CardPaymentMethodDto cardPaymentMethodDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = cardPaymentMethodDto;

        // create path and map variables
        String localVarPath = "/payment/cardPaymentMethod";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentCardPaymentMethod1ValidateBeforeCall(CardPaymentMethodDto cardPaymentMethodDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentCardPaymentMethod1Call(cardPaymentMethodDto, _callback);
        return localVarCall;

    }

    /**
     *  Add a new card payment method. It will be marked as preferred.  
     *  Add a new card payment method. It will be marked as preferred.  
     * @param cardPaymentMethodDto  cardPaymentMethod Card payment method DTO  (optional)
     * @return CardPaymentMethodTokenDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Token id in payment gateway  </td><td>  -  </td></tr>
     </table>
     */
    public CardPaymentMethodTokenDto pOSTPaymentCardPaymentMethod1(CardPaymentMethodDto cardPaymentMethodDto) throws ApiException {
        ApiResponse<CardPaymentMethodTokenDto> localVarResp = pOSTPaymentCardPaymentMethod1WithHttpInfo(cardPaymentMethodDto);
        return localVarResp.getData();
    }

    /**
     *  Add a new card payment method. It will be marked as preferred.  
     *  Add a new card payment method. It will be marked as preferred.  
     * @param cardPaymentMethodDto  cardPaymentMethod Card payment method DTO  (optional)
     * @return ApiResponse&lt;CardPaymentMethodTokenDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Token id in payment gateway  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<CardPaymentMethodTokenDto> pOSTPaymentCardPaymentMethod1WithHttpInfo(CardPaymentMethodDto cardPaymentMethodDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentCardPaymentMethod1ValidateBeforeCall(cardPaymentMethodDto, null);
        Type localVarReturnType = new TypeToken<CardPaymentMethodTokenDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Add a new card payment method. It will be marked as preferred.   (asynchronously)
     *  Add a new card payment method. It will be marked as preferred.  
     * @param cardPaymentMethodDto  cardPaymentMethod Card payment method DTO  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Token id in payment gateway  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentCardPaymentMethod1Async(CardPaymentMethodDto cardPaymentMethodDto, final ApiCallback<CardPaymentMethodTokenDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentCardPaymentMethod1ValidateBeforeCall(cardPaymentMethodDto, _callback);
        Type localVarReturnType = new TypeToken<CardPaymentMethodTokenDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentCreate
     * @param paymentDto  postData Payment&#39;s data  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment action status  </td><td>  -  </td></tr>
     </table>
     * @deprecated
     */
    @Deprecated
    public okhttp3.Call pOSTPaymentCreateCall(PaymentDto paymentDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentDto;

        // create path and map variables
        String localVarPath = "/payment/create";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @Deprecated
    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentCreateValidateBeforeCall(PaymentDto paymentDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentCreateCall(paymentDto, _callback);
        return localVarCall;

    }

    /**
     *  Creates automated payment. It also process if a payment is matching or not Deprecated and replaced by reatePayment using /payment path  
     *  Creates automated payment. It also process if a payment is matching or not Deprecated and replaced by reatePayment using /payment path  
     * @param paymentDto  postData Payment&#39;s data  (optional)
     * @return PaymentActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment action status  </td><td>  -  </td></tr>
     </table>
     * @deprecated
     */
    @Deprecated
    public PaymentActionStatus pOSTPaymentCreate(PaymentDto paymentDto) throws ApiException {
        ApiResponse<PaymentActionStatus> localVarResp = pOSTPaymentCreateWithHttpInfo(paymentDto);
        return localVarResp.getData();
    }

    /**
     *  Creates automated payment. It also process if a payment is matching or not Deprecated and replaced by reatePayment using /payment path  
     *  Creates automated payment. It also process if a payment is matching or not Deprecated and replaced by reatePayment using /payment path  
     * @param paymentDto  postData Payment&#39;s data  (optional)
     * @return ApiResponse&lt;PaymentActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment action status  </td><td>  -  </td></tr>
     </table>
     * @deprecated
     */
    @Deprecated
    public ApiResponse<PaymentActionStatus> pOSTPaymentCreateWithHttpInfo(PaymentDto paymentDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentCreateValidateBeforeCall(paymentDto, null);
        Type localVarReturnType = new TypeToken<PaymentActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Creates automated payment. It also process if a payment is matching or not Deprecated and replaced by reatePayment using /payment path   (asynchronously)
     *  Creates automated payment. It also process if a payment is matching or not Deprecated and replaced by reatePayment using /payment path  
     * @param paymentDto  postData Payment&#39;s data  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment action status  </td><td>  -  </td></tr>
     </table>
     * @deprecated
     */
    @Deprecated
    public okhttp3.Call pOSTPaymentCreateAsync(PaymentDto paymentDto, final ApiCallback<PaymentActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentCreateValidateBeforeCall(paymentDto, _callback);
        Type localVarReturnType = new TypeToken<PaymentActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentCreate2
     * @param paymentDto  postData Payment&#39;s data  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentCreate2Call(PaymentDto paymentDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentDto;

        // create path and map variables
        String localVarPath = "/payment";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentCreate2ValidateBeforeCall(PaymentDto paymentDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentCreate2Call(paymentDto, _callback);
        return localVarCall;

    }

    /**
     *  Creates automated payment. It also process if a payment is matching or not  
     *  Creates automated payment. It also process if a payment is matching or not  
     * @param paymentDto  postData Payment&#39;s data  (optional)
     * @return PaymentActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment action status  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentActionStatus pOSTPaymentCreate2(PaymentDto paymentDto) throws ApiException {
        ApiResponse<PaymentActionStatus> localVarResp = pOSTPaymentCreate2WithHttpInfo(paymentDto);
        return localVarResp.getData();
    }

    /**
     *  Creates automated payment. It also process if a payment is matching or not  
     *  Creates automated payment. It also process if a payment is matching or not  
     * @param paymentDto  postData Payment&#39;s data  (optional)
     * @return ApiResponse&lt;PaymentActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentActionStatus> pOSTPaymentCreate2WithHttpInfo(PaymentDto paymentDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentCreate2ValidateBeforeCall(paymentDto, null);
        Type localVarReturnType = new TypeToken<PaymentActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Creates automated payment. It also process if a payment is matching or not   (asynchronously)
     *  Creates automated payment. It also process if a payment is matching or not  
     * @param paymentDto  postData Payment&#39;s data  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  payment action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentCreate2Async(PaymentDto paymentDto, final ApiCallback<PaymentActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentCreate2ValidateBeforeCall(paymentDto, _callback);
        Type localVarReturnType = new TypeToken<PaymentActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentDdRequestBuilder1
     * @param ddRequestBuilderDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the ddRequestBuilder dto created  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilder1Call(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = ddRequestBuilderDto;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentDdRequestBuilder1ValidateBeforeCall(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilder1Call(ddRequestBuilderDto, _callback);
        return localVarCall;

    }

    /**
     *  Add a new ddRequest builder.  
     *  Add a new ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @return DDRequestBuilderResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the ddRequestBuilder dto created  </td><td>  -  </td></tr>
     </table>
     */
    public DDRequestBuilderResponseDto pOSTPaymentDdRequestBuilder1(DDRequestBuilderDto ddRequestBuilderDto) throws ApiException {
        ApiResponse<DDRequestBuilderResponseDto> localVarResp = pOSTPaymentDdRequestBuilder1WithHttpInfo(ddRequestBuilderDto);
        return localVarResp.getData();
    }

    /**
     *  Add a new ddRequest builder.  
     *  Add a new ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @return ApiResponse&lt;DDRequestBuilderResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the ddRequestBuilder dto created  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<DDRequestBuilderResponseDto> pOSTPaymentDdRequestBuilder1WithHttpInfo(DDRequestBuilderDto ddRequestBuilderDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilder1ValidateBeforeCall(ddRequestBuilderDto, null);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Add a new ddRequest builder.   (asynchronously)
     *  Add a new ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the ddRequestBuilder dto created  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilder1Async(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback<DDRequestBuilderResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilder1ValidateBeforeCall(ddRequestBuilderDto, _callback);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentDdRequestBuilderCodeDisable1
     * @param code  (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilderCodeDisable1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder/{code}/disable"
            .replaceAll("\\{" + "code" + "\\}", localVarApiClient.escapeString(code.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentDdRequestBuilderCodeDisable1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'code' is set
        if (code == null) {
            throw new ApiException("Missing the required parameter 'code' when calling pOSTPaymentDdRequestBuilderCodeDisable1(Async)");
        }
        

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCodeDisable1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Disable a ddRequest builder with a given code  
     *  Disable a ddRequest builder with a given code  
     * @param code  (required)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentDdRequestBuilderCodeDisable1(String code) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentDdRequestBuilderCodeDisable1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Disable a ddRequest builder with a given code  
     *  Disable a ddRequest builder with a given code  
     * @param code  (required)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentDdRequestBuilderCodeDisable1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCodeDisable1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Disable a ddRequest builder with a given code   (asynchronously)
     *  Disable a ddRequest builder with a given code  
     * @param code  (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilderCodeDisable1Async(String code, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCodeDisable1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentDdRequestBuilderCodeEnable1
     * @param code  (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilderCodeEnable1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder/{code}/enable"
            .replaceAll("\\{" + "code" + "\\}", localVarApiClient.escapeString(code.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentDdRequestBuilderCodeEnable1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'code' is set
        if (code == null) {
            throw new ApiException("Missing the required parameter 'code' when calling pOSTPaymentDdRequestBuilderCodeEnable1(Async)");
        }
        

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCodeEnable1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Enable a ddRequest builder with a given code  
     *  Enable a ddRequest builder with a given code  
     * @param code  (required)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentDdRequestBuilderCodeEnable1(String code) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentDdRequestBuilderCodeEnable1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Enable a ddRequest builder with a given code  
     *  Enable a ddRequest builder with a given code  
     * @param code  (required)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentDdRequestBuilderCodeEnable1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCodeEnable1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Enable a ddRequest builder with a given code   (asynchronously)
     *  Enable a ddRequest builder with a given code  
     * @param code  (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilderCodeEnable1Async(String code, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCodeEnable1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentDdRequestBuilderCreateOrUpdate1
     * @param ddRequestBuilderDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the ddRequestBuilder dto created  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilderCreateOrUpdate1Call(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = ddRequestBuilderDto;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder/createOrUpdate";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentDdRequestBuilderCreateOrUpdate1ValidateBeforeCall(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCreateOrUpdate1Call(ddRequestBuilderDto, _callback);
        return localVarCall;

    }

    /**
     *  Create or update ddRequest builder.  
     *  Create or update ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @return DDRequestBuilderResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the ddRequestBuilder dto created  </td><td>  -  </td></tr>
     </table>
     */
    public DDRequestBuilderResponseDto pOSTPaymentDdRequestBuilderCreateOrUpdate1(DDRequestBuilderDto ddRequestBuilderDto) throws ApiException {
        ApiResponse<DDRequestBuilderResponseDto> localVarResp = pOSTPaymentDdRequestBuilderCreateOrUpdate1WithHttpInfo(ddRequestBuilderDto);
        return localVarResp.getData();
    }

    /**
     *  Create or update ddRequest builder.  
     *  Create or update ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @return ApiResponse&lt;DDRequestBuilderResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the ddRequestBuilder dto created  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<DDRequestBuilderResponseDto> pOSTPaymentDdRequestBuilderCreateOrUpdate1WithHttpInfo(DDRequestBuilderDto ddRequestBuilderDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCreateOrUpdate1ValidateBeforeCall(ddRequestBuilderDto, null);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Create or update ddRequest builder.   (asynchronously)
     *  Create or update ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the ddRequestBuilder dto created  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilderCreateOrUpdate1Async(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback<DDRequestBuilderResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderCreateOrUpdate1ValidateBeforeCall(ddRequestBuilderDto, _callback);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentDdRequestBuilderList1
     * @param pagingAndFiltering  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An ddRequest builder list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilderList1Call(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = pagingAndFiltering;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentDdRequestBuilderList1ValidateBeforeCall(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderList1Call(pagingAndFiltering, _callback);
        return localVarCall;

    }

    /**
     *  List DDRequest Builders matching a given criteria.  
     *  List DDRequest Builders matching a given criteria.  
     * @param pagingAndFiltering  (optional)
     * @return DDRequestBuilderResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An ddRequest builder list  </td><td>  -  </td></tr>
     </table>
     */
    public DDRequestBuilderResponseDto pOSTPaymentDdRequestBuilderList1(PagingAndFiltering pagingAndFiltering) throws ApiException {
        ApiResponse<DDRequestBuilderResponseDto> localVarResp = pOSTPaymentDdRequestBuilderList1WithHttpInfo(pagingAndFiltering);
        return localVarResp.getData();
    }

    /**
     *  List DDRequest Builders matching a given criteria.  
     *  List DDRequest Builders matching a given criteria.  
     * @param pagingAndFiltering  (optional)
     * @return ApiResponse&lt;DDRequestBuilderResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An ddRequest builder list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<DDRequestBuilderResponseDto> pOSTPaymentDdRequestBuilderList1WithHttpInfo(PagingAndFiltering pagingAndFiltering) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderList1ValidateBeforeCall(pagingAndFiltering, null);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List DDRequest Builders matching a given criteria.   (asynchronously)
     *  List DDRequest Builders matching a given criteria.  
     * @param pagingAndFiltering  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An ddRequest builder list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentDdRequestBuilderList1Async(PagingAndFiltering pagingAndFiltering, final ApiCallback<DDRequestBuilderResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentDdRequestBuilderList1ValidateBeforeCall(pagingAndFiltering, _callback);
        Type localVarReturnType = new TypeToken<DDRequestBuilderResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentHistoryList1
     * @param pagingAndFiltering  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An invoice list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentHistoryList1Call(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = pagingAndFiltering;

        // create path and map variables
        String localVarPath = "/payment/history/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentHistoryList1ValidateBeforeCall(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentHistoryList1Call(pagingAndFiltering, _callback);
        return localVarCall;

    }

    /**
     *  List invoices matching a given criteria.  
     *  List invoices matching a given criteria.  
     * @param pagingAndFiltering  (optional)
     * @return PaymentHistoriesDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An invoice list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentHistoriesDto pOSTPaymentHistoryList1(PagingAndFiltering pagingAndFiltering) throws ApiException {
        ApiResponse<PaymentHistoriesDto> localVarResp = pOSTPaymentHistoryList1WithHttpInfo(pagingAndFiltering);
        return localVarResp.getData();
    }

    /**
     *  List invoices matching a given criteria.  
     *  List invoices matching a given criteria.  
     * @param pagingAndFiltering  (optional)
     * @return ApiResponse&lt;PaymentHistoriesDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An invoice list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentHistoriesDto> pOSTPaymentHistoryList1WithHttpInfo(PagingAndFiltering pagingAndFiltering) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentHistoryList1ValidateBeforeCall(pagingAndFiltering, null);
        Type localVarReturnType = new TypeToken<PaymentHistoriesDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List invoices matching a given criteria.   (asynchronously)
     *  List invoices matching a given criteria.  
     * @param pagingAndFiltering  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An invoice list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentHistoryList1Async(PagingAndFiltering pagingAndFiltering, final ApiCallback<PaymentHistoriesDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentHistoryList1ValidateBeforeCall(pagingAndFiltering, _callback);
        Type localVarReturnType = new TypeToken<PaymentHistoriesDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentGateway1
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the paymentGateway dto created  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGateway1Call(PaymentGatewayDto paymentGatewayDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentGatewayDto;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentGateway1ValidateBeforeCall(PaymentGatewayDto paymentGatewayDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentGateway1Call(paymentGatewayDto, _callback);
        return localVarCall;

    }

    /**
     *  Add a new payment gateway.  
     *  Add a new payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @return PaymentGatewayResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the paymentGateway dto created  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentGatewayResponseDto pOSTPaymentPaymentGateway1(PaymentGatewayDto paymentGatewayDto) throws ApiException {
        ApiResponse<PaymentGatewayResponseDto> localVarResp = pOSTPaymentPaymentGateway1WithHttpInfo(paymentGatewayDto);
        return localVarResp.getData();
    }

    /**
     *  Add a new payment gateway.  
     *  Add a new payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @return ApiResponse&lt;PaymentGatewayResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the paymentGateway dto created  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentGatewayResponseDto> pOSTPaymentPaymentGateway1WithHttpInfo(PaymentGatewayDto paymentGatewayDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentGateway1ValidateBeforeCall(paymentGatewayDto, null);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Add a new payment gateway.   (asynchronously)
     *  Add a new payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the paymentGateway dto created  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGateway1Async(PaymentGatewayDto paymentGatewayDto, final ApiCallback<PaymentGatewayResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentGateway1ValidateBeforeCall(paymentGatewayDto, _callback);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentGatewayCodeDisable1
     * @param code  code Payment gateway code  (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayCodeDisable1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/{code}/disable"
            .replaceAll("\\{" + "code" + "\\}", localVarApiClient.escapeString(code.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentGatewayCodeDisable1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'code' is set
        if (code == null) {
            throw new ApiException("Missing the required parameter 'code' when calling pOSTPaymentPaymentGatewayCodeDisable1(Async)");
        }
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCodeDisable1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Disable a Payment gateway with a given code  
     *  Disable a Payment gateway with a given code  
     * @param code  code Payment gateway code  (required)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentPaymentGatewayCodeDisable1(String code) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentPaymentGatewayCodeDisable1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Disable a Payment gateway with a given code  
     *  Disable a Payment gateway with a given code  
     * @param code  code Payment gateway code  (required)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentPaymentGatewayCodeDisable1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCodeDisable1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Disable a Payment gateway with a given code   (asynchronously)
     *  Disable a Payment gateway with a given code  
     * @param code  code Payment gateway code  (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayCodeDisable1Async(String code, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCodeDisable1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentGatewayCodeEnable1
     * @param code  code Payment gateway code  (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayCodeEnable1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/{code}/enable"
            .replaceAll("\\{" + "code" + "\\}", localVarApiClient.escapeString(code.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentGatewayCodeEnable1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'code' is set
        if (code == null) {
            throw new ApiException("Missing the required parameter 'code' when calling pOSTPaymentPaymentGatewayCodeEnable1(Async)");
        }
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCodeEnable1Call(code, _callback);
        return localVarCall;

    }

    /**
     *  Enable a Payment gateway with a given code  
     *  Enable a Payment gateway with a given code  
     * @param code  code Payment gateway code  (required)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentPaymentGatewayCodeEnable1(String code) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentPaymentGatewayCodeEnable1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *  Enable a Payment gateway with a given code  
     *  Enable a Payment gateway with a given code  
     * @param code  code Payment gateway code  (required)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentPaymentGatewayCodeEnable1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCodeEnable1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Enable a Payment gateway with a given code   (asynchronously)
     *  Enable a Payment gateway with a given code  
     * @param code  code Payment gateway code  (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayCodeEnable1Async(String code, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCodeEnable1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentGatewayCreateOrUpdate1
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the paymentGateway dto created  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayCreateOrUpdate1Call(PaymentGatewayDto paymentGatewayDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentGatewayDto;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/createOrUpdate";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentGatewayCreateOrUpdate1ValidateBeforeCall(PaymentGatewayDto paymentGatewayDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCreateOrUpdate1Call(paymentGatewayDto, _callback);
        return localVarCall;

    }

    /**
     *  Create or update payment gateway.  
     *  Create or update payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @return PaymentGatewayResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the paymentGateway dto created  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentGatewayResponseDto pOSTPaymentPaymentGatewayCreateOrUpdate1(PaymentGatewayDto paymentGatewayDto) throws ApiException {
        ApiResponse<PaymentGatewayResponseDto> localVarResp = pOSTPaymentPaymentGatewayCreateOrUpdate1WithHttpInfo(paymentGatewayDto);
        return localVarResp.getData();
    }

    /**
     *  Create or update payment gateway.  
     *  Create or update payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @return ApiResponse&lt;PaymentGatewayResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the paymentGateway dto created  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentGatewayResponseDto> pOSTPaymentPaymentGatewayCreateOrUpdate1WithHttpInfo(PaymentGatewayDto paymentGatewayDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCreateOrUpdate1ValidateBeforeCall(paymentGatewayDto, null);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Create or update payment gateway.   (asynchronously)
     *  Create or update payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  the paymentGateway dto created  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayCreateOrUpdate1Async(PaymentGatewayDto paymentGatewayDto, final ApiCallback<PaymentGatewayResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayCreateOrUpdate1ValidateBeforeCall(paymentGatewayDto, _callback);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentGatewayList1
     * @param pagingAndFiltering  pagingAndFiltering Pagination and filtering criteria  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment gateway list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayList1Call(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = pagingAndFiltering;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentGatewayList1ValidateBeforeCall(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayList1Call(pagingAndFiltering, _callback);
        return localVarCall;

    }

    /**
     *  List payment gateways matching a given criteria.  
     *  List payment gateways matching a given criteria.  
     * @param pagingAndFiltering  pagingAndFiltering Pagination and filtering criteria  (optional)
     * @return PaymentGatewayResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment gateway list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentGatewayResponseDto pOSTPaymentPaymentGatewayList1(PagingAndFiltering pagingAndFiltering) throws ApiException {
        ApiResponse<PaymentGatewayResponseDto> localVarResp = pOSTPaymentPaymentGatewayList1WithHttpInfo(pagingAndFiltering);
        return localVarResp.getData();
    }

    /**
     *  List payment gateways matching a given criteria.  
     *  List payment gateways matching a given criteria.  
     * @param pagingAndFiltering  pagingAndFiltering Pagination and filtering criteria  (optional)
     * @return ApiResponse&lt;PaymentGatewayResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment gateway list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentGatewayResponseDto> pOSTPaymentPaymentGatewayList1WithHttpInfo(PagingAndFiltering pagingAndFiltering) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayList1ValidateBeforeCall(pagingAndFiltering, null);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List payment gateways matching a given criteria.   (asynchronously)
     *  List payment gateways matching a given criteria.  
     * @param pagingAndFiltering  pagingAndFiltering Pagination and filtering criteria  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment gateway list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayList1Async(PagingAndFiltering pagingAndFiltering, final ApiCallback<PaymentGatewayResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayList1ValidateBeforeCall(pagingAndFiltering, _callback);
        Type localVarReturnType = new TypeToken<PaymentGatewayResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentGatewayRumSequence1
     * @param paymentGatewayRumSequenceDto  postData the RUM sequence details  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayRumSequence1Call(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentGatewayRumSequenceDto;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/rumSequence";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentGatewayRumSequence1ValidateBeforeCall(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayRumSequence1Call(paymentGatewayRumSequenceDto, _callback);
        return localVarCall;

    }

    /**
     *  Creates a RUM sequence associated to the given payment gateway. 
     *  Creates a RUM sequence associated to the given payment gateway. 
     * @param paymentGatewayRumSequenceDto  postData the RUM sequence details  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentPaymentGatewayRumSequence1(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentPaymentGatewayRumSequence1WithHttpInfo(paymentGatewayRumSequenceDto);
        return localVarResp.getData();
    }

    /**
     *  Creates a RUM sequence associated to the given payment gateway. 
     *  Creates a RUM sequence associated to the given payment gateway. 
     * @param paymentGatewayRumSequenceDto  postData the RUM sequence details  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentPaymentGatewayRumSequence1WithHttpInfo(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayRumSequence1ValidateBeforeCall(paymentGatewayRumSequenceDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Creates a RUM sequence associated to the given payment gateway.  (asynchronously)
     *  Creates a RUM sequence associated to the given payment gateway. 
     * @param paymentGatewayRumSequenceDto  postData the RUM sequence details  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayRumSequence1Async(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayRumSequence1ValidateBeforeCall(paymentGatewayRumSequenceDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentGatewayRumSequenceCodeNext1
     * @param code  (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  sequence value dto    </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayRumSequenceCodeNext1Call(String code, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/rumSequence/{code}/next"
            .replaceAll("\\{" + "code" + "\\}", localVarApiClient.escapeString(code.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentGatewayRumSequenceCodeNext1ValidateBeforeCall(String code, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'code' is set
        if (code == null) {
            throw new ApiException("Missing the required parameter 'code' when calling pOSTPaymentPaymentGatewayRumSequenceCodeNext1(Async)");
        }
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayRumSequenceCodeNext1Call(code, _callback);
        return localVarCall;

    }

    /**
     *    Generates the next RUM sequence number.   
     *    Generates the next RUM sequence number.   
     * @param code  (required)
     * @return GenericSequenceValueResponseDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  sequence value dto    </td><td>  -  </td></tr>
     </table>
     */
    public GenericSequenceValueResponseDto pOSTPaymentPaymentGatewayRumSequenceCodeNext1(String code) throws ApiException {
        ApiResponse<GenericSequenceValueResponseDto> localVarResp = pOSTPaymentPaymentGatewayRumSequenceCodeNext1WithHttpInfo(code);
        return localVarResp.getData();
    }

    /**
     *    Generates the next RUM sequence number.   
     *    Generates the next RUM sequence number.   
     * @param code  (required)
     * @return ApiResponse&lt;GenericSequenceValueResponseDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  sequence value dto    </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<GenericSequenceValueResponseDto> pOSTPaymentPaymentGatewayRumSequenceCodeNext1WithHttpInfo(String code) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayRumSequenceCodeNext1ValidateBeforeCall(code, null);
        Type localVarReturnType = new TypeToken<GenericSequenceValueResponseDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *    Generates the next RUM sequence number.    (asynchronously)
     *    Generates the next RUM sequence number.   
     * @param code  (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  sequence value dto    </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentGatewayRumSequenceCodeNext1Async(String code, final ApiCallback<GenericSequenceValueResponseDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentGatewayRumSequenceCodeNext1ValidateBeforeCall(code, _callback);
        Type localVarReturnType = new TypeToken<GenericSequenceValueResponseDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentMethod1
     * @param paymentMethodDto  paymentMethod payment method DTO  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Token id in payment gateway  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentMethod1Call(PaymentMethodDto paymentMethodDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentMethodDto;

        // create path and map variables
        String localVarPath = "/payment/paymentMethod";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentMethod1ValidateBeforeCall(PaymentMethodDto paymentMethodDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentMethod1Call(paymentMethodDto, _callback);
        return localVarCall;

    }

    /**
     *  Add a new payment method. It will be marked as preferred.  
     *  Add a new payment method. It will be marked as preferred.  
     * @param paymentMethodDto  paymentMethod payment method DTO  (optional)
     * @return PaymentMethodTokenDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Token id in payment gateway  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentMethodTokenDto pOSTPaymentPaymentMethod1(PaymentMethodDto paymentMethodDto) throws ApiException {
        ApiResponse<PaymentMethodTokenDto> localVarResp = pOSTPaymentPaymentMethod1WithHttpInfo(paymentMethodDto);
        return localVarResp.getData();
    }

    /**
     *  Add a new payment method. It will be marked as preferred.  
     *  Add a new payment method. It will be marked as preferred.  
     * @param paymentMethodDto  paymentMethod payment method DTO  (optional)
     * @return ApiResponse&lt;PaymentMethodTokenDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Token id in payment gateway  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentMethodTokenDto> pOSTPaymentPaymentMethod1WithHttpInfo(PaymentMethodDto paymentMethodDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentMethod1ValidateBeforeCall(paymentMethodDto, null);
        Type localVarReturnType = new TypeToken<PaymentMethodTokenDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Add a new payment method. It will be marked as preferred.   (asynchronously)
     *  Add a new payment method. It will be marked as preferred.  
     * @param paymentMethodDto  paymentMethod payment method DTO  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Token id in payment gateway  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentMethod1Async(PaymentMethodDto paymentMethodDto, final ApiCallback<PaymentMethodTokenDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentMethod1ValidateBeforeCall(paymentMethodDto, _callback);
        Type localVarReturnType = new TypeToken<PaymentMethodTokenDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentMethodIdDisable1
     * @param id  id Payment method id  (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentMethodIdDisable1Call(Long id, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentMethod/{id}/disable"
            .replaceAll("\\{" + "id" + "\\}", localVarApiClient.escapeString(id.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentMethodIdDisable1ValidateBeforeCall(Long id, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'id' is set
        if (id == null) {
            throw new ApiException("Missing the required parameter 'id' when calling pOSTPaymentPaymentMethodIdDisable1(Async)");
        }
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodIdDisable1Call(id, _callback);
        return localVarCall;

    }

    /**
     *  Disable a Payment method with a given id  
     *  Disable a Payment method with a given id  
     * @param id  id Payment method id  (required)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentPaymentMethodIdDisable1(Long id) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentPaymentMethodIdDisable1WithHttpInfo(id);
        return localVarResp.getData();
    }

    /**
     *  Disable a Payment method with a given id  
     *  Disable a Payment method with a given id  
     * @param id  id Payment method id  (required)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentPaymentMethodIdDisable1WithHttpInfo(Long id) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodIdDisable1ValidateBeforeCall(id, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Disable a Payment method with a given id   (asynchronously)
     *  Disable a Payment method with a given id  
     * @param id  id Payment method id  (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentMethodIdDisable1Async(Long id, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodIdDisable1ValidateBeforeCall(id, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentMethodIdEnable1
     * @param id  id Payment method id  (required)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentMethodIdEnable1Call(Long id, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/paymentMethod/{id}/enable"
            .replaceAll("\\{" + "id" + "\\}", localVarApiClient.escapeString(id.toString()));

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentMethodIdEnable1ValidateBeforeCall(Long id, final ApiCallback _callback) throws ApiException {
        
        // verify the required parameter 'id' is set
        if (id == null) {
            throw new ApiException("Missing the required parameter 'id' when calling pOSTPaymentPaymentMethodIdEnable1(Async)");
        }
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodIdEnable1Call(id, _callback);
        return localVarCall;

    }

    /**
     *  Enable a Payment method with a given id  
     *  Enable a Payment method with a given id  
     * @param id  id Payment method id  (required)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentPaymentMethodIdEnable1(Long id) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentPaymentMethodIdEnable1WithHttpInfo(id);
        return localVarResp.getData();
    }

    /**
     *  Enable a Payment method with a given id  
     *  Enable a Payment method with a given id  
     * @param id  id Payment method id  (required)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentPaymentMethodIdEnable1WithHttpInfo(Long id) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodIdEnable1ValidateBeforeCall(id, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Enable a Payment method with a given id   (asynchronously)
     *  Enable a Payment method with a given id  
     * @param id  id Payment method id  (required)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentMethodIdEnable1Async(Long id, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodIdEnable1ValidateBeforeCall(id, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentMethodList1
     * @param pagingAndFiltering  pagingAndFiltering Pagination and filtering criteria  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment method list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentMethodList1Call(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = pagingAndFiltering;

        // create path and map variables
        String localVarPath = "/payment/paymentMethod/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentMethodList1ValidateBeforeCall(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodList1Call(pagingAndFiltering, _callback);
        return localVarCall;

    }

    /**
     *  List Payment Methods matching a given criteria  
     *  List Payment Methods matching a given criteria  
     * @param pagingAndFiltering  pagingAndFiltering Pagination and filtering criteria  (optional)
     * @return PaymentMethodTokensDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment method list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentMethodTokensDto pOSTPaymentPaymentMethodList1(PagingAndFiltering pagingAndFiltering) throws ApiException {
        ApiResponse<PaymentMethodTokensDto> localVarResp = pOSTPaymentPaymentMethodList1WithHttpInfo(pagingAndFiltering);
        return localVarResp.getData();
    }

    /**
     *  List Payment Methods matching a given criteria  
     *  List Payment Methods matching a given criteria  
     * @param pagingAndFiltering  pagingAndFiltering Pagination and filtering criteria  (optional)
     * @return ApiResponse&lt;PaymentMethodTokensDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment method list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentMethodTokensDto> pOSTPaymentPaymentMethodList1WithHttpInfo(PagingAndFiltering pagingAndFiltering) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodList1ValidateBeforeCall(pagingAndFiltering, null);
        Type localVarReturnType = new TypeToken<PaymentMethodTokensDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List Payment Methods matching a given criteria   (asynchronously)
     *  List Payment Methods matching a given criteria  
     * @param pagingAndFiltering  pagingAndFiltering Pagination and filtering criteria  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An payment method list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentMethodList1Async(PagingAndFiltering pagingAndFiltering, final ApiCallback<PaymentMethodTokensDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentMethodList1ValidateBeforeCall(pagingAndFiltering, _callback);
        Type localVarReturnType = new TypeToken<PaymentMethodTokensDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentScheduleInstanceList1
     * @param pagingAndFiltering  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An PaymentScheduleInstance dto list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentScheduleInstanceList1Call(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = pagingAndFiltering;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleInstance/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentScheduleInstanceList1ValidateBeforeCall(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleInstanceList1Call(pagingAndFiltering, _callback);
        return localVarCall;

    }

    /**
     *  List  PaymentScheduleInstance matching a given criteria  
     *  List  PaymentScheduleInstance matching a given criteria  
     * @param pagingAndFiltering  (optional)
     * @return PaymentScheduleInstancesDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An PaymentScheduleInstance dto list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentScheduleInstancesDto pOSTPaymentPaymentScheduleInstanceList1(PagingAndFiltering pagingAndFiltering) throws ApiException {
        ApiResponse<PaymentScheduleInstancesDto> localVarResp = pOSTPaymentPaymentScheduleInstanceList1WithHttpInfo(pagingAndFiltering);
        return localVarResp.getData();
    }

    /**
     *  List  PaymentScheduleInstance matching a given criteria  
     *  List  PaymentScheduleInstance matching a given criteria  
     * @param pagingAndFiltering  (optional)
     * @return ApiResponse&lt;PaymentScheduleInstancesDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An PaymentScheduleInstance dto list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentScheduleInstancesDto> pOSTPaymentPaymentScheduleInstanceList1WithHttpInfo(PagingAndFiltering pagingAndFiltering) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleInstanceList1ValidateBeforeCall(pagingAndFiltering, null);
        Type localVarReturnType = new TypeToken<PaymentScheduleInstancesDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List  PaymentScheduleInstance matching a given criteria   (asynchronously)
     *  List  PaymentScheduleInstance matching a given criteria  
     * @param pagingAndFiltering  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An PaymentScheduleInstance dto list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentScheduleInstanceList1Async(PagingAndFiltering pagingAndFiltering, final ApiCallback<PaymentScheduleInstancesDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleInstanceList1ValidateBeforeCall(pagingAndFiltering, _callback);
        Type localVarReturnType = new TypeToken<PaymentScheduleInstancesDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentScheduleTemplate1
     * @param paymentScheduleTemplateDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentScheduleTemplate1Call(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentScheduleTemplateDto;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleTemplate";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentScheduleTemplate1ValidateBeforeCall(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplate1Call(paymentScheduleTemplateDto, _callback);
        return localVarCall;

    }

    /**
     *  Create  payment Schedules template.  
     *  Create  payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentPaymentScheduleTemplate1(PaymentScheduleTemplateDto paymentScheduleTemplateDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentPaymentScheduleTemplate1WithHttpInfo(paymentScheduleTemplateDto);
        return localVarResp.getData();
    }

    /**
     *  Create  payment Schedules template.  
     *  Create  payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentPaymentScheduleTemplate1WithHttpInfo(PaymentScheduleTemplateDto paymentScheduleTemplateDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplate1ValidateBeforeCall(paymentScheduleTemplateDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Create  payment Schedules template.   (asynchronously)
     *  Create  payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentScheduleTemplate1Async(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplate1ValidateBeforeCall(paymentScheduleTemplateDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1
     * @param paymentScheduleTemplateDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1Call(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentScheduleTemplateDto;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleTemplate/createOrUpdate";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1ValidateBeforeCall(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1Call(paymentScheduleTemplateDto, _callback);
        return localVarCall;

    }

    /**
     *  Create or update payment Schedules template.  
     *  Create or update payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1(PaymentScheduleTemplateDto paymentScheduleTemplateDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1WithHttpInfo(paymentScheduleTemplateDto);
        return localVarResp.getData();
    }

    /**
     *  Create or update payment Schedules template.  
     *  Create or update payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1WithHttpInfo(PaymentScheduleTemplateDto paymentScheduleTemplateDto) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1ValidateBeforeCall(paymentScheduleTemplateDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Create or update payment Schedules template.   (asynchronously)
     *  Create or update payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1Async(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplateCreateOrUpdate1ValidateBeforeCall(paymentScheduleTemplateDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pOSTPaymentPaymentScheduleTemplateList1
     * @param pagingAndFiltering  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleTemplate dto list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentScheduleTemplateList1Call(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = pagingAndFiltering;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleTemplate/list";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "POST", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pOSTPaymentPaymentScheduleTemplateList1ValidateBeforeCall(PagingAndFiltering pagingAndFiltering, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplateList1Call(pagingAndFiltering, _callback);
        return localVarCall;

    }

    /**
     *  List  PaymentScheduleTemplate matching a given criteria  
     *  List  PaymentScheduleTemplate matching a given criteria  
     * @param pagingAndFiltering  (optional)
     * @return PaymentScheduleTemplatesDto
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleTemplate dto list  </td><td>  -  </td></tr>
     </table>
     */
    public PaymentScheduleTemplatesDto pOSTPaymentPaymentScheduleTemplateList1(PagingAndFiltering pagingAndFiltering) throws ApiException {
        ApiResponse<PaymentScheduleTemplatesDto> localVarResp = pOSTPaymentPaymentScheduleTemplateList1WithHttpInfo(pagingAndFiltering);
        return localVarResp.getData();
    }

    /**
     *  List  PaymentScheduleTemplate matching a given criteria  
     *  List  PaymentScheduleTemplate matching a given criteria  
     * @param pagingAndFiltering  (optional)
     * @return ApiResponse&lt;PaymentScheduleTemplatesDto&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleTemplate dto list  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<PaymentScheduleTemplatesDto> pOSTPaymentPaymentScheduleTemplateList1WithHttpInfo(PagingAndFiltering pagingAndFiltering) throws ApiException {
        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplateList1ValidateBeforeCall(pagingAndFiltering, null);
        Type localVarReturnType = new TypeToken<PaymentScheduleTemplatesDto>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  List  PaymentScheduleTemplate matching a given criteria   (asynchronously)
     *  List  PaymentScheduleTemplate matching a given criteria  
     * @param pagingAndFiltering  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  An paymentScheduleTemplate dto list  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pOSTPaymentPaymentScheduleTemplateList1Async(PagingAndFiltering pagingAndFiltering, final ApiCallback<PaymentScheduleTemplatesDto> _callback) throws ApiException {

        okhttp3.Call localVarCall = pOSTPaymentPaymentScheduleTemplateList1ValidateBeforeCall(pagingAndFiltering, _callback);
        Type localVarReturnType = new TypeToken<PaymentScheduleTemplatesDto>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentCardPaymentMethod1
     * @param cardPaymentMethodDto  cardPaymentMethod Card payment method DTO  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentCardPaymentMethod1Call(CardPaymentMethodDto cardPaymentMethodDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = cardPaymentMethodDto;

        // create path and map variables
        String localVarPath = "/payment/cardPaymentMethod";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentCardPaymentMethod1ValidateBeforeCall(CardPaymentMethodDto cardPaymentMethodDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentCardPaymentMethod1Call(cardPaymentMethodDto, _callback);
        return localVarCall;

    }

    /**
     *  Update existing card payment method.  
     *  Update existing card payment method.  
     * @param cardPaymentMethodDto  cardPaymentMethod Card payment method DTO  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentCardPaymentMethod1(CardPaymentMethodDto cardPaymentMethodDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentCardPaymentMethod1WithHttpInfo(cardPaymentMethodDto);
        return localVarResp.getData();
    }

    /**
     *  Update existing card payment method.  
     *  Update existing card payment method.  
     * @param cardPaymentMethodDto  cardPaymentMethod Card payment method DTO  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentCardPaymentMethod1WithHttpInfo(CardPaymentMethodDto cardPaymentMethodDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentCardPaymentMethod1ValidateBeforeCall(cardPaymentMethodDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Update existing card payment method.   (asynchronously)
     *  Update existing card payment method.  
     * @param cardPaymentMethodDto  cardPaymentMethod Card payment method DTO  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentCardPaymentMethod1Async(CardPaymentMethodDto cardPaymentMethodDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentCardPaymentMethod1ValidateBeforeCall(cardPaymentMethodDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentDdRequestBuilder1
     * @param ddRequestBuilderDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentDdRequestBuilder1Call(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = ddRequestBuilderDto;

        // create path and map variables
        String localVarPath = "/payment/ddRequestBuilder";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentDdRequestBuilder1ValidateBeforeCall(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentDdRequestBuilder1Call(ddRequestBuilderDto, _callback);
        return localVarCall;

    }

    /**
     *  Update existing ddRequest builder.  
     *  Update existing ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentDdRequestBuilder1(DDRequestBuilderDto ddRequestBuilderDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentDdRequestBuilder1WithHttpInfo(ddRequestBuilderDto);
        return localVarResp.getData();
    }

    /**
     *  Update existing ddRequest builder.  
     *  Update existing ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentDdRequestBuilder1WithHttpInfo(DDRequestBuilderDto ddRequestBuilderDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentDdRequestBuilder1ValidateBeforeCall(ddRequestBuilderDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Update existing ddRequest builder.   (asynchronously)
     *  Update existing ddRequest builder.  
     * @param ddRequestBuilderDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentDdRequestBuilder1Async(DDRequestBuilderDto ddRequestBuilderDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentDdRequestBuilder1ValidateBeforeCall(ddRequestBuilderDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentPaymentGateway1
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentGateway1Call(PaymentGatewayDto paymentGatewayDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentGatewayDto;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentPaymentGateway1ValidateBeforeCall(PaymentGatewayDto paymentGatewayDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentPaymentGateway1Call(paymentGatewayDto, _callback);
        return localVarCall;

    }

    /**
     *  Update existing payment gateway.  
     *  Update existing payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentPaymentGateway1(PaymentGatewayDto paymentGatewayDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentPaymentGateway1WithHttpInfo(paymentGatewayDto);
        return localVarResp.getData();
    }

    /**
     *  Update existing payment gateway.  
     *  Update existing payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentPaymentGateway1WithHttpInfo(PaymentGatewayDto paymentGatewayDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentPaymentGateway1ValidateBeforeCall(paymentGatewayDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Update existing payment gateway.   (asynchronously)
     *  Update existing payment gateway.  
     * @param paymentGatewayDto  paymentGateway payment gateway DTO  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentGateway1Async(PaymentGatewayDto paymentGatewayDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentPaymentGateway1ValidateBeforeCall(paymentGatewayDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentPaymentGatewayRumSequence1
     * @param paymentGatewayRumSequenceDto  postData the RUM sequence details  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentGatewayRumSequence1Call(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentGatewayRumSequenceDto;

        // create path and map variables
        String localVarPath = "/payment/paymentGateway/rumSequence";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentPaymentGatewayRumSequence1ValidateBeforeCall(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentPaymentGatewayRumSequence1Call(paymentGatewayRumSequenceDto, _callback);
        return localVarCall;

    }

    /**
     *  Updates a RUM sequence associated to the given payment gateway. 
     *  Updates a RUM sequence associated to the given payment gateway. 
     * @param paymentGatewayRumSequenceDto  postData the RUM sequence details  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentPaymentGatewayRumSequence1(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentPaymentGatewayRumSequence1WithHttpInfo(paymentGatewayRumSequenceDto);
        return localVarResp.getData();
    }

    /**
     *  Updates a RUM sequence associated to the given payment gateway. 
     *  Updates a RUM sequence associated to the given payment gateway. 
     * @param paymentGatewayRumSequenceDto  postData the RUM sequence details  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentPaymentGatewayRumSequence1WithHttpInfo(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentPaymentGatewayRumSequence1ValidateBeforeCall(paymentGatewayRumSequenceDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Updates a RUM sequence associated to the given payment gateway.  (asynchronously)
     *  Updates a RUM sequence associated to the given payment gateway. 
     * @param paymentGatewayRumSequenceDto  postData the RUM sequence details  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentGatewayRumSequence1Async(PaymentGatewayRumSequenceDto paymentGatewayRumSequenceDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentPaymentGatewayRumSequence1ValidateBeforeCall(paymentGatewayRumSequenceDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentPaymentMethod1
     * @param paymentMethodDto  ddPaymentMethod payment method DTO  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentMethod1Call(PaymentMethodDto paymentMethodDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentMethodDto;

        // create path and map variables
        String localVarPath = "/payment/paymentMethod";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentPaymentMethod1ValidateBeforeCall(PaymentMethodDto paymentMethodDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentPaymentMethod1Call(paymentMethodDto, _callback);
        return localVarCall;

    }

    /**
     *  Update existing payment method.  
     *  Update existing payment method.  
     * @param paymentMethodDto  ddPaymentMethod payment method DTO  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentPaymentMethod1(PaymentMethodDto paymentMethodDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentPaymentMethod1WithHttpInfo(paymentMethodDto);
        return localVarResp.getData();
    }

    /**
     *  Update existing payment method.  
     *  Update existing payment method.  
     * @param paymentMethodDto  ddPaymentMethod payment method DTO  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentPaymentMethod1WithHttpInfo(PaymentMethodDto paymentMethodDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentPaymentMethod1ValidateBeforeCall(paymentMethodDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Update existing payment method.   (asynchronously)
     *  Update existing payment method.  
     * @param paymentMethodDto  ddPaymentMethod payment method DTO  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Action status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentMethod1Async(PaymentMethodDto paymentMethodDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentPaymentMethod1ValidateBeforeCall(paymentMethodDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentPaymentScheduleInstance1
     * @param paymentScheduleInstanceDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentScheduleInstance1Call(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentScheduleInstanceDto;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleInstance";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentPaymentScheduleInstance1ValidateBeforeCall(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstance1Call(paymentScheduleInstanceDto, _callback);
        return localVarCall;

    }

    /**
     *  Update  payment Schedules instance.  
     *  Update  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentPaymentScheduleInstance1(PaymentScheduleInstanceDto paymentScheduleInstanceDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentPaymentScheduleInstance1WithHttpInfo(paymentScheduleInstanceDto);
        return localVarResp.getData();
    }

    /**
     *  Update  payment Schedules instance.  
     *  Update  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentPaymentScheduleInstance1WithHttpInfo(PaymentScheduleInstanceDto paymentScheduleInstanceDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstance1ValidateBeforeCall(paymentScheduleInstanceDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Update  payment Schedules instance.   (asynchronously)
     *  Update  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentScheduleInstance1Async(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstance1ValidateBeforeCall(paymentScheduleInstanceDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentPaymentScheduleInstanceCancel1
     * @param paymentScheduleInstanceDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentScheduleInstanceCancel1Call(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentScheduleInstanceDto;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleInstance/cancel";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentPaymentScheduleInstanceCancel1ValidateBeforeCall(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstanceCancel1Call(paymentScheduleInstanceDto, _callback);
        return localVarCall;

    }

    /**
     *  Cancel  payment Schedules instance.  
     *  Cancel  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentPaymentScheduleInstanceCancel1(PaymentScheduleInstanceDto paymentScheduleInstanceDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentPaymentScheduleInstanceCancel1WithHttpInfo(paymentScheduleInstanceDto);
        return localVarResp.getData();
    }

    /**
     *  Cancel  payment Schedules instance.  
     *  Cancel  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentPaymentScheduleInstanceCancel1WithHttpInfo(PaymentScheduleInstanceDto paymentScheduleInstanceDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstanceCancel1ValidateBeforeCall(paymentScheduleInstanceDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Cancel  payment Schedules instance.   (asynchronously)
     *  Cancel  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentScheduleInstanceCancel1Async(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstanceCancel1ValidateBeforeCall(paymentScheduleInstanceDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentPaymentScheduleInstanceTerminate1
     * @param paymentScheduleInstanceDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentScheduleInstanceTerminate1Call(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentScheduleInstanceDto;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleInstance/terminate";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentPaymentScheduleInstanceTerminate1ValidateBeforeCall(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstanceTerminate1Call(paymentScheduleInstanceDto, _callback);
        return localVarCall;

    }

    /**
     *  Terminate  payment Schedules instance.  
     *  Terminate  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentPaymentScheduleInstanceTerminate1(PaymentScheduleInstanceDto paymentScheduleInstanceDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentPaymentScheduleInstanceTerminate1WithHttpInfo(paymentScheduleInstanceDto);
        return localVarResp.getData();
    }

    /**
     *  Terminate  payment Schedules instance.  
     *  Terminate  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentPaymentScheduleInstanceTerminate1WithHttpInfo(PaymentScheduleInstanceDto paymentScheduleInstanceDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstanceTerminate1ValidateBeforeCall(paymentScheduleInstanceDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Terminate  payment Schedules instance.   (asynchronously)
     *  Terminate  payment Schedules instance.  
     * @param paymentScheduleInstanceDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentScheduleInstanceTerminate1Async(PaymentScheduleInstanceDto paymentScheduleInstanceDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleInstanceTerminate1ValidateBeforeCall(paymentScheduleInstanceDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for pUTPaymentPaymentScheduleTemplate1
     * @param paymentScheduleTemplateDto  (optional)
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentScheduleTemplate1Call(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = paymentScheduleTemplateDto;

        // create path and map variables
        String localVarPath = "/payment/paymentScheduleTemplate";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            "application/json", "application/xml"
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call pUTPaymentPaymentScheduleTemplate1ValidateBeforeCall(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleTemplate1Call(paymentScheduleTemplateDto, _callback);
        return localVarCall;

    }

    /**
     *  Create  payment Schedules template.  
     *  Create  payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus pUTPaymentPaymentScheduleTemplate1(PaymentScheduleTemplateDto paymentScheduleTemplateDto) throws ApiException {
        ApiResponse<ActionStatus> localVarResp = pUTPaymentPaymentScheduleTemplate1WithHttpInfo(paymentScheduleTemplateDto);
        return localVarResp.getData();
    }

    /**
     *  Create  payment Schedules template.  
     *  Create  payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> pUTPaymentPaymentScheduleTemplate1WithHttpInfo(PaymentScheduleTemplateDto paymentScheduleTemplateDto) throws ApiException {
        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleTemplate1ValidateBeforeCall(paymentScheduleTemplateDto, null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  Create  payment Schedules template.   (asynchronously)
     *  Create  payment Schedules template.  
     * @param paymentScheduleTemplateDto  (optional)
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td>  Request processing status  </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call pUTPaymentPaymentScheduleTemplate1Async(PaymentScheduleTemplateDto paymentScheduleTemplateDto, final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = pUTPaymentPaymentScheduleTemplate1ValidateBeforeCall(paymentScheduleTemplateDto, _callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
    /**
     * Build call for user92
     * @param _callback Callback for upload/download progress
     * @return Call to execute
     * @throws ApiException If fail to serialize the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td> default response </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call user92Call(final ApiCallback _callback) throws ApiException {
        Object localVarPostBody = null;

        // create path and map variables
        String localVarPath = "/payment/user";

        List<Pair> localVarQueryParams = new ArrayList<Pair>();
        List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
        Map<String, String> localVarHeaderParams = new HashMap<String, String>();
        Map<String, Object> localVarFormParams = new HashMap<String, Object>();
        final String[] localVarAccepts = {
            "application/json", "application/xml"
        };
        final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
        if (localVarAccept != null) {
            localVarHeaderParams.put("Accept", localVarAccept);
        }

        final String[] localVarContentTypes = {
            
        };
        final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes);
        localVarHeaderParams.put("Content-Type", localVarContentType);

        String[] localVarAuthNames = new String[] { "auth" };
        return localVarApiClient.buildCall(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAuthNames, _callback);
    }

    @SuppressWarnings("rawtypes")
    private okhttp3.Call user92ValidateBeforeCall(final ApiCallback _callback) throws ApiException {
        

        okhttp3.Call localVarCall = user92Call(_callback);
        return localVarCall;

    }

    /**
     * 
     * 
     * @return ActionStatus
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td> default response </td><td>  -  </td></tr>
     </table>
     */
    public ActionStatus user92() throws ApiException {
        ApiResponse<ActionStatus> localVarResp = user92WithHttpInfo();
        return localVarResp.getData();
    }

    /**
     * 
     * 
     * @return ApiResponse&lt;ActionStatus&gt;
     * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td> default response </td><td>  -  </td></tr>
     </table>
     */
    public ApiResponse<ActionStatus> user92WithHttpInfo() throws ApiException {
        okhttp3.Call localVarCall = user92ValidateBeforeCall(null);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        return localVarApiClient.execute(localVarCall, localVarReturnType);
    }

    /**
     *  (asynchronously)
     * 
     * @param _callback The callback to be executed when the API call finishes
     * @return The request call
     * @throws ApiException If fail to process the API call, e.g. serializing the request body object
     * @http.response.details
     <table summary="Response Details" border="1">
        <tr><td> Status Code </td><td> Description </td><td> Response Headers </td></tr>
        <tr><td> 0 </td><td> default response </td><td>  -  </td></tr>
     </table>
     */
    public okhttp3.Call user92Async(final ApiCallback<ActionStatus> _callback) throws ApiException {

        okhttp3.Call localVarCall = user92ValidateBeforeCall(_callback);
        Type localVarReturnType = new TypeToken<ActionStatus>(){}.getType();
        localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback);
        return localVarCall;
    }
}
