Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Link do Email de Renovação de Assinatura do WooCommerce #122

Closed
soareseneves opened this issue Jun 7, 2019 · 1 comment
Closed

Link do Email de Renovação de Assinatura do WooCommerce #122

soareseneves opened this issue Jun 7, 2019 · 1 comment

Comments

@soareseneves
Copy link
Contributor

Gostaria de utilizar o email de renovação de assinatura do WooCommerce no lugar da notificação da Vindi.

Como funciona atualmente

Cartão de Crédito: Email de fatura da Vindi não é disparado e nem o de renovação do WooCommerce com o Link de pagamento. (Isso está correto)

Boleto Bancário: Email de Renovação de Assinatura é disparado com um Link de pagar agora que redireciona para o checkout, portanto está incorreto. Email de fatura da Vindi com o link correto para pagamento.

Como resolver?

O filter woocommerce_get_checkout_payment_url permite que seja alterado os links de pagamento de um pedido manual, portanto vai funcionar tanto na página minha conta quanto nos emails disparados ao cliente.

Fiz uma simples implementação:

add_filter('woocommerce_get_checkout_payment_url', array(
    &$this, 'get_checkout_payment_url'
), 20, 2);

/**
 * Get checkout payment url
 */
public function get_checkout_payment_url( $pay_url, $order ) {
    $bill_id = $order->get_meta('vindi_wc_bill_id');
    if (!empty($bill_id)) {
        $pay_url = $this->settings->api->get_bank_slip_download($bill_id);
    }

    return $pay_url;
}

Isso funciona a partir da página do cliente porém não funciona no email de renovação pois a API da Vindi ainda não setou o campo vindi_wc_bill_id no pedido quando esse email é disparado.

Estou com algumas ideias e gostaria da ajuda de vocês se possível.

Pretendo desativar esse email de renovação do WooCommerce via hook:

add_filter( 'woocommerce_email_enabled_customer_renewal_invoice', 'disable_wc_renewal_invoice_email', 10, 2);

function disable_wc_renewal_invoice_email( $active, $order ) {
    return false;
}

Na classe Vindi_Payment no método process_subscription, após o campo vindi_wc_bill_id for adicionado, verificar se o email customer_renewal_invoice está ativo nas configurações do WooCommerce, se estiver disparar esse email manualmente.

Dessa forma acredito ser possível desativar a primeira notificação de cobrança da Vindi e utilizar somente o email do WooCommerce.

Alguma sugestão?

@soareseneves
Copy link
Contributor Author

Desisti disso, é mais fácil usar o email de vocês, mudar o template e desativar o email padrão do woocommerce.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant