Paso 2: Payment
En este paso el usuario selecciona el Medio de Pago, en nuestro ejemplo seria MercadoPago o Decidir. Debemos tomar el id del payment_method y pasarlo al recurso de /checkouts/update para avanzar al siguiente paso.
Obtener payment_methods
GET /orders/:number
Response: (De la respuesta, buscamos available_payment_methods )
...
"available_payment_methods": [
{"id": 1,"name": "Decidir"},
{"id": 4,"name": "MercadoPago"}],
...
Avanzar a payment confirmation
PUT /checkouts/:number
Body:
{
"order":{
"payments_attributes":[
{
"payment_method_id":"1"
}
]
},
"controller":"frontend/api/checkout",
"action":"update",
"state":"payment"
}
Agregar cupón a la order
PUT /orders/:number/apply_coupon_code
Body:
{"coupon_code": "NOMBRE_DE_CUPON"}
Quitar cupón de la order
PUT /orders/:number/unapply_coupon_code
La respuesta de ambos recursos del cupon retornan la orden entera con los adjustments aplicados.