☰ Meniu · Calcul
Referință API
Calculul unui bon
Află ce ar acumula și ce ar folosi un bon înainte ca oaspetele să plătească. Nu se scrie nimic.
POST
/v1/checks/calculatePermisiune: transactions:write sau devices:write
Aplică aceleași reguli ca POST /v1/transactions: nivelul oaspetelui, regulile categoriilor, partea stabilită de program, limitele localului și rezervările. Apelează-l ori de câte ori se schimbă coșul. O altă casă ar putea totuși să folosească soldul înainte să se închidă bonul; folosește o rezervare când asta contează.
- memberstring, obligatoriu
- Numărul cardului, valoarea scanată, seria, id-ul membrului sau telefonul.
- amountinteger, obligatoriu
- Totalul bonului înainte de cashback, în subunități.
- redeem_amountinteger
- Cât vrea oaspetele să plătească cu cashback.
- hold_iduuid
- Calculează ca și cum această rezervare ar fi confirmată.
- line_itemsarray
- La fel ca la o tranzacție; folosite de regulile categoriilor.
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 }'Răspuns · 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
- Cât s-ar folosi efectiv.
- max_redeeminteger
- Suma maximă pe care o poate folosi acum acest bon.
- limited_bystring sau null
- Când cererea a fost pentru mai mult:
balance,program,per_checksauper_day. - cashback_earned, earn_rate, level
- Ce ar acumula bonul și la ce nivel.
- balance_afterinteger
- Soldul după acest bon.
- hold_requiredboolean
- Localul acceptă plata doar prin rezervări și nu s-a trimis
hold_id. - stamps_earned, reward_unlocked, discount_percent
- Pentru programele cu ștampile și vizite.
- displayobject
cashier_textșireceipt_linesîn limba oaspetelui.