Resumen de IA
¿Desea enviar el número de teléfono de los usuarios que completan su formulario de pago a Authorize.net? Por defecto, WPForms ya le ofrece opciones para enviar el nombre, la dirección de correo electrónico y la dirección del cliente desde la pestaña Authorize.net dentro de la configuración de Pago.
En este tutorial, le guiaremos sobre cómo enviar el número de teléfono con cada transacción utilizando un fragmento de código PHP personalizado.
Creación de su 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 creado el formulario, configuraremos la pestaña Pagos para procesar las transacciones de Authorize.net. Si necesita ayuda para crear un formulario de Authorize.net, consulte esta útil documentación.
Mapeo de los campos
A continuación, mapearemos nuestros campos de Nombre, Correo electrónico y Dirección para enviar esta información con cada envío de formulario.
Para ello, vaya a Pagos » Authorize.net desde el creador de formularios. A continuación, active la opción Habilitar pagos de Authorize.Net.

Una vez que haya habilitado esta opción, proceda a mapear 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 Habilitar lógica condicional, por lo que permanecerá desactivada.

Añadir el fragmento
Ahora, es el momento de añadir el fragmento de código a nuestro sitio. Si necesita ayuda sobre cómo y dónde añadir fragmentos de código personalizados, consulte 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 de código buscará el ID del campo que está configurado para el número de teléfono. En este caso, el ID del campo para nuestro campo Teléfono es 3. Luego almacenará ese número y lo procesará en la siguiente función para setPhoneNumber en la información de facturación de la transacción.

Deberá actualizar el ID del 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 vemos sobre el envío del valor del campo de número de teléfono a Authorize.Net.
P: ¿Por qué este fragmento de código no me funciona?
R: Si no ve el número de teléfono en sus transacciones, asegúrese de haber actualizado el ID dentro de fields[3][ 'value' ].
¡Eso es todo! Ahora ha aprendido a añadir el valor del campo de número de teléfono a los pagos de Authorize.Net.
¿A continuación, desea también enviar un número de factura a Authorize.Net? Asegúrese de consultar nuestro tutorial sobre cómo enviar un número de factura a través de los pagos de Authorize.Net.
Relacionado
Referencias de filtros: