transmitirDeclaracao method
- String? contribuinteNumero,
- required TransmitirDeclaracaoRequest declaracaoData,
- String? contratanteNumero,
- String? autorPedidoDadosNumero,
Transmite a Declaração Sócio Econômica - DEFIS
contribuinteNumero CNPJ do contribuinte (apenas Pessoa Jurídica é aceita)
declaracaoData Dados da declaração incluindo ano, empresa, situação especial, etc.
contratanteNumero Número do contratante (opcional, usa dados da autenticação se não informado)
autorPedidoDadosNumero Número do autor do pedido de dados (opcional, usa dados da autenticação se não informado)
Implementation
Future<TransmitirDeclaracaoResponse> transmitirDeclaracao({
String? contribuinteNumero,
required TransmitirDeclaracaoRequest declaracaoData,
String? contratanteNumero,
String? autorPedidoDadosNumero,
}) async {
final resolvedContribuinte =
contribuinteNumero ??
_apiClient.contribuinteNumero ??
(throw ArgumentError('CNPJ do contribuinte é obrigatório'));
final request = BaseRequest(
contribuinteNumero: resolvedContribuinte,
pedidoDados: PedidoDados(
idSistema: 'DEFIS',
idServico: 'TRANSDECLARACAO141',
versaoSistema: '1.0',
dados: jsonEncode(declaracaoData.toJson()),
),
);
final response = await _apiClient.post(
'/Declarar',
request,
contratanteNumero: contratanteNumero,
autorPedidoDadosNumero: autorPedidoDadosNumero,
);
return TransmitirDeclaracaoResponse.fromJson(response);
}