Moloni
Forum Replies Created
-
Forum: Plugins
In reply to: [Moloni] Problemas na sincronizaçãoBom dia,
Para uma melhor análise aos erros reportados, agradecia que contactasse o suporte ao cliente Moloni diretamente, para que possam acompanhar o seu caso.
Forum: Plugins
In reply to: [Moloni] Gerar fatura automaticamenteBom dia,
É possível emitir um documento automaticamente sempre que um pedido é finalizado.
Para tal, no menu de configurações do Moloni, ative a opção de “Criação automática de documentos”. Em seguida, defina os tipos de documentos que pretende gerar automaticamente, como faturas ou recibos, e ajuste preferências adicionais, como envio automático por e-mail e sincronização de produtos. Por fim, guarde as configurações.
Forum: Plugins
In reply to: [Moloni] PHP Fatal ErrorHi!
Could please update to the latest version and check if the error still happens?
Thank you!
Forum: Plugins
In reply to: [Contribuinte Checkout] Wrong NIF acceptedEstimado cliente,
Antes demais, agradecemos as suas palavras. Trabalhamos diariamente para dar aos nossos utilizadores as melhores ferramentas do mercado para que todo o trabalho seja mais fácil.
Relativamente ao erro reportado, pode parecer estranho por ser uma sequência de números de 1 até 9, mas o contribuinte “123456789” é de facto um contribuinte válido e associado a uma entidade portuguesa 😉
Por esse motivo, não podemos bloquear o contribuinte e dá-lo como inválido.
Cumprimentos,
Forum: Plugins
In reply to: [Contribuinte Checkout] Contribuinte Checkout não apareceEstimado cliente,
De momento o plugin ainda não funciona corretamente com blocos do WooCommerce.
No entanto, temos já preparada uma atualização que iremos lançar brevemente para que o plugin suporte os novos blocos do WooCommerce.Se pretender, podemos enviar-lhe uma versão beta para poder testar e usar já na sua loja online.
Forum: Plugins
In reply to: [Moloni] Categorias do site sincronizam no MoloniBom dia.
Os produtos podem ser movidos de categoria na sincronização de artigos (WooCommerce -> Moloni), e não na sincronização de stocks. Esta situação pode ocorrer se tiver a opção “Atualizar artigos” ativa nas configurações do plugin.
Se tiver a opção ativa, poderá, por exemplo, implementar um filtro que altera os valores de atualização de artigos. Neste filtro podemos remover a categoria. Segue o seguinte filtro como exemplo de implementação.
add_filter('moloni_before_moloni_product_update', [$this, 'moloni_before_moloni_product_update']); function moloni_before_moloni_product_update($props) { if (isset($props['category_id'])) { unset($props['category_id']); } return $props; }(referência: https://github.com/moloni-pt/woocommerce/blob/4ea23a5ef9230047af25a38e24aa953f38c928f6/src/Controllers/Product.php#L142)
Forum: Plugins
In reply to: [Moloni] Nova versão – novo comportamento “moloni_after_insert_document”Bom dia,
De facto, na versão 4.7.1 o plugin Moloni deixou de usar o hook “woocommerce_order_status_completed” e começou a usar o hook “woocommerce_order_status_changed”.
Esta alteração foi realizada para permitir um maior número de estados na criação automática de documentos. Internamente o hook “woocommerce_order_status_changed” (usado agora) corre depois do hook “woocommerce_order_status_completed”, o que pode causar o problema indicado. (referência: https://github.com/woocommerce/woocommerce/blob/f61bdd51d5b7d2432d42defa934e05b64e2015db/plugins/woocommerce/includes/class-wc-order.php#L421)
A automatização da exportação da encomenda é configurada no plugin que mencionou ou é uma implementação sua do hook “woocommerce_order_status_completed”?
Forum: Plugins
In reply to: [Moloni] Integração Automática de Campo Personalizado para ADSEBom dia.
O plugin tem disponível vários filtros (hooks) que permitem personalizar a criação de documentos. Se pretendem acrescentar informações nas observações do documento, poderá ser feito através do filtro (hook) “moloni_before_insert_document”.
Este filtro corre mesmos antes de inserir o documento na conta Moloni. Referência do filtro: https://github.com/moloni-pt/woocommerce/blob/4ea23a5ef9230047af25a38e24aa953f38c928f6/src/Controllers/Documents.php#L267
Sugerimos a implementação deste filtro:
function moloni_before_insert_document($document_builder) {// Secção meramente demonstrativa$adse_information = "Nome: XXX";$adse_information .= "<br>"; // Quebra de linha$adse_information = "Número: XXX";$document_builder->notes = $adse_information;}add_filter('moloni_before_insert_document', 'moloni_before_insert_document', 10, 1);Caso necessite de mais ajuda não hesite em entrar em contacto.
Forum: Plugins
In reply to: [Moloni] Atenção, houve um erro ao inserir o documentoBom dia.
Conforme indicado pelo @negapo, o erro que reportado indica que os portes de envio não têm qualquer imposto aplicado.
Relativamente à taxa de 23%, o plugin aplica a taxa por defeito (da conta Moloni) nos produtos da encomenda caso os produtos não tenham qualquer imposto aplicado na encomenda nem uma razão de isenção definida. Podem confirmar se é esse o caso?
Em Portugal é obrigatório por lei que os artigos dos documentos tenham impostos aplicados ou razão de isenção. No caso da sua loja, como não tem definida nenhuma razão de isenção nas definições do plugin para produtos e/ou portes de envio, não é possível criar o documento.
Caso os portes estejam abrangidos por uma razão de isenção, deverá selecioná-la nas definições do plugin. Caso seja suposto cobrar impostos nestas encomendas, sugerimos que verifique as configurações dos impostos na sua loja, pois com as configurações atuais não estão a aplicar qualquer imposto na encomenda.
Forum: Plugins
In reply to: [Moloni] Escolher o estado da encomenda para emissão de FaturaBom dia,
Na atualização disponibilizada hoje (versão 4.7.1), já acrescentámos a opção nas configurações do plugin de selecionar qual é o estado em que pretende que os documentos sejam gerados, o que vai de encontro com o que sugeriu.
No seguimento das alterações que foram efetuadas após a sua sugestão, se assim entender, agradecíamos que revisse também a sua classificação dada ao plugin Moloni.
Estamos sempre abertos a todas as sugestões enviadas pelos nossos utilizadores, e sempre que forem possíveis de implementar, tratamos de as implementar o mais rapidamente possível.
Forum: Plugins
In reply to: [Moloni] Hook depois de criado uma Nota de CréditoBom dia,
Na atualização disponibilizada hoje (versão 4.7.1), já acrescentámos os seguintes hooks para as notas de crédito:
moloni_before_insert_credit_notemoloni_after_insert_credit_notemoloni_after_close_credit_notemoloni_before_start_credit_note
Forum: Plugins
In reply to: [Moloni] Código AT no meta da encomenda?Correto, o código da AT só está disponível em documentos de transporte.
Uma vez que é preciso gerar uma Guia de Transporte + Documento de Faturação, a melhor solução é ativar a opção de gerar automaticamente documentos de transporte no plugin Moloni.
Com essa opção ativa, o próprio plugin trata de gerar uma Guia de Transporte e a respetiva Fatura (ou Fatura/Recibo), associando as duas.
Forum: Plugins
In reply to: [Moloni] A hook moloni_after_insert_document corre após trigger por REST API?Na maioria das vezes, sim, exceto algumas falhas que podem existir normalmente causadas pelos próprios serviços da AT que podem falhar ao fornecer o código de transporte.
Forum: Plugins
In reply to: [Moloni] Código AT no meta da encomenda?Boa tarde,
O código AT de transporte apenas é gerado para documentos do tipo “Guia de transporte”. O código pode ser obtido no campo
transport_codeapós ser feito o pedidodocuments/getOneà API Moloni.Visto que o código AT de transporte apenas é gerado quando um documento é gerado no estado “fechado”, teria de usar a ação
moloni_after_close_document.Dentro da função que registou terá de fazer um pedido para obter os dados do documento como, por exemplo:
add_filter( 'moloni_after_close_document' , 'moloniAfterCloseDocument' ); function moloniAfterCloseDocument( $documentBuilder ) { $documentId = documentBuilder->getDocumentId() ?? 0; if ($documentId <= 0) { return $documentBuilder; } $requestProps = [ 'document_id' => $documentId ]; $document = \Moloni\Curl::simple('documents/getOne', $requestProps); if (empty($document) || !is_array($document)) { return $documentBuilder; } $transportCode = $document['transport_code'] ?? ''; if (!empty($transportCode)) { // custom stuff } return $documentBuilder; }Caso necessite de mais ajuda não hesite em entrar em contacto.
Forum: Plugins
In reply to: [Moloni] A hook moloni_after_insert_document corre após trigger por REST API?Bom dia,
A criação de documentos é feita a dois passos. Primeiro geramos o documento em rascunho e logo a seguir chamamos o endpoint
documents/getOne, seguido da actionmoloni_after_insert_document. Este passo serve para fazermos verificações de valores antes de fecharmos efetivamente o documento.Portanto, esta action vai buscar a informação do documento ainda numa altura em que ele está em rascunho.
Para o que pretende, deverá usar a action
moloni_after_close_documentque corre já depois do documento ser fechado e de ter o código de transporte à AT.Neste ponto, deverá fazer uma nova chamada ao endpoint
documents/getOnepara obter a informação do documento, agora, já fechado e com o código de transporte no parâmetrotransport_code.