woocommerce + ERP Tiny

PerguntasCategoria: Woocommercewoocommerce + ERP Tiny
Boa tarde! Terei que escrever um texto grande para explicar o problema, mas ficarei MUITO grato se alguém puder me ajudar!
Tenho uma com e estou usando o ERP Tiny
O problema é o seguinte: o cliente tem a opção de comprar com CPF e CNPJ. Quando ele compra só 1 vez a informação chega na Tiny sem problemas, mas se ele comprou com CPF primeiro e depois em outra compra tenta com CNPJ, as duas informações são enviadas, mesmo que somente um dos dados sejam solicitados de acordo com o que o cliente escolhe.
Depois de os 2 dados serem enviados ocorre um problema, o Tiny pega a primeira informação que chega até eles e cadastra o pedido com ela, e a primeira informação é sempre o CPF, ou seja, se alguém comprou com CPF antes, se depois tentar comprar com CNPJ, não vai adiantar, vai ser cadastrado na Tiny com o CPF. já tentei falar com eles mas não parece que mudarão algo na tão cedo.
Então tenho que resolver de alguma forma no woocommerce. Alguém sabe uma forma de enviar somente as informações preenchidas pelo cliente na hora da compra? pois a minha loja está enviando todas as informações do cliente, até as anteriores, não somente o que ele preencheu na hora.
Uso o “Brazilian Market on WooCommerce” para os campos de CPF e CNPJ
Desde já, obrigado!
2 Respostas

Uma alternativa paliativa seria inserir uma regra de ocultar o campo CPF e CNPJ para quem já esta logado, sendo assim a pessoa que já possui cadastra não consegue alterar tal campo, forçando assim a pessoa realizar um cadastro distinto pra cada tipo de pessoa.

<?

 
 

 
/**

 
* Remover campo de CPF do pedido na reposta da API quando o pedido foi feito como pessoa jurídica.

 
*/

 
 

 
function arti_remove_cpf_for_j_persontype( $response ){

 
 

 
if( empty( $response->data ) ){

 
return $response;

 
}

 
 

 
if( ‘J’ === $response->data[‘billing’][‘persontype’] ){

 
$response->data[‘billing’][‘cpf’] = ;

 
}

 
 

 
return $response;

 
 

 
}

 
 

 
add_filter(‘woocommerce_rest_prepare_shop_order_object’, ‘arti_remove_cpf_for_j_persontype’, 150, 1 );