Atualizar carga de tabelas
Force a atualização da carga de tabelas no Plugin SmartPOS sem iniciar venda, com callbacks, mensagens e tratamento de erros.
Force a atualização da carga de tabelas no terminal SmartPOS sem iniciar um fluxo de venda.
Esta funcionalidade não é mandatória. Durante uma transação, o dispositivo realiza a carga de tabelas automaticamente quando necessário.
Quando usar
Use a atualização de carga de tabelas quando quiser preparar o terminal antes de uma operação transacional ou executar uma atualização manual sem iniciar uma venda.
Esse fluxo pode ser útil para:
- validar se o terminal está pronto antes do atendimento;
- reduzir esperas durante a primeira venda;
- executar uma atualização operacional sob demanda;
- exibir mensagens de progresso ao operador.
Pré-requisitos
Antes de atualizar a carga de tabelas:
1. Ative o terminal em Ativação SmartPOS.
2. Inicialize o SDK e plugue o SmartPOSPlugin em Inicialização SmartPOS.
3. Solicite as permissões Android necessárias em tempo de execução.
4. Prepare a interface para exibir mensagens recebidas pelo messageCallback.
Classe utilizada
Para atualizar a carga de tabelas, use a classe SmartPOSTableLoadRequestBuilder.
A requisição é criada por:
SmartPOSPlugin.createTableLoadRequestBuilder()Exemplo
val tableLoadRequest = SmartPOSPlugin.createTableLoadRequestBuilder()
.callback(object: Callback<SmartPOSTableLoadResponse>() \{
override fun onFail(error: Throwable) {
handleFailTableLoad(error)
}
override fun onSuccess(response: SmartPOSTableLoadResponse) {
handleSuccessTableLoad(response)
}
\})
.messageCallback(object: Callback<MessageCallbackRequestField.MessageData>() \{
override fun onFail(error: Throwable) {
}
override fun onSuccess(response: MessageCallbackRequestField.MessageData) {
displayUserMessage(response.message)
}
\})
.build()
Zoop.post(tableLoadRequest)Retorno
Quando a carga é concluída com sucesso, o callback principal recebe um objeto SmartPOSTableLoadResponse.
data class SmartPOSTableLoadResponse(
val message: String
)| Campo | Tipo | Descrição |
|---|---|---|
message | String | Mensagem retornada ao final do fluxo de carga. |
Callbacks
.callback
.callbackControla o fluxo principal da carga: início, sucesso, falha e conclusão.
| Método | Quando ocorre | Ação recomendada |
|---|---|---|
onStart | A carga foi iniciada. | Exiba um estado de carregamento, se necessário. |
onSuccess | A carga foi concluída com sucesso. | Informe o sucesso ao operador e siga com o fluxo do app. |
onFail | A carga falhou. | Trate a exceção e exiba uma mensagem de erro. |
onComplete | O fluxo terminou, com sucesso ou falha. | Remova estados de carregamento. |
Exceções de falha
Em onFail, você pode receber uma destas exceções:
| Exceção | Quando ocorre |
|---|---|
ZoopPaymentException | Falha no fluxo da carga. A mensagem pode ser acessada em exception.message. |
ZoopTimeoutException | Tempo excedido na operação. |
ZoopClosedConnectionException | Conexão interrompida. |
ZoopNetworkException | Falha de conexão. |
.messageCallback
.messageCallbackRecebe mensagens do fluxo da carga de tabelas.
| Método | Quando ocorre | Ação recomendada |
|---|---|---|
onSuccess | Uma mensagem foi enviada pelo fluxo. | Exiba response.message para o usuário. |
onFail | Não recebe dados. | Nenhuma ação necessária. |
Tratamento recomendado
Trate todos os estados da carga para manter o operador informado:
1. Em onStart, indique que a atualização começou.
2. Em messageCallback.onSuccess, exiba as mensagens recebidas do terminal.
3. Em callback.onSuccess, informe que a atualização foi concluída.
4. Em callback.onFail, exiba erro e permita nova tentativa.
5. Em onComplete, libere a interface.
Checklist da carga de tabelas
Antes de enviar a requisição com Zoop.post(tableLoadRequest), confirme:
- O SDK foi inicializado com credenciais.
- O
SmartPOSPluginfoi plugado. - As permissões necessárias foram concedidas.
- A interface exibe mensagens do
messageCallback. - O app trata sucesso, falha e conclusão no callback principal.
- O operador entende que este fluxo não inicia uma venda.
Próximo passo
Depois de implementar a atualização de carga de tabelas, consulte Pagamento via cartão ou Pagamento via Pix para iniciar fluxos transacionais.
Updated 9 days ago
