‹ Configurar acessoCENTRAL MD

Registrar despesa
pelo Atalhos.

Configure uma vez. Depois, preencha quatro campos e confirme pelo iPhone.

1. Prepare o MD

  1. Execute SQL_Atalhos_MD_v10_17_84.sql no mesmo Supabase. Ele requer o SQL PagBank v10.17.82 já instalado.
  2. Publique o conteúdo completo do ZIP v10.17.84 no site atual.
  3. No MD, abra Mais → Atalhos do iPhone. Entre com sua conta e toque em Gerar acesso.
  4. Deixe a página aberta para copiar os quatro campos. No app Arquivos, crie a pasta iCloud Drive → Shortcuts → MD (a pasta Shortcuts pode aparecer como Atalhos).

O código privado permite somente criar despesas pessoais e consultar opções. Não use sua senha do MD nem uma chave administrativa. O código vale por 180 dias e pode ser revogado nessa página.

2. Crie o atalho e sua configuração

Abra Atalhos → + e dê o nome Registrar despesa MD. Os nomes das ações podem variar ligeiramente conforme a versão do iOS.

  1. Adicione a ação Dicionário. Crie quatro campos do tipo Texto, preenchidos com os valores copiados da página:
ChaveValor
tokenCódigo privado do atalho
apikeyChave pública
options_urlURL para consultar opções
save_urlURL para registrar despesa

Em seguida, use Definir Variável para guardar esse dicionário com o nome Config. Sempre que o guia disser Config.token, use Obter Valor do Dicionário, chave token, no dicionário Config. Isso vale também para os demais campos. As referências às variáveis devem ser selecionadas no editor; não digite os nomes como texto literal.

3. Confira se existe um envio pendente

  1. Adicione Obter Arquivo da Pasta. Selecione a pasta iCloud Drive/Shortcuts/MD e o caminho despesa-pendente.json. Desative Erro se Não Encontrado nas opções da ação. Não use a opção que pergunta qual arquivo abrir a cada execução.
  2. Adicione Se: o arquivo tem algum valor.
  3. Dentro desse primeiro ramo, use Obter Dicionário da Entrada com o arquivo e Definir Variável com nome Envio.
  4. Ainda no ramo, use Mostrar Alerta: “Existe uma despesa aguardando confirmação. Vou conferir o mesmo envio, sem duplicar.” Deixe o botão Cancelar disponível.
  5. No ramo Senão, coloque todas as ações da próxima seção. Deixe o Fim de Se depois delas.

Assim, uma nova execução confere primeiro a despesa que ficou sem resposta. Ela não substitui o arquivo pendente por uma nova compra.

4. Peça os dados de uma nova despesa

Estas ações ficam dentro de Senão:

  1. Obtenha options_url, apikey e token de Config.
  2. Adicione Obter Conteúdo do URL, usando Config.options_url. Método POST; cabeçalhos apikey = chave pública e Content-Type = application/json. Em Corpo da Solicitação, escolha JSON e adicione o campo de texto p_token = código privado.
  3. Guarde a resposta em uma variável Opcoes. Use Obter Valor do Dicionário para ler ok. Se não for verdadeiro, mostre o campo message de Opcoes e use Parar Este Atalho. Não continue com uma lista vazia.
  4. Pedir Entrada, tipo Número, pergunta “Quanto você gastou?”. Guarde a resposta em Valor. Digite apenas o valor, sem “R$”.
  5. Pedir Entrada, tipo Texto, pergunta “Com o que você gastou?”. Guarde em Descricao.
  6. Obtenha categories de Opcoes. Passe a lista para Escolher da Lista, pergunta “Qual categoria?”, sem seleção múltipla. Guarde em Categoria.
  7. Obtenha accounts de Opcoes. Passe para Escolher da Lista, pergunta “De onde saiu?”, sem seleção múltipla. Guarde em Conta.
  8. Obtenha date de Opcoes e guarde em Dia. O MD devolve a data de hoje no fuso da Bahia.
  9. Obtenha request_id de Opcoes e guarde em PedidoID. O MD já gerou esse identificador para o envio; não é necessário instalar outro app para gerar UUID.
  10. Crie outro Dicionário com os campos abaixo e guarde em Envio:
ChaveTipoVariável
p_requestTextoPedidoID
p_valueNúmeroValor
p_descriptionTextoDescricao
p_categoryTextoCategoria
p_accountTextoConta
p_dateTextoDia
  1. Adicione Mostrar Alerta, com as variáveis de valor, descrição, categoria, conta e dia no texto. Deixe Cancelar disponível. Confirme antes de gravar o arquivo.
  2. Use Obter Texto da Entrada com o dicionário Envio para obter seu JSON. Depois, Definir Nome como despesa-pendente.json.
  3. Use Salvar Arquivo na pasta iCloud Drive/Shortcuts/MD, com “Perguntar Onde Salvar” desativado. O nome deve ser exatamente despesa-pendente.json. Não permita nomes automáticos como “despesa-pendente 2.json”.

Aqui termina o ramo Senão. As próximas ações ficam depois de Fim de Se, para funcionarem tanto para uma despesa nova quanto para conferir uma pendente.

5. Envie e confira a resposta

  1. Obtenha os seis campos do dicionário Envio com Obter Valor do Dicionário. Obtenha também save_url, apikey e token de Config.
  2. Adicione Obter Conteúdo do URL com Config.save_url. Método POST. Cabeçalhos: apikey = chave pública e Content-Type = application/json. Corpo JSON:
CampoTipoValor selecionado no editor
p_tokenTextoConfig.token
p_requestTextoEnvio.p_request
p_valueNúmeroEnvio.p_value
p_descriptionTextoEnvio.p_description
p_categoryTextoEnvio.p_category
p_accountTextoEnvio.p_account
p_dateTextoEnvio.p_date
  1. Guarde a resposta em Resposta. Obtenha ok de Resposta. Adicione Se esse valor for verdadeiro.
  2. No ramo verdadeiro, use Obter Arquivo da Pasta novamente com o caminho exato despesa-pendente.json, depois Apagar Arquivos. Se o iPhone pedir confirmação, confirme. Apague somente esse arquivo.
  3. Ainda no ramo verdadeiro, obtenha message de Resposta e use Mostrar Resultado com essa mensagem.
  4. No ramo Senão, mostre message de Resposta e o aviso “Não confirmado. O envio pendente foi mantido.” Não apague o arquivo.

Se a rede falhar e o próprio Atalhos interromper a execução antes da resposta, o arquivo permanece. Abra Registrar despesa MD novamente para conferir o mesmo envio. Não gere outro UUID nem edite os dados pendentes.

Se houver um erro de preenchimento confirmado pelo servidor, corrija pelo MD ou, após conferir que nada foi registrado, apague somente o arquivo pendente em Arquivos e execute o atalho novamente. Se a despesa já existe e está errada, exclua-a em Despesas no MD antes de criar outra.

6. Deixe à mão e faça o primeiro teste

  1. Nas opções do atalho, escolha Adicionar à Tela de Início. Você também pode adicioná-lo ao widget Atalhos.
  2. Registre uma despesa real pequena, confira no MD em Despesas e toque em Atualizar para conferir a categoria e o saldo.
  3. Se preferir fazer um lançamento de teste, exclua-o depois pelo MD para devolver o valor ao saldo.

O app precisa de internet para consultar as categorias e enviar. Não execute simultaneamente em dois dispositivos usando o mesmo arquivo pendente do iCloud. Use o atalho neste iPhone.

A configuração tem um limite de 100 novas despesas em 24 horas e validade de 180 dias. Gerar um acesso novo exige substituir apenas token no dicionário Config. Um envio pendente pode ser conferido com o token novo da mesma conta.

Outros/conta é calculado como o saldo total menos Banco do Brasil, Bradesco e PagBank. Por isso, ao escolher Outros/conta o sistema reduz apenas o total. O lançamento não movimenta o caixa da ELEMEN nem o da Colômbia.

Verificação e referências

A integração foi preparada para montagem manual. Não há link iCloud nem arquivo .shortcut assinado incluído. O fluxo nativo não foi executado em um iPhone durante o desenvolvimento; confira as ações no seu aparelho antes do uso diário.