Metadata-Version: 2.1
Name: npdtools
Version: 0.1a2
Summary: tool for work with FNS API
Home-page: https://gitlab.com/whiteapfel/npdtools
Author: WhiteApfel
Author-email: white@pfel.ru
License: MPL 2.0
Project-URL: Документальное чтиво, https://npd-tools.readthedocs.io/en/latest/
Project-URL: Донатик, https://pfel.cc/donate
Project-URL: Исходнички, https://gitlab.com/whiteapfel/npdtools/
Project-URL: Тележка для вопросов, https://t.me/apfel
Description: # NPDTools
        
        Ищешь инструмент для удобного декларирования доходов? 
        Хочешь автоматизировать выдачу чеков клиентам?
        Надоело заходить в Мой налог? Надоедает проверять, что каждый приход зарегистрирован в налоговой?
        Боишься ошибиться и получить безжалостный удар от ФНС кнутом без пряника?
        
        ### ВЫХОД ЕСТЬ! Для этого потребуется простая питоняшая...
        
        Нет, не сода. Либа. README которой ты сейчас читаешь. 
        Да, она позволяет работать с API Федеральной налоговой службы (ФНС) в рамках возможностей
        приложения "Мой налог". Больше она не умеет. Столько же не умеет. Меньше умеет.
        Надеюсь, теперь все люди, что искали подобный инструмент в гугле, смогли его найти.
        Можно приступить к содержательной части. 
        
        ## Если ты не знаешь свой ⚠️ password ⚠️
        
        Если входишь в lknpd.nalog.ru или "Мой налог" через Госуслуги (ЕСИА) или просто не помнишь пароль,
        надо зайти на [lkfl2.nalog.ru](https://lkfl2.nalog.ru 'Личный кабинет физлица') и там по ситуации:
        * Войти так же через Госуслуги и сменить (установить) пароль в настройках профиля
        * Войти по электронной подписи и сменить пароль в настройках профиля
        * Нажать кнопочку "Восстановить пароль" и пройти процедуру восстановления
        * Не разобраться в ситуации и смириться со сложностью бытия
        
        ## Что может библиотека?
        
        Собственно, всё сводится к выставлению и закрытию чеков. Можно ещё получать их историю,
        но это плохо реализовано у меня, потому что я криволапка, но только пока.
        Что? Примеров хочешь? Держи примеров. Обмажься. 
        
        ### Выставляем чек, как профи
        
        ```python
        from npdtools import NPDTools
        client = NPDTools("123456789012", "~_ub&TS5RY~k9,czo(q*")
        
        # Для начала составим корзину.
        # 1. Метод здорового человека
        cheque = Services()
        cheque.add("Коробка для изюма из дерева с декоративными элементами", 250, 1)
        
        # 2. Метод немного здорового человека
        cheque = Services(Service("Коробка", 250.5, 10), Service("Бант", 67.89, 5))
        
        # 3. Метод немного нездорового человека
        cheque = Services(("Скворечник", 3600, 1), ("Палка для скворечника", 1000, 1))
        
        # 4. Метод нездорового человека.Можно добавить только одну позицию.
        bill = client.add_income(Service(("Носочки", 20007.08, 1)))
        
        # 5. Метод больного человека. Можно добавить только одну позицию.
        bill = client.add_income(("Что-то неведомое", 100, 2))
        
        # Как выставлять физлицам?
        bill = client.add_income(cheque)
        
        # ИП или ООО или прочая российская организация?
        from npdtools.types import Client
        bill = client.add_income(cheque, Client(display_name="ИП Иванов Иван Иваныч", inn=1123456789012))
        
        # А иностранная?
        from npdtools.types import Client
        bill = client.add_income(cheque, Client(display_name="Rusalky Davalky Inc."))
        ```
        
        ### Канселим чеки, как Италию
        
        ```python
        from npdtools import NPDTools
        client = NPDTools("123456789012", "~_ub&TS5RY~k9,czo(q*")
        
        cheque = Services()
        cheque.add("Коробка для изюма из дерева с декоративными элементами", 250, 1)
        bill = client.add_income(cheque)
        
        # Отменяем выставленный счёт
        client.cancel_income(bill.id)
        
        # Ну или как-то по-другому указываем номер чека. Можно и кастомный коммент.
        client.cancel_income(id="73489273597", comment="Клиент гопник я с ним работать не буду")
        ```
        
        ### P.S.
        Я буду ещё дописывать библиотеку, да. Но пока так. Она не такая простая, как кажется.
        
        Буду рад конструктивным пул реквестам и иссуям.
Keywords: FNS API wrapper nalog налог ФНС самозанятость
Platform: UNKNOWN
Description-Content-Type: text/markdown
