Mostrar Ocultar submodelos

Autenticación

Las llaves de autenticación son usadas para autenticar todas tus llamadas al servidor de Conekta por medio de autenticación básica HTTP. Las llaves o keys pueden ser recuperadas y configuradas dentro de tu admin. Cada key es configurada para ser utilizada ya sea en modo sandbox o producción y para cada uno de estos modos obtendrás una key privada para llamadas entre servidores y una key pública para utilizar con ConektaJS o en su defecto algún SDK como Android y iOS. Asegúrate de nunca compartir tus keys privadas ya que estas tienen acceso y todos los privilegios de tu cuenta.

Hemos utilizado una llave de API de prueba en todos los ejemplos de la documentación para que puedas probar todos los ejemplos de inmediato y sin tener que crear una cuenta.

Versiones

Todos los cambios que hacemos al API y que son incompatibles con versiones anteriores son liberados en una versión nueva. La versión actual es 2.0.0. En caso de hacer un cambio entre versiones, recomendamos probar la aplicación con la nueva versión antes de hacer el cambio completo en tu aplicación.

Cuando se soluciona algún error en el sistema, la versión sigue siendo la misma, así que no tendrás qué hacer un cambio de versión salvo sean agregadas funcionalidades nuevas.

Idioma

Configurando el locale en la librería puedes especificar el idioma (inglés o español) en el cual quieres recibir los mensajes enviados por Conekta al comprador en el parámetro de message_to_purchaser.

Órdenes

Una orden representa una compra. Incluye todos los detalles relacionados a ella, como método de pago, envío, productos comprados, cargos, descuentos e impuestos.

Objeto Orden

Atributos
id
string
Identificador único de la orden asignado al azar.
object
string
Clase del objeto. En este caso, "order".
created_at
timestamp
Fecha de creación de la orden.
updated_at
timestamp
Fecha de la última actualización de la orden.
currency
string
Divisa con la cual se realizará el cobro. Utiliza el código de 3 letras del Estándar Internacional ISO 4217.
line_items
list
Lista de los productos que se venden en la orden. Debe tener al menos un producto.
shipping_lines
list (opcional)
Lista de los costos de envío. Si existe al menos un producto enviable, debe existir al menos un costo de envío.
tax_lines
list(opcional)
Lista de los impuestos que se pagan.
discount_lines
list(opcional)
Lista de los descuentos que se aplican a la orden.
livemode
boolean
true: Modo de producción. false: Modo de prueba
metadata
hash
Hash en donde el usuario puede enviar información adicional para la orden
shipping_contact
hash
Detalles del envío, obligatorio si existe algún producto que es enviable. Si no es enviado el shipping_contact que se usa por defecto del cliente será usado en caso de ser necesario.
amount
integer
Cantidad que se calcula por el sistema a partir de line_items, shipipng_lines, tax_lines y discount_lines.
amount_refunded
integer
Cantidad a la cual se hizo un refund a través de la llamada a orders/:order_id/refund.
payment_status
string
El status del pago de la orden. Este campo es controlado por el sistema y puede ser payment_pending, declined, expired, paid, refunded, partially_refunded, charged_back, pre_authorized y voided.
customer_info
hash
Hash que contiene la información del cliente.
customer_id
string
ID del cliente. Es obligatorio cuando no se envían los otros campos de customer_info.
name
string
Nombre del cliente. (opcional si se envía el id)
phone
string
Teléfono del cliente. (opcional si se envía el id)
email
string
Email del cliente. (opcional si se envía el id)
corporate
boolean
Booleano que indica si el usuario es corporativo o no, el default es false. (opcional)

charges
list
Lista de los cargos que se generaron para cubrir el monto de la orden.

Crear Orden

Crea una Orden nueva.

Argumentos
currency
string
Divisa con la cual se realizará el cobro. Utiliza el código de 3 letras del Estándar Internacional ISO 4217.
line_items
array
Lista de los productos que se venden en la orden. Debe tener al menos un producto.
shipping_lines
array (opcional)
Lista de los costos de envío. Si existe al menos un producto enviable, debe existir al menos un costo de envío.
tax_lines
array (opcional)
Lista de los impuestos que se pagan.
discount_lines
array (opcional)
Lista de los descuentos que se aplican a la orden.
preauthorize
boolean (opcional)
Indica si los cargos de la orden deben ser preautorizados.
customer_info
hash
Hash que contiene la información del cliente.
customer_id
string
ID del cliente. Es obligatorio cuando no se envían los otros campos de customer_info.
name
string
Nombre del cliente. (opcional si se envía el id)
phone
string
Teléfono del cliente. (opcional si se envía el id)
email
string
Email del cliente. (opcional si se envía el id)
corporate
boolean
Booleano que indica si el usuario es corporativo o no, el default es false. (opcional)

shipping_contact
hash
Detalles del envío, obligatorio si existe algún producto que es enviable. Si no es enviado el shipping_contact que se usa por defecto del cliente será usado en caso de ser necesario.
charges
array
Lista de los cargos que se generaron para cubrir el monto de la orden.

Actualizar Orden

Actualiza una Orden existente.

Argumentos
id
string
El id de la orden.
line_items
array
Lista de los productos que se venden en la orden. Debe tener al menos un producto.
shipping_lines
array (opcional)
Lista de los costos de envío. Si existe al menos un producto enviable, debe existir al menos un costo de envío.
tax_lines
array (opcional)
Lista de los impuestos que se pagan.
discount_lines
array (opcional)
Lista de los descuentos que se aplican a la orden.
preauthorize
boolean (opcional)
Indica si los cargos de la orden deben ser preautorizados.
customer_info
hash
Hash que contiene la información del cliente.
customer_id
string
ID del cliente. Es obligatorio cuando no se envían los otros campos de customer_info.
name
string
Nombre del cliente. (opcional si se envía el id)
phone
string
Teléfono del cliente. (opcional si se envía el id)
email
string
Email del cliente. (opcional si se envía el id)
corporate
boolean
Booleano que indica si el usuario es corporativo o no, el default es false. (opcional)

shipping_contact
hash
Detalles del envío, obligatorio si existe algún producto que es enviable. Si no es enviado el shipping_contact que se usa por defecto del cliente será usado en caso de ser necesario.
charges
array
Lista de los cargos que se generaron para cubrir el monto de la orden.

Capturar Orden

Captura una Orden existente.

Argumentos
id
string
El id de la orden.

Devolver Orden

Una orden devuelta describe los articulos, monto y razón por la que una orden está siendo devuelta.

Argumentos
id
string
El id de la orden.
reason
string
Razón de la devolución.
amount
integer (opcional)
Monto a devolver en caso de devolución parcial.

Razones

  • requested_by_client
  • cannot_be_fulfilled
  • duplicated_transaction
  • suspected_fraud
  • other

Clientes

Clientes te permite crear suscripciones y guardar métodos de pago para usuarios que requieren pagos automáticos.

Objeto Cliente

Atributos
id
string
Identificador único asignado al azar.
name
string
Nombre del cliente.
phone
string
Teléfono del cliente (formato internacional).
email
string
Correo electrónico del cliente.
plan_id
string
id secundario de algún plan.
payment_sources
array
Arreglo de las tarjetas que ya se tokenizaron o están por ser guardadas. Ve a la sección de métodos de pago para más detalles
corporate
boolean
Indica si un usuario es corporativo o no.
shipping_contacts
array
Información de contacto el envío a cliente. Ve a la sección de Contactos de envío para más detalles.
subscriptions
object
Subscripciones a las que puede estar asociado el cliente. Ve a la sección de Suscripciones para más detalles.

Crear Cliente

Crea un Cliente nuevo.

Argumentos
name
string
Nombre del cliente.
phone
string
Teléfono del cliente (formato internacional) (opcional).
email
string
Correo electrónico del cliente.
plan_id
string
id secundario de algún plan (opcional).
payment_sources
array
Arreglo de las tarjetas que ya se tokenizaron o están por ser guardadas. Ve a la sección de métodos de pago para más detalles (opcional).
corporate
Indica si un usuario es corporativo o no (optional).
shipping_contacts
array
Información de contacto el envío a cliente. Ve a la sección de Contactos de envío para más detalles (opcional).
subscriptions
array
Subscripciones a las que puede estar asociado el cliente. Ve a la sección de Suscripciones para más detalles (opcional).

Actualizar Cliente

Actualiza un cliente existente.

Argumentos
id
string
Id del cliente.
name
string
Nombre del cliente.
phone
string
Teléfono del cliente (formato internacional) (opcional).
email
string
Correo electrónico del cliente.
plan_id
string
id secundario de algún plan (opcional).
payment_sources
array
Arreglo de las tarjetas que ya se tokenizaron o están por ser guardadas. Ve a la sección de métodos de pago para más detalles (opcional).
corporate
Indica si un usuario es corporativo o no (optional).
shipping_contacts
array
Información de contacto el envío a cliente. Ve a la sección de Contactos de envío para más detalles (opcional).
subscriptions
array
Subscripciones a las que puede estar asociado el cliente. Ve a la sección de Suscripciones para más detalles (opcional).

Eliminar Cliente

Elimina un cliente existente.

Argumentos
id
string
Id del cliente.

Suscripciones

Suscripciones son una manera de realizar cargos a un cliente con una cantidad fija de manera recurrente. Puedes cambiar el plan, pausar, cancelar y reanudar una suscripción a tu gusto.

Puedes ver como se realiza una suscripción en nuestro tutorial.

Objeto Suscripción

Atributos
id
string
Identificador único asignado al azar.
object
string
Clase del objeto. En este caso "subscription".
created_at
string
Fecha de creación de la suscripción.
canceled_at
string
Fecha de cancelación de la suscripción.
paused_at
string
Fecha de pausa de la suscripción.
billing_cycle_start
timestamp
Fecha de inicio del periodo de cobro.
billing_cycle_end
timestamp
Fecha de término del periodo de cobro.
trial_start
timestamp
Fecha de inicio del periodo de prueba.
trial_end
timestamp
Feha de término del periodo de prueba.
plan_id
string
Id del plan asignado a la suscripción.
status
string
Status de la suscripción. Los valores pueden ser: in_trial, active, past_due, paused, `canceled.

Crear Suscripción

Crea una suscripción usando información tokenizada.

Argumentos
customer_id
string
El id del cliente al cual se generará la suscripción.
plan
string
El id del plan que utilizarás para crear la suscripción.
card
string (opcional)
El id de la tarjeta que utilizarás para procesar la suscripción en caso de que sea diferente a la tarjeta primaria. La tarjeta ya debe ser parte de este cliente.

Actualizar Suscripción

Actualiza la suscripción con una tarjeta o plan diferente.

Argumentos
customer_id
string
El id del cliente al cual se generará la suscripción.
plan
string
El id del plan que utilizarás para crear la suscripción.
card
string (opcional)
El id de la tarjeta que utilizarás para procesar la suscripción en caso de que sea diferente a la tarjeta primaria. La tarjeta ya debe ser parte de este cliente.

Pausar Suscripción

Pausa una suscripción

Argumentos
id
string
Id de la suscripción.

Reanudar Suscripción

Reanuda una suscripción

Argumentos
id
string
Id de la suscripción.

Cancelar Suscripción

Cancela una suscripción

Argumentos
id
string
Id de la suscripción.

Paginación

Una Lista representa una colección de objetos en un formato que nos permite paginar de una manera eficiente.

Objeto lista

Atributos
next_page_url
URL de la siguiente página.
previous_page_url
Url de la página anterior.
has_more
True, si hay más paginas.
data
Arreglo con los resultados de página.

Siguiente

Obtén la siguiente página de objetos listados.

Argumentos
limit
Tamaño de la página.
next
Último id en la página.

Anterior

Obtén la página anterior de objetos listados.

Argumentos
limit
Tamaño de la página.
previous
Último id en la página.

Métodos de Pago

El objeto Payment Source describe el método de pago. Este pago puede ser online (pagos con tarjeta) o offline (OxxoPay, SPEI, o Banorte). Recuerda que tendras que agregar un webhook listener para los pagos offline.

Objeto Método de Pago

Atributos
id
string
Identificador único asignado al azar.
object
string
Clase del objeto. En este caso "payment_source".
type
string
Tipo del método de pago. Por el momento el único tipo permitido es "card".
created_at
timestamp
Fecha de creación del método de pago.
last4
string
Últimos 4 números de la tarjeta.
name
string
Nombre del tarjeta habiente.
exp_month
string
Mes de expiración de la tarjeta.
exp_year
string
Año de expiración de la tarjeta.
brand
string
Marca de la tarjeta.
parent_id
string
Identificador único del cliente al que pertenece el método de pago.

Crear Método de Pago

Crea un nuevo Método de Pago

Argumentos
type
string
Tipo del método de pago. Por el momento el único tipo permitido es "card".
token_id
string
Id de token que será utilizado para crear un método de pago de tipo "card". Ve el tutorial de suscripciones para más información sobre cómo tokenizar tarjetas.

Actualizar Método de Pago

Actualiza un método de pago existente.

Argumentos
id
string
Id del método de pago.
name
string
Nombre del tarjeta habiente.
exp_month
string
Mes de expiración de la tarjeta.
exp_year
string
Año de expiración de la tarjeta.
address
hash
Dirección del tarjethabiente.

Eliminar Método de Pago

Elimina un método de pago existente.

Argumentos
id
string
Id del método de pago.

Cargos

Objeto Cargo

Attributes
id
string
Identificador único del cargo asignado al azar.
created_at
timestamp
Fecha de creación del cargo.
currency
string
Divisa con la cual se realizará el cobro. Utiliza el código de 3 letras del Estándar Internacional ISO 4217.
amount
integer
Cantidad a pagar.
livemode
boolean
true: Modo de producción. false: Modo de prueba.
payment_method
hash
Método de pago del cargo.
object
string
Clase del objeto. En este caso, "charge".
status
string
Status del cargo.
fee
integer
Cantidad de la comisión en centavos.
order_id
string
Id de la orden a la que pertenece el cargo

Crear Cargo

Crea un cargo nuevo para una orden existente.

Arguments
amount
integer
Cantidad a pagar en centavos.
payment_method
hash
Método de pago utilizado en el cargo. Ve a la sección de métodos de pago para más detalles
expires_at
integer
Fecha de expiración del método.
token_id
string
Token de la tarjeta. Obligatorio para el tipo card.

Productos

Este objeto representa los productos de la Orden.

Este objeto pertenece al objeto Orden.

Objeto Producto

Atributos
id
string
Identificador único para el producto.
name
string
Nombre del producto.
description
string
Pequeña descripción del producto (< 250). (opcional)
unit_price
integer
El precio por unidad expresado en centavos.
quantity
integer
Cantidad vendida del producto.
sku
string
Indica el Storage Keeping Unit designado por la empresa (opcional)
tags
array
Arreglo que contiene las categorías a las que pertenece el producto. Debe tener al menos un elemento. (opcional)
brand
string
Marca del producto. (opcional)
metadata
hash
Hash en donde el usuario puede enviar información adicional por cada producto. (opcional)

Crear Producto

Crea un producto nuevo para una orden existente.

Argumentos
name
string
Nombre del producto.
description
string
Pequeña descripción del producto (< 250). (opcional)
unit_price
integer
El precio por unidad expresado en centavos.
quantity
integer
Cantidad vendida del producto.
sku
string
Indica el Storage Keeping Unit designado por la empresa (opcional)
tags
array
Arreglo que contiene las categorías a las que pertenece el producto. Debe tener al menos un elemento. (opcional)
brand
string
Marca del producto. (opcional)
metadata
hash
Hash en donde el usuario puede enviar información adicional por cada producto. (opcional)

Actualizar Producto

Actualiza un producto existente para una orden existente.