criarApuracaoSemMovimento method

Future<EncerrarApuracaoResponse> criarApuracaoSemMovimento({
  1. String? contribuinteNumero,
  2. required int mesApuracao,
  3. required int anoApuracao,
  4. QualificacaoPj qualificacaoPj = QualificacaoPj.pjEmGeral,
  5. required String cpfResponsavel,
  6. String? emailResponsavel,
  7. String? contratanteNumero,
  8. String? autorPedidoDadosNumero,
})

Cria uma apuração sem movimento de forma simplificada

contribuinteNumero CNPJ do contribuinte mesApuracao Mês da apuração (1-12) anoApuracao Ano da apuração qualificacaoPj Qualificação da PJ (padrão: PJ em geral) cpfResponsavel CPF do responsável pela apuração emailResponsavel E-mail do responsável (opcional) contratanteNumero CNPJ do contratante (opcional) autorPedidoDadosNumero CNPJ do autor do pedido (opcional)

Implementation

Future<EncerrarApuracaoResponse> criarApuracaoSemMovimento({
  String? contribuinteNumero,
  required int mesApuracao,
  required int anoApuracao,
  QualificacaoPj qualificacaoPj = QualificacaoPj.pjEmGeral,
  required String cpfResponsavel,
  String? emailResponsavel,
  String? contratanteNumero,
  String? autorPedidoDadosNumero,
}) async {
  final periodoApuracao = PeriodoApuracao(
    mesApuracao: mesApuracao,
    anoApuracao: anoApuracao,
  );

  final responsavelApuracao = ResponsavelApuracao(
    cpfResponsavel: cpfResponsavel,
    emailResponsavel: emailResponsavel,
  );

  final dadosIniciais = DadosIniciais(
    semMovimento: true,
    qualificacaoPj: qualificacaoPj,
    responsavelApuracao: responsavelApuracao,
  );

  return await encerrarApuracao(
    contribuinteNumero: contribuinteNumero,
    periodoApuracao: periodoApuracao,
    dadosIniciais: dadosIniciais,
    transmissaoImediata: true,
    contratanteNumero: contratanteNumero,
    autorPedidoDadosNumero: autorPedidoDadosNumero,
  );
}