Recoma

Sandbox și chei

Două medii, aceeași aplicație. Sandbox-ul e gratuit, se deschide singur și nu atinge nimic din ce se facturează. Producția se deschide după ce integrarea trece verificările.

Cele două medii

rk_test_… (sandbox)rk_live_… (producție)
Cine o poate creaorice administrator, imediatdupă aprobare
Abonament necesarniciunul — merge și pe Start, și în trialStandard sau Plus
Ce coduri vededoar codurile de test de mai josdoar codurile tale reale
Limită de apeluri60 / minut120 / minut
Consumă din scanările inclusenuda
Ajunge în deconturi și facturiniciodatăda
Cât se păstrează datele30 de zilepermanent
O cheie de test și una de producție nu se văd reciproc. Un cod real cerut cu o cheie de test răspunde code_not_found — nu „interzis”, pentru că „interzis” ar confirma că acel cod există.

Sandbox-ul merge și dacă abonamentul e neplătit. Dacă factura e în întârziere, munca la integrare poate continua — sunt două probleme diferite și nu are rost să le legăm.

Prima cheie

Din aplicație, la Setări → API. Alegi sandbox (e deja selectat) și primești cheia o singură dată — păstrăm doar un hash, deci nu ți-o putem arăta a doua oară.

La crearea primei chei de test îți populăm automat zece coduri cu comportament fix. Nu trebuie să creezi nimic ca să începi.

curl
curl https://api.recoma.ro/v1/me \
  -H "Authorization: Bearer rk_test_..."
200 OK
{
  "seller": { "id": "…", "business_name": "Mobilier Fagul", "currency": "RON" },
  "key": { "prefix": "rk_test_7f3aQ2xd", "scopes": ["read","redeem"], "environment": "test" }
}

environment din răspuns e cel mai bun mod de a confirma cu ce vorbești. E și prima cauză de confuzie: o cheie de sandbox răspunde 200 la tot, iar comenzile nu apar nicăieri în rapoarte — ceea ce arată o după-amiază întreagă ca un bug de raportare.

Codurile de test

Comportamentul lor este garantat și nu se schimbă. Poți scrie teste automate care se bazează pe ele.

CodCe face
SANDBOX1010% reducere, fără limite
SANDBOX5050 lei reducere, comandă minimă 200
SANDBOXSHIPtransport gratuit
SANDBOXCAP20% reducere, plafonată la 40 lei
SANDBOXEXPIREDexpirat — răspunde valid:false, reason:expired
SANDBOXPAUSEDsuspendat — reason:paused
SANDBOXFULLepuizat — reason:exhausted
SANDBOXONCEo singură utilizare per client
SANDBOXFREE15% reducere, comision 0%
SANDBOXSTALE10% reducere, dar validările expiră în 60 de secunde în loc de 30 de zile

SANDBOXSTALE există pentru un singur motiv: testarea erorii validation_expired fără să aștepți o lună. Este și una dintre verificările pentru producție.

Valori magice

În sandbox, anumite valori ale comenzii declanșează comportamente pe care altfel nu le poți provoca:

order_valueCe se întâmplă
999.99la redeem: răspuns 503 sandbox_failure, de fiecare dată, cu Retry-After. Nimic nu se scrie, deci reîncercarea e o reîncercare curată.
Orice integrare întâlnește la un moment dat un 5xx de la noi. Cele care se descurcă bine sunt cele care l-au întâlnit înainte să conteze — iar „aștepți să pice serverul” nu e un plan de test.

Ce se întâmplă cu datele de test

Validările și comenzile din sandbox se șterg automat după 30 de zile. Nu apar în rapoarte, în deconturi, în facturi, și nu consumă din scanările incluse în abonament.

Colaboratorul inventat pentru codurile de test („Influencer de test”) trăiește tot în sandbox și nu apare niciodată într-o listă de plăți.

Mai departe

Contractul de integrare — cele patru reguli. Trecerea în producție — cele zece verificări. Cheile se administrează din aplicație.