Il plugin premium di Redsys che puoi trovare su WooCommerce.com, incorpora una API propria che puoi utilizzare da qualsiasi altro plugin o tema per WordPress. Questo facilita la vita agli sviluppatori e fornisce loro strumenti per poter esprimere le proprie idee basandosi sul plugin premium e Redsys.
La funzione magica creata è WCRed() e attraverso di essa è possibile ottenere molte informazioni, che aumenteranno nelle nuove versioni.
WCRed()->get_order( $order_id );Si utilizza per ottenere $order
WCRed()->get_ds_error();Restituisce un Array() con tutti gli errori DS e cosa sono.
WCRed()->get_ds_response();Restituisce un Array() con tutti i codici di risposta DS e cosa significano.
WCRed()->get_msg_error();Restituisce un Array() con tutti gli errori msg e cosa significano.
WCRed()->is_ds_error( $error_code = null );Devi passare l’errore, e restituisce true o false a seconda se è un errore DS o meno.
WCRed()->is_ds_response( $error_code = null );Devi passare il messaggio, e restituisce true o false a seconda se è una risposta DS o meno.
WCRed()->is_msg_error( $error_code = null );Devi passare il msg, e restituisce true o false a seconda se è un errore msg o meno.
WCRed()->get_msg_error_by_code( $error_code = null );Devi passare il messaggio, e restituisce cosa significa se è un errore msg. Se non lo è, restituisce false.
WCRed()->get_error_by_code( $error_code = null );Devi passare l’errore DS, e restituisce cosa significa se è un errore DS. Se non lo è, restituisce false.
WCRed()->get_response_by_code( $error_code = null );Devi passare la risposta DS, e restituisce cosa significa se è un messaggio DS. Se non lo è, restituisce false.
WCRed()->is_redsys_error( $error_code = null );Passi l’errore o la risposta, e restituisce true o false a seconda se è un errore di Redsys o meno.
WCRed()->get_error( $error_code = null );Devi passare l’errore DS, l’errore msg o la risposta DS, e restituisce cosa significa. Non è necessario specificare cosa sia. Se non è nulla di quanto sopra, restituisce false.
WCRed()->get_error_type( $error_code = null );Passi l’errore, e restituisce il tipo che è:
- ds_error
- ds_response
- msg_error
WCRed()->get_currencies();Restituisce un Array() con tutte le valute di Redsys e i loro codici.
WCRed()->allowed_currencies();Restituisce un Array() con le valute consentite in Redsys. Essere consentite non significa che siano attive nel terminale.
WCRed()->get_redsys_languages();Restituisce un array con le lingue e il loro codice. Le lingue non sono codici, cioè, per esempio, nell’Array() ci sono Español, English – Inglese, Català, Français – Francese, e ciascuno correlato al suo codice in Redsys.
WCRed()->get_redsys_wp_languages();Restituisce un Array() con tutti i codici delle lingue di WordPress, correlati al codice in Redsys.
WCRed()->get_orders_type();Restituisce un Array() con le diverse modalità di pagamento di Redsys possibili tramite il plugin.
WCRed()->get_lang_code( $lang = 'en' );Devi passare il codice delle lingue, e restituisce il codice di questo in Redsys. Puoi passare sia il codice standardizzato (es, fr, en, ecc), sia il codice di WordPress (es_IT, ca, en_US, en, en_GB).
Se la lingua non esiste in Redsys, restituirà sempre «2», che è il codice per l’inglese.
WCRed()->order_exist( $order_id );Devi passare l’ID dell’ordine, e ti dice se l’ordine esiste restituisce true o false.
WCRed()->post_exist( $post_id );Devi passare l’ID del $POST, e ti dice se esiste. Attenzione, può essere qualsiasi Post, Post Type o Custom Post Type, ti dice solo se esiste.
WCRed()->is_redsys_order( $order_id, $type = null );Puoi passare un parametro, o due. Se passi solo il primo parametro (l’ID dell’ordine), ti dirà se l’ordine è stato effettuato tramite Redsys in una delle modalità di pagamento aggiunte dal plugin restituendo true o false. Se lo passi insieme al secondo parametro, risponderà true o false, a seconda se il pagamento è stato effettuato tramite questo tipo di pagamento specifico.
I valori possibili per $type sono:
- redsys
- masterpass
- redsysbank
- bizumredsys
- iupay
- insite
- redsyspreauthorizations
WCRed()->get_gateway( $order_id );Devi passare l’ID dell’ordine, e ti restituisce l’ID della gateway con cui è stato pagato. Se l’ID dell’ordine non esiste, restituisce false.
WCRed()->get_order_date( $order_id );Devi passare l’ID dell’ordine, e restituisce la data di pagamento in Redsys. Se non c’è data, o non è un pagamento di Redsys, restituisce false.
WCRed()->get_order_hour( $order_id );Devi passare l’ID dell’ordine, e restituisce l’ora di pagamento in Redsys. Se non c’è ora, o non è un pagamento di Redsys, restituisce false.
WCRed()->get_order_auth( $order_id );Devi passare l’ID dell’ordine, e restituisce il codice di autenticazione del pagamento in Redsys. Se non c’è codice, o non è un pagamento di Redsys, restituisce false.
WCRed()->get_status_pending();Restituisce un Array() con gli stati possibili di attesa di pagamento che aggiunge il plugin di Redsys e WooCommerce
apply_filters( 'redsys_status_pending', $status );Questo filtro che si trova all’interno di WCRed()->get_status_pending() serve per poter aggiungere facilmente più stati se necessario e che la funzione WCRed()->get_status_pending() restituisca gli stati di attesa corretti.
WCRed()->is_paid( $order_id );Devi passare l’ID dell’ordine, e ti dice se è pagato o meno.
WCRed()->get_redsys_option( $option, $gateway );Devi passare l’opzione di cui vuoi sapere, e l’ID della gateway (quella che sia). Restituisce il valore dell’opzione.
WCRed()->is_gateway_enabled( $gateway );Devi passare l’ID della gateway, e restituisce true o false a seconda se esiste ed è attivata o meno.
WCRed()->check_if_token_is_valid( $token_id );Controlla se un token con l’ID $token_id è valido (controlla la data di scadenza della carta). Se è valido restituisce «true», se non è valido (data scaduta), lo elimina e restituisce false.
WCRed()->get_redsys_users_token();Restituisce il token di Redsys dell’utente identificato nel sito.
WCRed()->get_users_token_bulk( $user_id );Restituisce il token di un utente per ID. Devi passare il valore $user_id.
WCRed()->prepare_order_number( $order_id );Prepara il numero dell’ordine per essere inviato a Redsys.
WCRed()->clean_order_number( $ordernumber );Converte il numero dell’ordine inviato a Redsys nel numero di WooCommerce.
WCRed()->redsys_amount_format( $total );Converte il totale da pagare nel formato di Redsys.
WCRed()->set_txnid( $token_num, $redsys_txnid );Salva il codice TXNID. Devi passare il token a cui vogliamo associarlo e il TXNID.
WCRed()->get_txnid( $token_num );Recupera il codice TXNID, devi passare il token da cui vogliamo recuperarlo.
