Fooodo / Documentație

Plăți

Cum circulă plățile prin Fooodo — metode și valute acceptate, Mollie în fundal, rutarea bacșișurilor și donațiilor, mașina de stări a plăților și reconcilierea webhook-urilor.

Auto-translated · pending native review. The English version is canonical.

Fooodo separă gestionarea plăților într-un serviciu dedicat. Aplicația de meniu orientată către client îi transmite solicitările prin proxy; serviciul de plăți deține integrarea Mollie, domeniul PCI și reconcilierea webhook-urilor.

Metode acceptate

În producție în prezent:

  • Card (Visa, Mastercard) și debit direct bancar european
  • Apple Pay
  • Google Pay
  • Trustly — plată directă prin internet banking, în principal pentru piețele nordice și baltice unde autentificarea prin aplicația bancară este fluxul implicit al consumatorilor

Catalogul complet de metode Mollie este disponibil tehnic prin aceeași integrare; doar metodele de mai sus sunt conectate la fluxul de checkout din producție. Metode suplimentare (de ex. iDEAL, Bancontact) pot fi activate per implementare.

Numerarul este acceptat ca flux separat: un chelner preia numerarul la masă și marchează comanda ca plătită direct în administrarea Fooodo. Comanda în sine parcurge aceeași mașină de stări; doar pasul de creare a plății Mollie este omis.

Valute acceptate

Fooodo decontează fiecare comandă în valuta configurată pentru restaurant. Mollie acceptă mai mult de 30 de valute; lista practică pentru piețele pe care Fooodo le deservește în prezent:

RegiuneValute
Zona EuroEUR
Regatul UnitGBP
Europa de Est (non-Euro)PLN (Polonia), CZK (Cehia), HUF (Ungaria), RON (România), BGN (Bulgaria)
Țările NordiceDKK, NOK, SEK
AlteleCHF, USD

Catalogul complet Mollie (31 de valute, inclusiv AUD, CAD, JPY, ZAR) este disponibil tehnic; nu orice metodă de plată acoperă orice valută. EUR și principalele rețele de carduri (Visa, Mastercard) funcționează peste tot; compatibilitatea metodă-valută este finalizată în timpul procesului de onboarding pentru implementările din afara zonei Euro.

Pentru implementările din România în mod specific, RON este acceptat prin plăți cu cardul de la un capăt la altul; Apple Pay și Google Pay acceptă de asemenea carduri RON.

Ciclul de viață al plății

Menu appPayment serviceMollieGuest
01Create payment for order
02Build payload (tips · donations) and create payment
03Return checkout URL
04Pass checkout URL through
05Redirect guest to Mollie checkout
06Complete payment
07Webhook callback (payment ID only)
08Fetch authoritative status
09Notify status (queued, signed)
10Show success / cancel page
Payment lifecycle · sequence

Fluxul este bazat pe webhook-uri și idempotent. Mollie poate reîncerca webhook-urile în caz de eșecuri tranzitorii; reluările sunt sigure — serviciul scurtcircuitează dacă starea plății nu s-a schimbat față de ultima rulare.

Stările plății

Serviciul de plăți urmărește propria sa mașină de stări, paralelă cu mașina de stări a comenzilor din aplicația de meniu:

StareCe înseamnă
OpenCreată, în așteptarea răspunsului Mollie
PendingMollie a acceptat, în așteptarea oaspetelui
AuthorizedAutorizată, dar neîncasată încă
PaidÎncasată și finală
FailedEșec terminal
CancelledAnulată de oaspete
ExpiredPlata Mollie a expirat

Cancelled și Expired sunt recuperabile — un oaspete poate reîncerca pe aceeași comandă, ceea ce creează o nouă tentativă de plată pentru aceeași comandă.

Bacșișuri

Bacșișurile sunt incluse într-o singură taxă Mollie alături de comandă — oaspeții nu văd niciodată un al doilea checkout pentru bacșiș. După decontarea plății, bacșișul apare în POS-ul dvs. ca o linie separată de bacșiș pe comandă, astfel încât fluxurile de raportare și distribuire a bacșișurilor funcționează ca întotdeauna. Codul de venituri POS utilizat pentru a reprezenta veniturile din bacșișuri este setat per restaurant în administrare (R-Keeper este conectorul de referință activ pentru aceasta; ceilalți conectori POS expun aceeași setare prin contractul conectorului).

Donații

Donațiile funcționează în același mod: o singură taxă Mollie pentru oaspete, dar porțiunea de donație este rutată către un cont de organizație separat în Mollie (Crucea Roșie este exemplul de referință activ). Din perspectiva oaspetelui este o singură tranzacție; din perspectiva operatorului, donația nu apare în veniturile restaurantului sau în rapoartele de vânzări POS — aceasta ajunge în mod curat în evidențele organizației partenere.

Webhook-uri

Sunt implicate două webhook-uri:

  • Mollie → serviciul de plăți. Endpoint public care primește doar un ID de plată Mollie. Serviciul apelează apoi API-ul Mollie pentru a prelua starea autoritativă — astfel un callback falsificat nu poate muta bani sau schimba starea comenzii. (Acesta este modelul standard de integrare Mollie; callback-urile lor sunt în mod intenționat minimale.)
  • Serviciul de plăți → aplicația de meniu. Autentificat cu token Bearer, secret per implementare. Acesta este canalul care schimbă efectiv starea comenzii în aplicația de meniu.

Dacă operați o implementare Fooodo, secretul aplicației de meniu este provizionat în timpul onboarding-ului. Dacă vă integrați cu Fooodo ca partener, în mod normal nu veți vedea niciunul dintre acestea.

Ce văd partenerii

Integratorii parteneri nu se integrează direct cu serviciul de plăți. Contractul este:

  • Apelați API-ul de creare a comenzilor al aplicației de meniu.
  • Primiți o comandă și (când plata este necesară) un URL de checkout.
  • Nu gestionați date de card, nu apelați Mollie, nu aveți nevoie de domeniu PCI.

Acesta este unul dintre motivele fundamentale pentru care serviciul de plăți există ca o limită separată.

Rambursări și reversări

Rambursările nu sunt o funcționalitate Fooodo: nu există nicio acțiune de rambursare în aplicația de meniu sau în administrarea serviciului de plăți. O rambursare este emisă direct în panoul de control Mollie față de plata originală, iar comanda este reversată în POS cum s-a procedat întotdeauna. Oaspeții nu pot solicita o rambursare din aplicație.

Pe această pagină