Saltar al contenido principal

Cuentas

Una cuenta de pago es una forma de recibir pagos al realizar un pedido. Puedes crear múltiples cuentas para diferentes tipos de pago, como conectar un sistema de pago o agregar pago en efectivo.

Las herramientas para trabajar con cuentas se encuentran en la subsección "Cuentas" en la sección "Pagos". Las cuentas de pago ya creadas están en la lista general. A continuación se presenta un formulario para crear nuevas cuentas de pago.

Tipos de cuentas de pago.

Actualmente, hay varios tipos de cuentas de pago disponibles en el sistema.

Stripe

La plataforma OneEntry admite la integración con el sistema de pago Stripe. Elige este tipo si deseas conectar el sistema de pago Stripe a tu proyecto. Más detalles sobre la conexión de Stripe a la plataforma OneEntry se tratan aquí.

Midtrans

La plataforma OneEntry admite la integración con el sistema de pago indonesio Midtrans. Más detalles sobre la conexión de Midtrans se tratan aquí.

Xendit

La plataforma OneEntry admite la integración con el sistema de pago Xendit. Más detalles sobre la conexión de Xendit se tratan aquí.

Personalizado

Si deseas utilizar otro sistema de pago o aceptar pagos en efectivo, utiliza este tipo de cuentas de pago.

Creación de una cuenta de pago

En el formulario de creación de la cuenta de pago, indica:

  • Nombre - Cadena no única
  • Tipo - Valor del menú desplegable. Solo se puede crear una cuenta de cada tipo Stripe, Midtrans y Xendit por proyecto; puede haber tantas cuentas de tipo Personalizado como desees.
  • Token - Cadena única.

Después de completar el formulario, haz clic en el botón "Agregar". Si todos los campos están correctamente completados, la cuenta de pago se creará y se añadirá a la lista general.

Modificación de una cuenta de pago

Selecciona de la lista la cuenta de pago que deseas modificar y haz clic en el ícono de edición Edit.

En el modo de edición, puedes cambiar:

  • Nombre
  • Tipo
  • Token

Las cuentas de Stripe, Midtrans y Xendit en modo de edición también tienen configuraciones de conexión al sistema de pago. Estas se describen en las páginas Stripe, Midtrans y Xendit.

Los cambios se guardarán automáticamente.


Parámetros personalizados para la API de pagos

Para una integración flexible con varios sistemas de pago (por ejemplo, PayPal, Stripe y otros), se pueden agregar parámetros personalizados, específicos para una API concreta, a la cuenta de pago.

Estos parámetros se envían en forma de pares "clave-valor" al inicializar la sesión de pago. Por ejemplo, en la API de pedidos de PayPal, a menudo se requieren campos como purchase_units, intent, application_context.return_url o payer.email_address, mientras que Stripe utiliza otros parámetros, como mode, line_items, etc.

Cómo funciona

Además de los campos básicos (Nombre, Tipo, Token), verás una tabla "Parámetros personalizados para la API de pagos". En la tabla se muestran conjuntos de atributos de la sección Configuración → Atributos. La tabla permite establecer una correspondencia entre:

  • Token (Nombre del parámetro en la API) (por ejemplo, purchase_units para PayPal o line_items para Stripe)
  • Valor, que se insertará al crear el pago

Para establecer el valor, es necesario abrir la edición del conjunto, haciendo clic en el botón Edit. Luego, selecciona el atributo necesario del conjunto preconfigurado e introduce el valor requerido, de acuerdo con el tipo de atributo.

⚠️ Importante: los conjuntos de atributos y su contenido se configuran por separado y pueden incluir campos de diferentes tipos: cadena, número, valor booleano, JSON, etc.

Ejemplo de uso con PayPal Supongamos que deseas enviar los detalles del pedido a PayPal a través del campo purchase_units. Creas un conjunto de atributos llamado "Unidad de Compra de PayPal", añades el atributo items de tipo JSON, que contiene una estructura como la siguiente:

    {
"invoice_id": "90210",
"amount": {
"currency_code": "USD",
"value": "230.00",
"breakdown": {
"item_total": {
"currency_code": "USD",
"value": "220.00"
},
"shipping": {
"currency_code": "USD",
"value": "10.00"
}
}
},
"items": [
{
"name": "Camiseta",
"description": "Camiseta Super Fresca",
"unit_amount": {
"currency_code": "USD",
"value": "20.00"
},
"quantity": "1",
"category": "BIENES FÍSICOS",
"sku": "sku01",
"image_url": "https://example.com/static/images/items/1/tshirt_green.jpg",
"url": "https://example.com/url-to-the-item-being-purchased-1",
"upc": {
"type": "UPC-A",
"code": "123456789012"
}
},
{
"name": "Zapatos",
"description": "Deportivos, Talla 10.5",
"sku": "sku02",
"unit_amount": {
"currency_code": "USD",
"value": "100.00"
},
"quantity": "2",
"category": "BIENES FÍSICOS",
"image_url": "https://example.com/static/images/items/1/shoes_running.jpg",
"url": "https://example.com/url-to-the-item-being-purchased-2",
"upc": {
"type": "UPC-A",
"code": "987654321012"
}
}
]
}

Luego, en la configuración de la cuenta de pago, vinculas:

Clave: purchase_units Valor: atributo items del conjunto "Unidad de Compra de PayPal" Al crear el pedido, el sistema insertará automáticamente el valor actual de este atributo en el cuerpo de la solicitud a la API de PayPal.

Otros parámetros de PayPal que se utilizan con frecuencia:

intent — por ejemplo, "CAPTURE" o "AUTHORIZE" application_context.return_url — URL para el retorno después de un pago exitoso application_context.cancel_url — URL para cancelar el pago

Este mecanismo permite adaptar las integraciones de pago a los requisitos de las API externas.

Ocultación de una cuenta de pago

Si ya no deseas utilizar una cuenta de pago y no puedes eliminarla porque ya se está utilizando en el proyecto, puedes ocultarla.

Para ello, en la cuenta seleccionada, haz clic en el ícono de "ojo" Edit.

Las cuentas de pago ocultas no serán ofrecidas por el sistema para su selección al configurar el almacenamiento de pedidos.

Eliminación de una cuenta de pago

Selecciona de la lista la cuenta de pago que deseas eliminar y haz clic en el ícono de eliminación Edit.

Confirma la acción en el cuadro de diálogo. Después, la cuenta de pago será eliminada y desaparecerá de la lista general.