O plugin premium de Redsys que podedes atopar en WooCommerce.com, incorpora unha API propia que podedes utilizar dende calquera outro plugin ou tema para WordPress. Isto facilita a vida aos desenvolvedores e lles dá ferramentas para que poidan espremer as súas ideas baseándose no plugin premium e Redsys.
A función máxica creada, é WCRed() e a través dela pódese conseguir moita información, e que irá aumentando nas novas versións.
WCRed()->get_order( $order_id );Utilízase para conseguir $order
WCRed()->get_ds_error();Devolve un Array() con todos os erros DS e o que son.
WCRed()->get_ds_response();Devolve un Array() con todos os códigos de resposta DS e o que significan.
WCRed()->get_msg_error();Devolve un Array() con todos os erros msg e o que significan.
WCRed()->is_ds_error( $error_code = null );Débes pasar o erro, e devolve true ou false dependendo se é un erro DS ou non o é.
WCRed()->is_ds_response( $error_code = null );Débes pasar o mensaxe, e devolve true ou false dependendo se é unha resposta DS ou non o é.
WCRed()->is_msg_error( $error_code = null );Débes pasar o msg, e devolve true ou false dependendo se é un erro msg ou non o é.
WCRed()->get_msg_error_by_code( $error_code = null );Débes pasar o mensaxe, e devolve o que significa se é un erro msg. Se non o é, devolve false.
WCRed()->get_error_by_code( $error_code = null );Débes pasar o erro DS, e devolve o que significa se é un erro DS. Se non o é, devolve false.
WCRed()->get_response_by_code( $error_code = null );Débes pasar a resposta DS, e devolve o que significa se é un mensaxe DS. Se non o é, devolve false.
WCRed()->is_redsys_error( $error_code = null );Pasas o erro ou resposta, e devolve true ou false dependendo se é un erro de Redsys ou non o é.
WCRed()->get_error( $error_code = null );Débes pasar o erro DS, o erro msg ou a resposta DS, e devolve o que significa. Non fai falta especificar que é. Se non é nada do anterior, devolve false.
WCRed()->get_error_type( $error_code = null );Débes pasar o erro, e devolve o tipo que é:
- ds_error
- ds_response
- msg_error
WCRed()->get_currencies();Devolve un Array() con todas as moedas de Redsys e os seus códigos.
WCRed()->allowed_currencies();Devolve un Array() coas moedas permitidas en Redsys. Que estean permitidas, non quere dicir que estean activas no terminal.
WCRed()->get_redsys_languages();Devolve unha array cos idiomas e o seu código. Os idiomas non son código, é dicir, por exemplo na Array() está Español, English – Inglés, Català, Français – Francés, e cada un relacionado co seu código en Redsys.
WCRed()->get_redsys_wp_languages();Devolve un Array() con todos os códigos de idiomas de WordPress, relacionados co código en Redsys.
WCRed()->get_orders_type();Devolve un Array() coas diferentes formas de pago de Redsys posibles mediante o plugin.
WCRed()->get_lang_code( $lang = 'en' );Débes pasar o código de idiomas, e devolve o código deste en Redsys. Débese pasar tanto código estandarizado (es, fr, en, etc), como código de WordPress (es_ES, ca, en_US, en, en_GB).
Se o idioma non existe en Redsys, devolverá sempre «2», que é o código para o inglés.
WCRed()->order_exist( $order_id );Débes pasar o ID do pedido, e díxoche se existe o pedido devolvendo true ou false.
WCRed()->post_exist( $post_id );Débes pasar o ID do $POST, e díxoche se existe. Ojo, pode ser calquera Post, Post Type ou Custom Post Type, só che di se existe.
WCRed()->is_redsys_order( $order_id, $type = null );Débes pasar un parámetro, ou dous. Se se pasa só o primeiro parámetro (o ID do pedido), dirá se o pedido se realizou mediante Redsys en calquera das formas de pago que engade o plugin devolvendo true ou false. Se se pasa xunto ao segundo parámetro, responderá true ou false, dependendo se se realizou o pago mediante este tipo de pago específico.
Os valores posibles para $type son:
- redsys
- masterpass
- redsysbank
- bizumredsys
- iupay
- insite
- redsyspreauthorizations
WCRed()->get_gateway( $order_id );Débes pasar o ID do pedido, e devolve o ID da pasarela coa que se pagou. Se o ID de pedido non existe, devolve false.
WCRed()->get_order_date( $order_id );Débes pasar o ID do pedido, e devolve a data de pago en Redsys. Se non hai data, ou non é un pago de Redsys, devolve false.
WCRed()->get_order_hour( $order_id );Débes pasar o ID do pedido, e devolve a hora de pago en Redsys. Se non hai hora, ou non é un pago de Redsys, devolve false.
WCRed()->get_order_auth( $order_id );Débes pasar o ID do pedido, e devolve o código de autentificación do pago en Redsys. Se non hai código, ou non é un pago de Redsys, devolve false.
WCRed()->get_status_pending();Devolve un Array() cos estados posibles de pendente de pago que engade o plugin de Redsys e WooCommerce
apply_filters( 'redsys_status_pending', $status );Este filtro que se atopa dentro de WCRed()->get_status_pending() serve para que se poidan engadir facilmente máis estados se fose necesario e que a función WCRed()->get_status_pending() devolva os estados pendentes correctos.
WCRed()->is_paid( $order_id );Débes pasar o ID do pedido, e díxoche se está pagado ou non o está.
WCRed()->get_redsys_option( $option, $gateway );Débes pasar a opción que queres saber, e o ID da pasarela (se a que sexa). Devolve o valor da opción.
WCRed()->is_gateway_enabled( $gateway );Débes pasar o ID da pasarela, e devolve true ou false dependendo se existe e está activada ou non.
WCRed()->check_if_token_is_valid( $token_id );Comproba se un token co ID $token_id é válido (comproba a data de caducidade da tarxeta). Se é válido devolve «true», se non é válido (data caducada), elimínase e devolve false.
WCRed()->get_redsys_users_token();Devolve o token de Redsys do usuario identificado no sitio.
WCRed()->get_users_token_bulk( $user_id );Devolve o token dun usuario por ID. Débes pasar o valor $user_id.
WCRed()->prepare_order_number( $order_id );Prepara o número de pedido para ser enviado a Redsys.
WCRed()->clean_order_number( $ordernumber );Convértese o número de pedido enviado a Redsys ao número de WooCommerce.
WCRed()->redsys_amount_format( $total );Convértese o total a pagar en formato de Redsys.
WCRed()->set_txnid( $token_num, $redsys_txnid );Garda o código TXNID. Débes pasar o token co que o queremos relacionar e o TXNID.
WCRed()->get_txnid( $token_num );Recupera o código TXNID, débes pasar o token do cal queremos recuperalo.
