☰ Menú · Escaneos
Referencia de la API

Escaneos

Convierte lo que haya leído un escáner en un socio y las acciones disponibles para él.

POST/v1/scans
Permiso: members:read o devices:write

Encuentra al socio que corresponde a un valor escaneado y enumera lo que el dispositivo puede hacer a continuación. No se gana ni se gasta nada. Envía el evento member.scanned. Devuelve 404 member_not_found si no hay coincidencia.

codestring, obligatorio
Exactamente lo que produjo el escáner: número de tarjeta, contenido del QR, Code 128 con o sin el prefijo ]C1, enlace a la página de la tarjeta o un teléfono. Se eliminan los saltos de línea y los tabuladores.
device_idstring
Tu id del dispositivo; se incluye en el evento.
curl
curl https://loyaltyfy.io/api/v1/scans \
  -H "Authorization: Bearer sk_test_..." \
  -H "Content-Type: application/json" \
  -d '{ "code": "]C14285324286429\r", "device_id": "door-1" }'
Respuesta · 200
{
  "object": "scan",
  "matched": true,
  "matched_by": "4285324286429",
  "device_id": "door-1",
  "mechanic": "stamps",
  "member": {
    "object": "member",
    "card_number": "4285324286429",
    "first_name": "Ana",
    "stamps": { "current": 1, "required": 5, "rewards_available": 0 },
    ...
  },
  "actions": [
    { "type": "visit", "method": "POST", "path": "/v1/visits" },
    { "type": "transaction", "method": "POST", "path": "/v1/transactions" }
  ]
}
action.typeSignifica
visitEl programa premia las visitas: se permite POST /v1/visits.
transactionSe puede aplicar un ticket con POST /v1/transactions.
redeem_rewardHay una recompensa de sellos pendiente. path es la llamada que debes hacer y available, cuántas hay.
redeem_cashbackHay saldo. max_amount es el saldo; el tope por ticket es redeem_max_percent.