Credit-Card-Updates
Formulario para actualizar tarjetas de crédito.
Estas APIs permiten actualizar una tarjeta en la tabla "tarjetas"
- Crear entrada en la tabla "credit_card_updates", seteando SOLO f_fin y card_id. Considerar que f_fin está en GMT 00 y ese mismo huso horario se utilizará para comparar, por lo que según el huso horario del usuario, se deberá setear la hora correcta. Luego de f_fin, esa entrada queda inutilizada.
- entregar al usuario un link con el uuid generado:
auraview.auravant.com/creditcard.php?uuid=\<UUID\> - el usuario visita el link
- el sitio hace la llamada a
GET /api/payment/credit_card_update?uuid=<UUID>
-
Si el link es inválido o está vencido, respuesta es 400 con un json con la propiedad code=1
-
Si está todo ok, la respuesta es un 200 con un json con las propiedades:
- token: token para validar el formulario
- message: mensaje a mostrar junto al formulario (opcional)
Recien ahí debe mostrarse el formulario al usuario con el input de tarjeta de crédito tal como está en el checkout (hacer las validaciones).
Al ser consultada esta API, se setea la columna expiration que le da una ventana de tiempo de 5 minutos al usuario, por lo que se debería mostrar una cuenta regresiva junto al formulario.
-
Este UUID puede ser consultado una única vez ya que una vez seteado la expiration, el GET responderá siempre 400, code=1
- Se postean los datos del formulario con form-url-encoded
POST /api/payment/credit_card_update?uuid=<UUID>
-
cvv:
{"type": "string", "pattern": "^[0-9]{3,4}$"}, -
pan:
{"type": "string", "pattern": "^[0-9 ]+$"}, -
nombre:
{"type": "string", "minLength": 1}, -
vencimiento:
{"type": "string", "pattern": "^[0-9]{2} ?/ ?[0-9]{2,4}$"} -
uuid: <UUID>,
-
token: <TOKEN>
La request debe hacerse antes de f_fin y expiration. Una vez consultada, la columna used se setea en true y la entrada deja de funcionar.
Si token/uuid son inválidos o la entrada está vencida, la API responde con 400 y json code=1.
Si se actualizan los datos, responde con 200 y json con code=0