Skip to main content

Python SDK for OnlineKacca

Project description

Библиотека для интеграции вашего сайта с с облачным сервисом распределенной печати чеков OnlineКасса

https://img.shields.io/travis/Komtet/komtet-kassa-python-sdk.svg?style=flat-square

Установка

С помощью pip:

# pip install komtet_kassa_sdk

Вручную:

$ git clone https://github.com/Motmom/komtet-kassa-python-sdk
$ cd komtet-kassa-python-sdk
# python setup.py install

Использование

  1. При старте вашего веб-приложения необходимо сконфигурировать пакет, подобно следующему коду:

from komtet_kassa_sdk import configure

configure({
    'shop_key': 'YoUr_sHOp_Key',
    'shop_secret': 'yoUR_sHop_SecReT',
    'sno': 0,
    'named_queues': {
        '__default__': 231,
        'first': 123,
        'second': 231
    }
})

Здесь основными двумя настройками являются shop_key и shop_secret, которые выдаются вам при регистрации интернет магазина на сервисе OnlineКасса. sno - номер системы налогооблажения по умолчанию, варианты которой вы можете посмотреть ниже в таблице параметров чека. Четвертый необязательный параметр named_queues, с помощью которого вы можете задать очередь для печати по умолчанию или их человекочетаемые именования.

  1. Создание чека для отправки на печать

from komtet_kassa_sdk import Check

check = Check(
    task_id='t00123',
    positions=[{
        'name': 'капуста',
        'price': 150
    }, {
        'name': 'молоко',
        'price': 152.5,
        'quantity': 2
    }],
    payment=455,
    user_email='user_email_to_send_check@mail.ru'
)

Основные параметры чека:

ключ

тип

описание

task_id

string

уникальный идентификатор предоставляемый интернет магазином

user_email

string

email клиента интернет магазина, на который будет отправлено письмо с электронным чеком

positions

list

позиции в чеке

payment

int, float, dict

итоговая сумма расчета

sno

int

система налогооблажения, где
  • 0 - ОСН

  • 1 - УСН доход

  • 2 - УСН доход - расход

  • 3 - ЕНВД

  • 4 - ЕСН

  • 5 - Патент

intent

one of: SELL, SELL_RETURN

признак расчета чека: приход или возврат, по умолчанию SELL

is_print

bool

параметр отвечающий за печать чека, по умолчанию False

Параметры итоговой суммы расчета:

ключ

тип

описание

type

one of: CARD, CASH

форма расчета, по умолчанию CARD

sum

int, float

сумма расчета

Параметры позиции по чеку:

ключ

тип

описание

name

string

наименование товара или услуги

price

int, float

цена за единицу

quantity

int, float

количество, по умолчанию 1

total

int, float

сумма по позиции, по умолчанию price * quantity

vat

dict

система налогооблажения

Параметры налога:

ключ

тип

описание

number

one of: WITHOUT_VAT, VAT0, VAT10, VAT18, VAT110, VAT118

тип налогооблажения

sum

int, float

сумма налога

Примечание: по умолчанию налог на позицию

from cloud_kassa_sdk import WITHOUT_VAT
{
    'number': WITHOUT_VAT,
    'sum': 0
}
  1. Отправка чека на печать

check.print_out(123)

Требуется указать идентификатор очереди печати. Если пакет был сконфигурирован с ключом named_queues, то можно воспользоваться одним из следующих вариантов:

  • отправка в очередь по умолчанию, при условии что указан ключ __default__

check.print_out()
  • отправка в очередь с человекочитаемым названием

check.print_out('first')

Changelog

0.1.5 (10.07.2017)

  • Исправлена возможность установки sno чека в ОСН

0.1.4 (06.07.2017)

  • Добавлен новый параметр чека sno (система налогооблажения)

0.1.0 (19.06.2017)

  • Первый релиз

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

komtet_kassa_sdk-0.1.6.tar.gz (9.8 kB view details)

Uploaded Source

File details

Details for the file komtet_kassa_sdk-0.1.6.tar.gz.

File metadata

File hashes

Hashes for komtet_kassa_sdk-0.1.6.tar.gz
Algorithm Hash digest
SHA256 4157ec99f10527cec4c68541bfe61bf4ab9176179662774b726fec61318f37ae
MD5 8c49cacaacc66aa012f3224b7a51de00
BLAKE2b-256 90d0cae5dc8eacfa8543806a7f52f9e8db569a16be9fbab92443fde24f82128f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page