☰ Menú · Calcular
Referencia de la API
Calcular un ticket
Consulta qué generaría y canjearía un ticket antes de que el cliente pague. No se escribe nada.
POST
/v1/checks/calculatePermiso: transactions:write o devices:write
Aplica las mismas reglas que POST /v1/transactions: el nivel del cliente, las reglas de categoría, el porcentaje del programa, los límites del local y las reservas. Llámalo cada vez que cambie la cesta. Otra caja podría gastar el saldo antes de que se cierre el ticket; usa una reserva cuando eso importe.
- memberstring, obligatorio
- Número de tarjeta, valor escaneado, número de serie, id de socio o teléfono.
- amountinteger, obligatorio
- El total del ticket antes del cashback, en unidades mínimas.
- redeem_amountinteger
- Cuánto quiere pagar el cliente con cashback.
- hold_iduuid
- Calcula como si esta reserva se hubiera capturado.
- line_itemsarray
- Igual que en una transacción; lo usan las reglas de categoría.
curl
curl https://loyaltyfy.io/api/v1/checks/calculate \
-H "Authorization: Bearer sk_test_..." \
-H "Content-Type: application/json" \
-d '{ "member": "2000111703779", "amount": 20000, "redeem_amount": 5000 }'Respuesta · 200
{
"object": "check_calculation",
"amount": 20000,
"redeem_amount": 1250,
"max_redeem": 1250,
"limited_by": "balance",
"net_amount": 18750,
"cashback_earned": 938,
"earn_rate": 5,
"level": "Base",
"balance_after": 938,
"category_rules_applied": false,
"hold_required": false,
"stamps_earned": 0,
"reward_unlocked": false,
"member": { "object": "member", ... },
"display": {
"cashier_text": "Paid with cashback: 12.50 MDL · Cashback earned: 9.38 MDL · Cashback balance: 9.38 MDL",
"receipt_lines": [
"Paid with cashback: 12.50 MDL",
"Cashback earned: 9.38 MDL",
"Cashback balance: 9.38 MDL"
]
}
}- redeem_amountinteger
- Lo que se canjearía de verdad.
- max_redeeminteger
- Lo máximo que puede canjear este ticket ahora.
- limited_bystring o null
- Cuando la petición pidió más:
balance,program,per_checkoper_day. - cashback_earned, earn_rate, level
- Lo que generaría el ticket y con qué nivel.
- balance_afterinteger
- El saldo después de este ticket.
- hold_requiredboolean
- El local solo canjea mediante reservas y no se envió
hold_id. - stamps_earned, reward_unlocked, discount_percent
- Para programas de sellos y de visitas.
- displayobject
cashier_textyreceipt_linesen el idioma del cliente.