Comercio electrónico de Square

Acepta pagos en línea con las API de Square en tres pasos

Paso 1

Crea una nueva aplicación de la API de Square.

Las llamadas a la API de Square se autentican mediante identificación de la aplicación y tokens de autorización (ya sea un token de acceso personal o un token OAuth).

Para crear una nueva aplicación, inicia sesión en el Panel de Datos de la aplicación con tu cuenta de Square.

A continuación, haz clic en + Nueva aplicación y asigna un nombre a la aplicación.

Toma nota de la Identificación de la aplicación, la Identificación de ubicación y el Token de acceso personal asignados a la aplicación.


Paso 2

Agrega el SDK de pagos web Square a tu flujo de proceso de pago.

Square proporciona un ejemplo del formulario de pago en el sitio de documentación de Square para desarrolladores que usa el SDK de pagos web para solicitar un token de tarjeta válido de los servidores de Square y lo incluye en los datos del formulario antes de enviarlo a la página de procesamiento de pagos. Para utilizar un formulario de muestra, configura appId y locId en los Id. que generaste en los pasos anteriores:

const appId = '{{ SET THE APPLICATION ID HERE}}'; const locId = '{{ SET THE LOCATION ID HERE}}'; 

El formulario de muestra tiene un formato mínimo y solo incluye los campos necesarios para crear un número de un solo uso de tarjeta válido (número de la tarjeta, CVV, fecha de vencimiento y código postal). Deberás ampliar el formulario de muestra para recopilar información de pago útil (p. ej. el monto del cargo y la moneda que se utilizó) y aplicar estilos que hagan que el formulario coincida con tu sitio. Por ejemplo:


Paso 3

Usa la API de Square para cambiar la tarjeta.

El último paso es agregar líneas de código a la página de procesamiento de pagos que inicializan un cliente de la API de Square:

use Square\Models\Currency; use Square\SquareClient; use Square\Environment; // Replace 'XXXXXXXXXX' with an OAuth or your Personal Access Token const SQUARE_ACCESS_TOKEN = 'XXXXXXXXXX'; $client = new SquareClient([ 'accessToken' => SQUARE_ACCESS_TOKEN, 'environment' => Environment::SANDBOX, ]); 

Empaqueta la información de pago como CreatePaymentRequest (incluido el token de la tarjeta que se obtuvo con el formulario de pago en el paso anterior):

// Package the charge amount and currency as a Money object $sourceId = $_POST[token]; $idempotencyKey = uniqid(); $amountMoney = new Money; $amountMoney->setAmount($_POST['amount']); $amountMoney->setCurrency(Currency::USD); $paymentRequest = new CreatePaymentRequest( $sourceId, $idempotencyKey, $amountMoney ); 

E invoca a la terminal createPayment de la API de Pagos en /v2/payments para procesar la tarjeta:

// Create a PaymentsApi client to charge the card using our form info $paymentsApi = $client->getPaymentsApi(); // Call the PaymentsApi to create a payment using that card try { $result = $paymentsApi->createPayment($paymentRequest); } catch (Exception $e) { // Handle the exception } 

La terminal createPayment realiza el cobro a la tarjeta asociada con el token y proporciona una respuesta que indica si la tarjeta se captó correctamente o si se rechazó. Luego, los pagos exitosos pueden revisarse en la sección Ventas del Panel de Datos de tu cuenta de Square.

Crea tu cuenta de desarrollador ahora.