¿Desea enviar el número de teléfono de los usuarios que llenan su formulario de pago a Authorize.net? Por defecto, WPForms ya le da opciones para enviar a través del nombre del cliente, dirección de correo electrónico y dirección de la ficha Authroize.net dentro de la configuración de pago.
En este tutorial, le explicaremos cómo enviar el número de teléfono con cada transacción utilizando un fragmento de PHP personalizado.
Creación del formulario de pago
Nota: Necesitará un nivel de licencia Elite para acceder al método de pago Authorize.net.
Para empezar, crearemos un nuevo formulario de pago y añadiremos nuestros campos a este formulario. En el formulario, también incluiremos el campo Teléfono que utilizaremos para capturar el número de teléfono del usuario.
Una vez que hayamos creado el formulario, configuraremos la pestaña Pagos para procesar transacciones de Authorize.net. Si necesita ayuda para crear un formulario Authorize.net, consulte esta útil documentación.
Asignación de campos
A continuación, asignaremos nuestros campos Nombre, Correo electrónico y Dirección para enviar esta información con cada envío del formulario.
Para ello, vaya a Pagos " Authorize.net desde el constructor de formularios. A continuación, active la opción Activar pagos de Authorize. Net.

Una vez que haya habilitado esta opción, siga adelante y mapee los campos apropiados y proporcione la descripción del pago y cualquier lógica condicional que desee.
Para este tutorial, no utilizaremos la función Activar lógica condicional, por lo que permanecerá desactivada.

Añadir el fragmento
Ahora, es el momento de añadir el snippet a nuestro sitio. Si necesitas ayuda sobre cómo y dónde añadir fragmentos personalizados, consulta este tutorial.
/*
* Include a phone number with Authorize.Net args.
*
* @link https://wpforms.com/developers/how-to-send-the-phone-number-to-authorize-net/
*/
function wpf_dev_authorize_net_process_payment_single_add_phone_to_args( $args, $process ) {
// Replace 26 in $process->fields[3] to an id of your phone field.
if ( isset( $process->fields[3][ 'value' ] ) ) {
$args[ 'phone' ] = $process->fields[3][ 'value' ];
}
return $args;
}
add_filter( 'wpforms_authorize_net_process_payment_single_args', 'wpf_dev_authorize_net_process_payment_single_add_phone_to_args', 10, 2 );
/**
* Set the phone number on customer billing information.
*
* @link https://wpforms.com/developers/how-to-send-the-phone-number-to-authorize-net/
*/
function wpf_dev_authorize_net_process_transaction_add_phone_to_transaction( $transaction, $args ) {
$bill_to = $transaction->getBillTo();
if ( is_null( $bill_to ) ) {
$bill_to = new netauthorizeapicontractv1CustomerAddressType();
}
$phone = $args[ 'phone' ];
$bill_to->setPhoneNumber( $phone );
$transaction->setBillTo( $bill_to );
return $transaction;
}
add_filter( 'wpforms_authorize_net_process_transaction', 'wpf_dev_authorize_net_process_transaction_add_phone_to_transaction', 10, 2 );
Este fragmento buscará el ID de campo establecido para el número de teléfono. En este caso, el ID de campo para nuestro campo Phone es 3. A continuación, almacenará ese número y lo procesará en la siguiente función para establecer PhoneNumber en la información de facturación de la transacción.

Tendrá que actualizar el ID de campo para que coincida con su propio ID para el campo Teléfono. Si necesita ayuda para encontrar su número de ID, consulte este tutorial.
Ahora, cuando se procesen las transacciones, verá fácilmente que el número de teléfono ahora forma parte de la información de facturación del cliente.

Preguntas frecuentes
Estas son las respuestas a algunas de las preguntas más frecuentes que recibimos sobre el envío del valor del campo del número de teléfono a Authorize.Net.
P: ¿Por qué no me funciona este fragmento?
A: Si no ves el número de teléfono en tus transacciones, asegúrate de haber actualizado el ID dentro de fields[
3][ 'value' ]
.
Ya está. Ahora ha aprendido cómo agregar el valor del campo del número de teléfono a los pagos de Authorize.Net.
A continuación, ¿también desea enviar un número de factura a Authorize.Net? Asegúrese de revisar nuestro tutorial sobre cómo enviar un número de factura a través de pagos Authorize.Net.
Relacionado
Filtrar referencias: