Pagos - Taller2Uber/application-server GitHub Wiki

Pagos

Registrar un pago en el sistema.

Situacion que se da al terminar un viaje, o al querer generar uno teniendo una deuda.

URL : /api/v1/users/<string:user_id>/pay

Method : POST

Body

{
    "amount": 10,
    "paymethod": {
            "paymethod": "card",
            "parameters": {
                "expiration_month": "number",
                "ccvv": "number",
                "type": "string",
                "number": "string",
                "expiration_year": "number"
            }
        }
}

Espcificacion de campos

Nombre Tipo Requerido
amount integer Si

Success Response

Condition : Si google puede encontrar alternativas de rutas.

Code : 200

Content example

{
    "message": "Su pago se ha registrado con exito!"
}

Condition : Error registrando el pago.

Code : 500

Content example

{
    "error": "Su pago no se pudo registrar con exito."
}

Condition : Error registrando el pago.

Code : 400

Condition : Parametro amount faltante en el body.

Content example

{
    "error": "Bad Request, amount parameter needed."
}

Condition : Ningun usuario asignado al user_id proporcionado.

Content example

{
    "error": "Bad Request, user_id invalid."
}

Obtener deuda de usuario y formas de pago

Obtencion de balance de usuario y forma de saldarlo.

URL : /api/v1/users/<string:user_id>/debt

Method : GET

Success Response

Condition : Si se pueden obtener el balance.

Code : 200

Content example

{
    "paymethods": [
        {
            "paymethod": "card",
            "parameters": {
                "expiration_month": "number",
                "ccvv": "number",
                "type": "string",
                "number": "string",
                "expiration_year": "number"
            }
        },
        {
            "paymethod": "cash",
            "parameters": {
                "type": "string"
            }
        }
    ],
    "balance": -177.74647421918672
}

Condition : Usuario invalido.

Code : 400

Content example

{
    "error": "Bad Request, user_id invalid."
}