Eagle · Pagamentos
SoftPOS · Tap on Phone

Limitações

O que o SDK SoftPOS ainda não cobre e como isso afeta a sua integração

Em construção

Esta seção documenta um SDK ainda em desenvolvimento. A API pode mudar, os pacotes ainda não estão publicados e os fluxos descritos não foram homologados em produção.

Lista honesta do que a versão atual não faz, para você planejar a integração sem surpresas.

Não há cancelamento nem estorno

O SDK expõe apenas a venda. Cancelamento e estorno existem no m-SiTef como modalidades próprias, mas ainda não estão na API do SDK.

Enquanto isso: trate cancelamentos pelo processo operacional da sua empresa junto ao time da Eagle.

iOS não é suportado

O m-SiTef Tap on Phone é exclusivo do Android. Os wrappers React Native e Flutter compilam e rodam no iOS, mas isSupported() retorna false e a cobrança não está disponível.

Enquanto isso: esconda a UI de cobrança quando isSupported() for falso.

O relato da venda é best-effort

Não existe callback server-side no m-SiTef: o resultado chega ao backend porque o aplicativo o reporta. Se o app for encerrado pelo sistema entre a aprovação e o retorno da Intent, o portador foi cobrado e o backend não soube.

Consequência para você: não trate o relato como confirmação financeira. A conciliação feita pela Eagle é a fonte de verdade.

Evite lógica de negócio irreversível (baixa de estoque, liberação de entrega) disparada apenas pelo SaleResult do aparelho, sem conferência posterior.

O resultado não é consultável depois

Se o retorno da Intent se perder, o app não tem como perguntar ao m-SiTef qual foi o desfecho da última transação daquele terminal.

Enquanto isso: registre no seu backend a intenção de cobrança antes de chamar startSale, para conseguir investigar divergências depois.

Ativação síncrona

activateSeller é uma chamada síncrona. O credenciamento de um sub-estabelecimento pode depender de análise com prazo de dias — nesses casos, o modelo atual não representa bem a espera.

Enquanto isso: trate erro de ativação como estado do vendedor no seu app, com opção de tentar novamente.

Sem consulta de transações

O contrato atual não oferece listagem ou busca de vendas por vendedor e período.

Enquanto isso: guarde no seu backend o que precisar exibir ao vendedor, a partir do SaleResult devolvido em cada venda.

Roadmap

ItemSituação
Testes instrumentados contra o SITSIMEm andamento
Backend Eagle definitivo (provisionamento e conciliação)Em andamento
Apps de exemplo em React Native e FlutterPlanejado
Publicação em npm, pub.dev e MavenPlanejado
Cancelamento e estornoPlanejado
Split de pagamentoPlanejado

On this page