O plugin premium da Redsys que vocês podem encontrar em WooCommerce.com, incorpora uma API própria que vocês podem utilizar a partir de qualquer outro plugin ou tema para WordPress. Isso facilita a vida dos desenvolvedores e lhes dá ferramentas para que possam explorar suas ideias baseando-se no plugin premium e Redsys.

A função mágica criada é WCRed() e através dela é possível conseguir muita informação, que irá aumentando nas novas versões.

WCRed()->get_order( $order_id );

É utilizada para conseguir $order

WCRed()->get_ds_error();

Retorna um Array() com todos os erros DS e o que são.

WCRed()->get_ds_response();

Retorna um Array() com todos os códigos de resposta DS e o que significam.

WCRed()->get_msg_error();

Retorna um Array() com todos os erros msg e o que significam.

WCRed()->is_ds_error( $error_code = null );

Deve-se passar o erro, e retorna true ou false dependendo se é um erro DS ou não.

WCRed()->is_ds_response( $error_code = null );

Deve-se passar a mensagem, e retorna true ou false dependendo se é uma resposta DS ou não.

WCRed()->is_msg_error( $error_code = null );

Deve-se passar o msg, e retorna true ou false dependendo se é um erro msg ou não.

WCRed()->get_msg_error_by_code( $error_code = null );

Deve-se passar a mensagem, e retorna o que significa se é um erro msg. Se não for, retorna false.

WCRed()->get_error_by_code( $error_code = null );

Deve-se passar o erro DS, e retorna o que significa se é um erro DS. Se não for, retorna false.

WCRed()->get_response_by_code( $error_code = null );

Deve-se passar a resposta DS, e retorna o que significa se é uma mensagem DS. Se não for, retorna false.

WCRed()->is_redsys_error( $error_code = null );

Passa-se o erro ou resposta, e retorna true ou false dependendo se é um erro da Redsys ou não.

WCRed()->get_error( $error_code = null );

Passa-se o erro DS, o erro msg ou a resposta DS, e retorna o que significa. Não é necessário especificar o que é. Se não for nada do anterior, retorna false.

WCRed()->get_error_type( $error_code = null );

Passa-se o erro, e retorna o tipo que é:

  • ds_error
  • ds_response
  • msg_error
WCRed()->get_currencies();

Retorna um Array() com todas as moedas da Redsys e seus códigos.

WCRed()->allowed_currencies();

Retorna um Array() com as moedas permitidas na Redsys. Estar permitidas, não significa que estejam ativas no terminal.

WCRed()->get_redsys_languages();

Retorna um array com os idiomas e seu código. Os idiomas não são códigos, ou seja, por exemplo no Array() está Espanhol, English – Inglês, Català, Français – Francês, e cada um relacionado com seu código na Redsys.

WCRed()->get_redsys_wp_languages();

Retorna um Array() com todos os códigos de idiomas do WordPress, relacionados com o código na Redsys.

WCRed()->get_orders_type();

Retorna um Array() com as diferentes formas de pagamento da Redsys possíveis através do plugin.

WCRed()->get_lang_code( $lang = 'en' );

Passa-se o código de idiomas, e retorna o código deste na Redsys. Pode-se passar tanto código padronizado (pt, fr, en, etc), como código do WordPress (pt_PT, ca, en_US, en, en_GB).

Se o idioma não existir na Redsys, sempre retornará «2», que é o código para o inglês.

WCRed()->order_exist( $order_id );

Passa-se o ID do pedido, e diz se o pedido existe, retorna true ou false.

WCRed()->post_exist( $post_id );

Passa-se o ID do $POST, e diz se existe. Atenção, pode ser qualquer Post, Post Type ou Custom Post Type, apenas diz se existe.

WCRed()->is_redsys_order( $order_id, $type = null );

Pode-se passar um parâmetro, ou dois. Se passar apenas o primeiro parâmetro (o ID do pedido), dirá se o pedido foi realizado através da Redsys em qualquer uma das formas de pagamento que o plugin adiciona, retornando true ou false. Se passar junto ao segundo parâmetro, responderá true ou false, dependendo se o pagamento foi realizado através deste tipo de pagamento específico.

Os valores possíveis para $type são:

  • redsys
  • masterpass
  • redsysbank
  • bizumredsys
  • iupay
  • insite
  • redsyspreauthorizations
WCRed()->get_gateway( $order_id );

Passa-se o ID do pedido, e retorna o ID da passarela com a qual foi pago. Se o ID do pedido não existir, retorna false.

WCRed()->get_order_date( $order_id );

Passa-se o ID do pedido, e retorna a data de pagamento na Redsys. Se não houver data, ou não for um pagamento da Redsys, retorna false.

WCRed()->get_order_hour( $order_id );

Passa-se o ID do pedido, e retorna a hora de pagamento na Redsys. Se não houver hora, ou não for um pagamento da Redsys, retorna false.

WCRed()->get_order_auth( $order_id );

Passa-se o ID do pedido, e retorna o código de autenticação do pagamento na Redsys. Se não houver código, ou não for um pagamento da Redsys, retorna false.

WCRed()->get_status_pending();

Retorna um Array() com os estados possíveis de pendente de pagamento que o plugin da Redsys e WooCommerce adiciona.

apply_filters( 'redsys_status_pending', $status );

Este filtro que se encontra dentro de WCRed()->get_status_pending() serve para que se possam adicionar facilmente mais estados se necessário e que a função WCRed()->get_status_pending() retorne os estados pendentes corretos.

WCRed()->is_paid( $order_id );

Passa-se o ID do pedido, e diz se está pago ou não.

WCRed()->get_redsys_option( $option, $gateway );

Deve-se passar a opção que se quer saber, e o ID da passarela (seja qual for). Retorna o valor da opção.

WCRed()->is_gateway_enabled( $gateway );

Passa-se o ID da passarela, e retorna true ou false dependendo se existe e está ativada ou não.

WCRed()->check_if_token_is_valid( $token_id );

Verifica se um token com o ID $token_id é válido (verifica a data de expiração do cartão). Se for válido retorna «true», se não for válido (data expirada), o elimina e retorna false.

WCRed()->get_redsys_users_token();

Retorna o token da Redsys do usuário identificado no site.

WCRed()->get_users_token_bulk( $user_id );

Retorna o token de um usuário por ID. Deve-se passar o valor $user_id.

WCRed()->prepare_order_number( $order_id );

Prepara o número do pedido para ser enviado à Redsys.

WCRed()->clean_order_number( $ordernumber );

Converte o número do pedido enviado à Redsys para o número do WooCommerce.

WCRed()->redsys_amount_format( $total );

Converte o total a pagar no formato da Redsys.

WCRed()->set_txnid( $token_num, $redsys_txnid );

Salva o código TXNID. Deve-se passar o token ao qual queremos relacionar e o TXNID.

WCRed()->get_txnid( $token_num );

Recupera o código TXNID, devem-se passar o token do qual queremos recuperá-lo.

¡No te pierdas las novedades!

¡No hacemos spam! y te puedes dar de baja cuando quieras