mirror of
https://github.com/anthonyaxenov/atol-online.git
synced 2024-11-25 11:44:11 +00:00
Доработки енамов и тегов ФФД
This commit is contained in:
parent
11646113b6
commit
cb24bb1fb0
@ -39,11 +39,21 @@ final class Ffd105Tags
|
||||
*/
|
||||
const COMPANY_INN = 1008;
|
||||
|
||||
/**
|
||||
* Применяемая система налогообложения
|
||||
*/
|
||||
const COMPANY_SNO = 1055;
|
||||
|
||||
/**
|
||||
* Место расчётов
|
||||
*/
|
||||
const COMPANY_PADDRESS = 1187;
|
||||
|
||||
/**
|
||||
* Признак агента по предмету расчёта
|
||||
*/
|
||||
const AGENT_TYPE = 1222;
|
||||
|
||||
/**
|
||||
* Телефон оператора по приёму платежей
|
||||
*/
|
||||
@ -132,7 +142,7 @@ final class Ffd105Tags
|
||||
/**
|
||||
* Сумма акциза с учётом копеек, включённая в стоимость предмета расчёта
|
||||
*/
|
||||
const ITEM_PAYMENT_EXSICE = 1229;
|
||||
const ITEM_EXCISE = 1229;
|
||||
|
||||
/**
|
||||
* Цифровой код страны происхождения товара в соответствии с Общероссийским классификатором стран мира
|
||||
@ -146,4 +156,69 @@ final class Ffd105Tags
|
||||
* Номер таможенной декларации (в соотв. с приказом ФНС России от 24.03.2016 N ММВ-7-15/155)
|
||||
*/
|
||||
const ITEM_DECLARATION_NUMBER = 1231;
|
||||
|
||||
/**
|
||||
* Тип коррекции
|
||||
*/
|
||||
const CORRECTION_TYPE = 1173;
|
||||
|
||||
/**
|
||||
* Сумма по чеку (БСО) наличными
|
||||
*/
|
||||
const PAYMENT_TYPE_CASH = 1031;
|
||||
|
||||
/**
|
||||
* Сумма по чеку безналичными
|
||||
*/
|
||||
const PAYMENT_TYPE_ELECTRON = 1081;
|
||||
|
||||
/**
|
||||
* Сумма по чеку предоплатой
|
||||
*/
|
||||
const PAYMENT_TYPE_PREPAID = 1215;
|
||||
|
||||
/**
|
||||
* Сумма по чеку постоплатой
|
||||
*/
|
||||
const PAYMENT_TYPE_CREDIT = 1216;
|
||||
|
||||
/**
|
||||
* Сумма по чеку встречным представлением
|
||||
*/
|
||||
const PAYMENT_TYPE_OTHER = 1217;
|
||||
|
||||
/**
|
||||
* Ставка НДС
|
||||
*/
|
||||
const ITEM_VAT_TYPE = 1199;
|
||||
|
||||
/**
|
||||
* Сумма расчета по чеку без НДС
|
||||
*/
|
||||
const DOC_VAT_TYPE_NONE = 1105;
|
||||
|
||||
/**
|
||||
* Сумма расчета по чеку с НДС по ставке 0%
|
||||
*/
|
||||
const DOC_VAT_TYPE_VAT0 = 1104;
|
||||
|
||||
/**
|
||||
* Сумма НДС чека по ставке 10%
|
||||
*/
|
||||
const DOC_VAT_TYPE_VAT10 = 1103;
|
||||
|
||||
/**
|
||||
* Сумма НДС чека по ставке 20%
|
||||
*/
|
||||
const DOC_VAT_TYPE_VAT20 = 1102;
|
||||
|
||||
/**
|
||||
* Сумма НДС чека по расч. ставке 10/110
|
||||
*/
|
||||
const DOC_VAT_TYPE_VAT110 = 1107;
|
||||
|
||||
/**
|
||||
* Сумма НДС чека по расч. ставке 20/120
|
||||
*/
|
||||
const DOC_VAT_TYPE_VAT120 = 1106;
|
||||
}
|
||||
|
@ -12,6 +12,7 @@ declare(strict_types = 1);
|
||||
namespace AtolOnline\Entities;
|
||||
|
||||
use AtolOnline\Enums\VatTypes;
|
||||
use AtolOnline\Exceptions\InvalidEnumValueException;
|
||||
use AtolOnline\Helpers;
|
||||
|
||||
/**
|
||||
@ -48,6 +49,7 @@ class Vat extends Entity
|
||||
*
|
||||
* @param string $type Тип ставки НДС
|
||||
* @return $this
|
||||
* @throws InvalidEnumValueException
|
||||
*/
|
||||
public function setType(string $type): self
|
||||
{
|
||||
|
@ -11,10 +11,12 @@ declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use AtolOnline\Constants\Ffd105Tags;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы агента
|
||||
*
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 18
|
||||
* @see https://online.atol.ru/files/API_atol_online_v4.pdf Документация, стр 18, 26
|
||||
*/
|
||||
final class AgentTypes extends Enum
|
||||
{
|
||||
@ -58,6 +60,6 @@ final class AgentTypes extends Enum
|
||||
*/
|
||||
public static function getFfdTags(): array
|
||||
{
|
||||
return [1057];
|
||||
return [Ffd105Tags::AGENT_TYPE];
|
||||
}
|
||||
}
|
||||
|
@ -11,6 +11,8 @@ declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use AtolOnline\Constants\Ffd105Tags;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы документов коррекции
|
||||
*
|
||||
@ -33,6 +35,6 @@ final class CorrectionTypes extends Enum
|
||||
*/
|
||||
public static function getFfdTags(): array
|
||||
{
|
||||
return [1173];
|
||||
return [Ffd105Tags::CORRECTION_TYPE];
|
||||
}
|
||||
}
|
||||
|
@ -11,6 +11,8 @@ declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use AtolOnline\Constants\Ffd105Tags;
|
||||
|
||||
/**
|
||||
* Константы, определяющие признаки способов расчёта
|
||||
*
|
||||
@ -58,6 +60,6 @@ final class PaymentMethods extends Enum
|
||||
*/
|
||||
public static function getFfdTags(): array
|
||||
{
|
||||
return [1214];
|
||||
return [Ffd105Tags::ITEM_PAYMENT_METHOD];
|
||||
}
|
||||
}
|
||||
|
@ -11,6 +11,8 @@ declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use AtolOnline\Constants\Ffd105Tags;
|
||||
|
||||
/**
|
||||
* Константы, определяющие признаки предметов расчёта
|
||||
*
|
||||
@ -160,6 +162,6 @@ final class PaymentObjects extends Enum
|
||||
*/
|
||||
public static function getFfdTags(): array
|
||||
{
|
||||
return [1212];
|
||||
return [Ffd105Tags::ITEM_PAYMENT_OBJECT];
|
||||
}
|
||||
}
|
||||
|
@ -11,6 +11,8 @@ declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use AtolOnline\Constants\Ffd105Tags;
|
||||
|
||||
/**
|
||||
* Константы, определяющие виды оплат
|
||||
*
|
||||
@ -31,7 +33,7 @@ final class PaymentTypes extends Enum
|
||||
/**
|
||||
* Предварительная оплата (зачёт аванса)
|
||||
*/
|
||||
const PRE_PAID = 2;
|
||||
const PREPAID = 2;
|
||||
|
||||
/**
|
||||
* Предварительная оплата (кредит)
|
||||
@ -78,6 +80,12 @@ final class PaymentTypes extends Enum
|
||||
*/
|
||||
public static function getFfdTags(): array
|
||||
{
|
||||
return [1031, 1081, 1215, 1216, 1217];
|
||||
return [
|
||||
Ffd105Tags::PAYMENT_TYPE_CASH,
|
||||
Ffd105Tags::PAYMENT_TYPE_ELECTRON,
|
||||
Ffd105Tags::PAYMENT_TYPE_PREPAID,
|
||||
Ffd105Tags::PAYMENT_TYPE_CREDIT,
|
||||
Ffd105Tags::PAYMENT_TYPE_OTHER,
|
||||
];
|
||||
}
|
||||
}
|
||||
|
@ -11,6 +11,8 @@ declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use AtolOnline\Constants\Ffd105Tags;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы налогообложения
|
||||
*
|
||||
@ -53,6 +55,6 @@ final class SnoTypes extends Enum
|
||||
*/
|
||||
public static function getFfdTags(): array
|
||||
{
|
||||
return [1055];
|
||||
return [Ffd105Tags::COMPANY_SNO];
|
||||
}
|
||||
}
|
||||
|
@ -11,12 +11,10 @@ declare(strict_types = 1);
|
||||
|
||||
namespace AtolOnline\Enums;
|
||||
|
||||
use MyCLabs\Enum\Enum;
|
||||
use AtolOnline\Constants\Ffd105Tags;
|
||||
|
||||
/**
|
||||
* Константы, определяющие типы ставок НДС
|
||||
*
|
||||
* Теги ФФД: 1199, 1105, 1104, 1103, 1102, 1107, 1106
|
||||
*/
|
||||
final class VatTypes extends Enum
|
||||
{
|
||||
@ -59,4 +57,20 @@ final class VatTypes extends Enum
|
||||
* НДС 20/120%
|
||||
*/
|
||||
const VAT120 = 'vat120';
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public static function getFfdTags(): array
|
||||
{
|
||||
return [
|
||||
Ffd105Tags::ITEM_VAT_TYPE,
|
||||
Ffd105Tags::DOC_VAT_TYPE_NONE,
|
||||
Ffd105Tags::DOC_VAT_TYPE_VAT0,
|
||||
Ffd105Tags::DOC_VAT_TYPE_VAT10,
|
||||
Ffd105Tags::DOC_VAT_TYPE_VAT20,
|
||||
Ffd105Tags::DOC_VAT_TYPE_VAT110,
|
||||
Ffd105Tags::DOC_VAT_TYPE_VAT120,
|
||||
];
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user