Перейти к содержанию

Client

Создание клиента, авторизация и настройки HTTP-запросов. Платежные методы описаны в разделе Payments, получение статуса - в Order Status.

Класс доступен через from gocream_pysberbank import SberbankClient. Псевдонимы Sberbank и SberbankPaymentApi указывают на тот же класс.

gocream_pysberbank.http.SberbankClient

SberbankClient(
    username=None,
    password=None,
    token=None,
    url=DEFAULT_URL,
    api_type=DEFAULT_API_TYPE,
    language=DEFAULT_LANGUAGE,
    currency=DEFAULT_CURREBCY,
    ensure_ascii=True,
)

Client for the legacy SberBank payment API maintained by YooKassa.

username - username at sberbank api password - password at sberbank api url - api url address api_type - api type (soap | rest) only rest ready language - default language (ISO 639-1) currency - default currency (ISO 4217)

@TODO: * remove url parameter in favor of a boolean production parameter * move ensure_ascii parameter to _make_data method parameter and pass it from class methods

Source code in gocream_pysberbank/http.py
def __init__(
    self,
    username=None,
    password=None,
    token=None,
    url=DEFAULT_URL,
    api_type=DEFAULT_API_TYPE,
    language=DEFAULT_LANGUAGE,
    currency=DEFAULT_CURREBCY,
    ensure_ascii=True,
):
    """
    username - username at sberbank api
    password - password at sberbank api
    url - api url address
    api_type - api type (soap | rest) only rest ready
    language - default language (ISO 639-1)
    currency - default currency (ISO 4217)

    @TODO:
     * remove `url` parameter in favor of a boolean `production` parameter
     * move `ensure_ascii` parameter to `_make_data` method parameter and pass it from class methods
    """

    if (not (bool(username) and bool(password))) == (token is None):
        raise SberbankException("Auth params require. Setup username/password pair or token, not both")

    self.username = username
    self.password = password
    self.token = token

    self.url = url
    self.api_type = api_type
    self.language = language
    self.currency = currency

    self.ensure_ascii = ensure_ascii