🤖API Universal V.2
Notice
Google Doc V1.0 (28/02/22) Google Doc V1.1 (15/03/22) Google Doc V1.2 (04/07/22) Google Doc V2.0 (18/03/23) Google Doc V2.1 (03/04/23) Gitbook 21 Sept 2023
"UNIVERSAL" car l'accès API inclut les différents services de Lyzi
Vocabulaire :
Le vendeur = Le manager = members
PoS = point of sale = identifier
Environnement : TEST
Pré-conditions obligatoires :
Le manager à créé un compte via API https://api-dev.lyzi.fr/docs/#api-Auth-Register ou interface : https://admin-dev.lyzi.fr
Le manager postule pour être vendeur vérifié KYB (via interface uniquement) : https://admin-dev.lyzi.fr/backoffice/company/certified-seller
Le manager est validé par le super admin Lyzi
Le manager doit créer un point de vente sous le quel se trouve un identifiant de caisse via API dans son interface https://admin-dev.fidly.io/backoffice/collectors/list
Procédure pour un paiement crypto :
Présenté ci-dessous : Le consommateur se connecte sur l’application Lyzi, génère le code “bon” (voucher) en QR ou code barre (via APPLICATION LYZI)
Le manager se connecte pour obtenir son auth token et sa clé privé d’api
curl -X POST https://api-dev.lyzi.fr/api/next/auth/login/manager -H "Content-Type: application/json" -d "{\"email\":\"manager-x@yopmail.com",\"password\":\"lyzi123,\",\"origin\":\"dashboard\"}"
Par la suite 2 choix possibles pour l'authentification :
OU clé publique et clé privée
--header 'x-api-key: fa392da4-3d86-49d4-9937-fadc3b471e33' \ --header 'x-api-secret: $2b$10$wYm6jBkA3z6EqDtkphTF0.4Lpqv5Iy9vJoIk1Vtm5ATbJBwR5w2uO' \ --header 'Content-Type: application/json' \
Le manager obtient son identifiant de caisse
curl -X GET https://api-staging.lyzi.fr/api/next/collectors/list
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI1Zjg5ZDI5YWU3MDVhYjAwMWMwZTI0ODIiLCJyb2xlIjoiTWFuYWdlciIsImlhdCI6MTY5ODY3Mjg0NiwiZXhwIjoxNzMwMjMwNDQ2LCJpc3MiOiJwcm9vZmVvIn0.6AUYW0fC_jweGZZGz2SQw4RWv4h8FuXRzYppWmY8AnE"
--Consommateur génère un bon (voucher) via l’app Lyzi Wallet valide 300 secondes--
Le manager scan la valeur du voucher pour CONFIRMER la conversion (c’est l’acte de collecte du commerçant au consommateur, c'est l'acte de burn du voucher)
curl --location 'https://api-dev.lyzi.fr/api/next/confirm_conversion/confirm/25356565699000112790223030604220600000000100' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI1Zjg5ZDI5YWU3MDVhYjAwMWMwZTI0ODIiLCJyb2xlIjoiTWFuYWdlciIsImlhdCI6MTY3NTk0NjYzMCwiZXhwIjoxNzA3NTA0MjMwLCJpc3MiOiJsYXRlY2gifQ.PevlKQlb0jRxHT7ssgMQyhmq7R4qk4D1PSngztefZyw' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'pos=5f89d29ae705ab001c0e2485_622661913a638b001d4c24a2-TESTCSPINDUSTRY-SARL-74640667'
REVERT un paiement :
curl --location --request POST 'https://api-dev.lyzi.fr/api/next/confirm_conversion/revert/25356565699000112137123032209211200000000010' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI1Zjg5ZDI5YWU3MDVhYjAwMWMwZTI0ODIiLCJyb2xlIjoiTWFuYWdlciIsImlhdCI6MTY3NTk0NjYzMCwiZXhwIjoxNzA3NTA0MjMwLCJpc3MiOiJsYXRlY2gifQ.PevlKQlb0jRxHT7ssgMQyhmq7R4qk4D1PSngztefZyw'
REFUND Demande de remboursement auprès de Lyzi par le marchand
curl -X POST https://api-dev.lyzi.fr/api/next/claims/claim_refund/25356565699000117981823033008422400000000010?amount=0.01 -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI1Zjg5ZDI5YWU3MDVhYjAwMWMwZTI0ODIiLCJyb2xlIjoiTWFuYWdlciIsImlhdCI6MTY4MDUzMjg2OCwiZXhwIjoxNzEyMDkwNDY4LCJpc3MiOiJsYXRlY2gifQ.nI-Nz-RoxHTDnrDsDY6u7Ejz-5XeritAtaqQZsHR-I0" -H "Content-Type: application/json" -H "Content-Length: 0"
Connaître le STATUS d’un voucher (Par exemple : pour un call back, pour un Cron, ou loop ping) curl --location 'https://api-dev.lyzi.fr/api/next/confirm_conversion/status/25356565699000113814923022123434700000000010'
Exemple CURL sur Reqbin
Steps:
🔗Consumer : Request
Verifier le status:
Revert : within 5min
Remboursement :
Les status :
ORDER_STATUS:
INITIAL : order requested (request converison),
AWAITING : order confirmed (confirm conversion),
PENDING: order accepted (accept conversion),
PAID: order paid (binance callback),
CANCELED: order canceled (cancel order and binance callback),
ERROR: not used yet (binance callback),
REFUNDING: (binance callback),
REFUNDED: (binance callback),
EXPIRED: order expired; can changed from check order status and binance callback
Last updated