def __token(self, client_id, redirect_uri, client_secret, code, **kwargs):
        """Call documentation: `/oauth2/token
        <https://www.wepay.com/developer/reference/oauth2#token>`_, plus extra
        keyword parameter:
        
        :keyword bool batch_mode: turn on/off the batch_mode, see 
           :class:`wepay.api.WePay`

        :keyword str batch_reference_id: `reference_id` param for batch call,
           see :class:`wepay.api.WePay`

        :keyword str api_version: WePay API version, see
           :class:`wepay.api.WePay`

        """
        params = {
            'client_id': client_id,
            'redirect_uri': redirect_uri,
            'client_secret': client_secret,
            'code': code
        }
        return self.make_call(self.__token, params, kwargs)