IOSOR Znalosti
Idempotence send API: duplicity, retry a peníze
Průvodce pro vývojáře prepaid send API — idempotenční klíče, bezpečné retry, ochrana před duplicitami a korelace přátelská ledgeru, aby chyby engineeringu nebyly finančními incidenty.
Timeouty se stávají. Load balancery dělají retry. Mobilní klienti dají double-tap. Bez idempotence se z produktu "odeslat jednou" stane dvojité prepaid stržení a duplicitní OTP UX. Tento průvodce je pro engineering a technický product, kteří integrují white-label prepaid messaging API — kde je každá duplicita vidět v peněžence. IOSOR očekává money-aware integrace: autentizovaná volání, korelovatelné debety a klientské chyby, které nikdy nevypisují cizí brand payloady. Blízko USD 1 000+ měsíčního užití platformy už disciplína duplicit není volitelná.
Proč se z duplicit stávají peněžní problémy
| Režim selhání | Uživatel vidí | Peněženka vidí |
|---|---|---|
| Timeout klienta + slepý retry | Dvě OTP / dvě upozornění | Dva debety |
| Neidempotentní webhook handler | Dvojité side effects | Zmatek u success |
| User resend na auto-retry | Naštvaní uživatelé | Nahromaděné units |
| Chybějící korelace | Tikety "selhalo" | Nesourodé řádky ledgeru |
Dema odpustí. Produkční finance ne. Při prepaid intenzitě se z víkendu slepých retry stane reconciliační projekt, ne poznámka pod čarou v logu. Navrhněte happy path i timeout cestu se stejným pravidlem debetu.
Idempotenční klíče, které přežijí retry
Vážná send cesta přijímá klientem generovaný klíč (nebo ekvivalent), který je unikátní na business intent, nikoliv na TCP pokus. Musí vrátit stejný accepted výsledek při replay v jasném TTL okně. Tím zabráníte tichému vytvoření druhého debetu pro stejný intent. Klíč logujte vedle message ID a prepaid reference. Musí fungovat přes timeouty, gateway retry a support redrive.
Rozpočty retry vs opětovné odeslání uživatelem
Automatické retry potřebují rozpočet: max pokusů, backoff a které třídy chyb jsou retryable. User-initiated resend je jiná produktová akce s vlastními limity a prepaid nákladem. Smíchání z nestabilní sítě udělá víkendovou událost peněženky. Spárujte obojí se stop-on-low-balance a jasnými důvody zamítnutí, aby product a finance sdíleli jednu pravdu.
Checklist kupujícího / engineeringu
- Dokumentovaná sémantika idempotenčního klíče a TTL.
- Replay test, který dokazuje jeden debet pro jeden intent.
- Oddělený rozpočet auto-retry od logiky user resend.
- Korelační ID napříč requestem, stavem zprávy a prepaid ledgerem.
- Staging, který cvičí reálné koridory — mock zelená světla nejsou launch.
- Hygiena klíčů a least privilege pro send credentials.
- Ošetření 429 a 503 kódů bez ztráty původního intent klíče.
- Automatizované alerty pro vysokou míru zamítnutí duplicitních klíčů.
Červené vlajky
- "Jen retry do 200" bez použití idempotenčních klíčů.
- Webhook handlery, které nejsou idempotentní a spouštějí side effects dvakrát.
- Plné secret klíče nebo auth tokeny v logách či tiketech.
- Chyby vkládající upstream brand payloady nebo interní stack trace koncovým uživatelům.
- Absence limitů na retry.
Začněte s IOSOR
V odesílací konzoli spusťte jeden OTP nebo alert s klientským klíčem idempotence. Vynuťte timeout klienta a přehrajte stejný požadavek uvnitř TTL klíče. Otevřete prepaid ledger: ten záměr musí ukázat jeden debet a jednu viditelnou zprávu. Dva řádky znamenají, že klíč nepřežil retry — opravte TTL a handler, než koridor zůstane Live.
- webhooky, které přežijí spuštění
- limity rychlosti API od pilotu k produkci
- Překryvy NANP před odesláním: Kvalita dat pro finanční týmy
Shrnutí IOSOR
Dělejte: berte každý send nejdřív jako událost ledgeru. Klíč je unikátní na obchodní záměr, ne na TCP pokus. Auto-retry má rozpočet; klepnutí uživatele na znovuodeslání je jiná produktová akce s vlastní prepaid cenou.
Nedělejte: mlátit do 200 bez klíče ani nechat neidempotentní webhook razit druhý vedlejší efekt. Dva OTP na jedno klepnutí jsou peněžní chyba, ne síťový příběh.
Byl tento průvodce užitečný?
Související průvodci
- Simulace latence a chyb DLR při lokálním testování
Zjistěte, jak mockovat asynchronní doručenky, zpracovávat latenci DLR a testovat hraniční případy lokálně před nasazením CPaaS integrace.
- Vyvážení dávek dat a propustnosti požadavků API
Optimalizujte strategie souběhu API pro velkoobjemové odesílání oznámení při zachování dodržování limitů v konzoli vašeho white-label CPaaS.
- Vymezení víceklientských API klíčů pro zabezpečení platformy
Zabezpečte white-label CPaaS podúčty pomocí vymezení API tokenů k izolaci klientského provozu, prevenci úniků a vynucení finančních limitů.