Tarefa de Serviço(Service Task)
Atividade automática executada por software — um serviço web, uma chamada de API ou uma função de sistema — sem envolvimento humano. O motor invoca a implementação e segue quando ela retorna. Marcador de engrenagem.
A Tarefa de Serviço (Service Task) é o cavalo de batalha da automação: sempre que o processo precisa que um sistema *faça* algo — cobrar um cartão, criar um registro, chamar uma API — a tarefa de serviço é o elemento que declara isso.
Na especificação BPMN 2.0, a tarefa referencia sua implementação (por exemplo, uma operação de serviço web). Em execução, o motor chama essa implementação, mapeia dados de entrada e saída e conclui a tarefa quando a chamada retorna. Falhas são tipicamente modeladas com um Evento de Borda de Erro anexado.
Quando usar e evitar
Quando usar
Para trabalho sistema-a-sistema: chamar uma API, atualizar um registro, gerar um documento, efetivar um pagamento.
Quando o passo deve rodar sem esperar uma pessoa, mantendo o processo andando 24/7.
Quando falhas da integração devem ser tratadas explicitamente no fluxo (borda de erro + caminho alternativo).
Quando NÃO usar
Quando uma pessoa decide ou digita os dados — Tarefa de Usuário.
Quando o passo automático é uma lógica pequena que o próprio motor executa (cálculo, transformação) — a Tarefa de Script é mais leve que uma chamada de serviço.
Quando a essência do passo é *comunicação com outro participante* — Tarefa de Envio / Recebimento expressam melhor a intenção.
Exemplo de negócio
Cobrando o cartão de crédito no checkout

Abra este exemplo no editor de processos da HEFLO e explore o diagrama por dentro.
Abrir no editor HEFLO →Passo a passo
- O processo inicia quando o cliente fecha o pedido.
- A Tarefa de Serviço “Cobrar cartão de crédito” (destacada) chama o gateway de pagamento — nenhum humano envolvido; o motor só espera a resposta da API.
- Atualizar ERP registra o pagamento no back-office, também automaticamente.
- O processo termina com o pagamento efetivado.
Em um modelo de produção, você anexaria um Evento de Borda de Erro à cobrança para rotear cartões recusados a um caminho de recuperação.
Diferenças
Diferença entre Tarefa de Serviço e Tarefa de Script
Ambas são automáticas, mas a de Serviço chama algo *fora* do motor (serviço web, API, outro sistema), enquanto a de Script roda um script *dentro* do próprio motor. Regra prática: integração → Serviço; lógica interna pequena → Script.
Diferença entre Tarefa de Serviço e Tarefa de Envio
A Tarefa de Envio existe especificamente para transmitir uma *mensagem a outro participante* (outro Pool) e se liga a um fluxo de mensagem. A de Serviço é uma chamada genérica com caráter requisição/resposta. Escolha pela intenção: integração → Serviço; comunicação entre participantes → Envio.
FAQ
O que acontece se a chamada de serviço falhar?
Modele explicitamente: anexe um Evento de Borda de Erro à tarefa e roteie a falha para um caminho de recuperação ou retry. Muitos motores ainda oferecem novas tentativas automáticas antes de levantar o erro.
Tarefa de Serviço é síncrona ou assíncrona?
Conceitualmente conclui quando o trabalho termina. Os motores implementam os dois padrões: chamada bloqueante para operações rápidas e continuação assíncrona (callbacks/filas) para longas — o diagrama fica igual.
Onde a implementação do serviço é definida?
Nos atributos técnicos do modelo (a spec referencia uma operação de interface de serviço). Na prática, cada ferramenta oferece seu binding — endpoint REST, conector, script de integração — configurado na tarefa.