DaisySMS Alternative 2026: Migration Guide After Shutdown (No-Refund Recovery)
DaisySMS shut down on March 26, 2026 with no refund policy and no migration path. If you have unused balance or production code pointed at their API, this guide is the playbook to recover what you can and cut over to VerifySMS in under 30 minutes.
Cosa è successo a DaisySMS
DaisySMS ha interrotto il servizio il 26 marzo 2026 con un avviso di chiusura statico. La dashboard è diventata di sola lettura, poi offline. Gli endpoint API hanno smesso di accettare richieste entro 48 ore. Non ci sono stati avvisi preventivi, alcun percorso di migrazione e, soprattutto, alcuna politica di rimborso per il saldo inutilizzato sul conto.
Questa è la seconda chiusura importante di verifica SMS in sei mesi. SMS-Activate ha chiuso il 29 dicembre 2025. DaisySMS ha seguito tre mesi dopo. Il modello sta diventando familiare: un operatore a basso margine incontra pressioni di conformità o problemi con i fornitori a monte, l'operatore stacca la spina, il cliente subisce la perdita.
Come recuperare il tuo saldo inutilizzato di DaisySMS
DaisySMS non ha un processo di rimborso volontario. I tuoi tre percorsi di recupero, classificati per probabilità di successo:
- Chargeback con carta di credito (60 giorni dall'ultimo pagamento): Contatta l'emittente della tua carta. Cita "servizio non fornito" o "il commerciante ha cessato le attività". Fornisci screenshot del tuo saldo DaisySMS e una copia dell'avviso di chiusura. Gli emittenti di solito si pronunciano entro 30-90 giorni.
- Disputa PayPal (180 giorni dall'ultimo pagamento): Apri una disputa per "articolo non ricevuto". Stesse prove di cui sopra. La mediazione di PayPal di solito si risolve in 10-21 giorni.
- Pagamento in criptovaluta (ultimi 60 giorni): Non recuperabile tramite alcun provider. I rimborsi in criptovaluta richiedono un'azione volontaria da parte del commerciante. Documenta la perdita a fini di deduzione fiscale.
Se hai pagato più di 60 giorni prima del 26 marzo 2026, la finestra di chargeback è probabilmente chiusa e il recupero è improbabile. Documenta la perdita e procedi con la migrazione.
Confronto funzionalità DaisySMS vs VerifySMS
| Funzionalità | DaisySMS (ex) | VerifySMS |
|---|---|---|
| Stato | Chiuso il 26 Mar 2026 | Attivo, registrato nel Regno Unito |
| Politica di rimborso | Nessuno (nessun rimborso in caso di fallimento) | Rimborso automatico in caso di fallimento (da 60 secondi a 2 minuti) |
| Prezzi (base) | Da $0.05 | Da $0.10 |
| US non-VoIP | $0.40 | $0.25 |
| Copertura paesi | ~90 paesi | Oltre 200 paesi |
| Stile API | handler_api.php | Compatibile con handler_api.php + JSON nativo |
| Modalità Sandbox | Nessuna | Sì (header X-Sandbox-Mode) |
| Webhooks | No | Sì (configurabile dalla dashboard) |
| App nativa iOS | No | Sì (App Store) |
| KYC richiesto | No | No |
| Informativa sulla privacy | Divulgazione minima | GDPR UE, piena divulgazione |
| Pagamento in criptovaluta | Sì | Sì (NowPayments) |
| Lingue supportate | Solo EN | 15 completamente tradotte |
Migrazione del codice: DaisySMS a VerifySMS in 5 minuti
Il livello di compatibilità significa che cambi una sola riga: l'URL di base.
Prima (DaisySMS)
BASE_URL = "https://daisysms.com/stubs/handler_api.php"
API_KEY = os.environ["DAISYSMS_API_KEY"]
response = requests.get(f"{BASE_URL}?api_key={API_KEY}&action=getNumber&service=wa&country=187")
# ACCESS_NUMBER:12345:+15551234567
Dopo (VerifySMS)
BASE_URL = "https://api.verifysms.app/compat/handler_api.php"
API_KEY = os.environ["VERIFYSMS_API_KEY"]
response = requests.get(f"{BASE_URL}?api_key={API_KEY}&action=getNumber&service=wa&country=187")
# ACCESS_NUMBER:abc-uuid:+15551234567
Stessa stringa di query, stesso formato di risposta. L'ID del numero cambia da un intero numerico a una stringa UUID, ma la maggior parte del codice lo tratta comunque come opaco.
Tabella di mappatura degli endpoint
| Azione DaisySMS | Compatibilità VerifySMS | Note |
|---|---|---|
getBalance | getBalance | Stessa risposta: ACCESS_BALANCE:123.45 |
getNumber | getNumber | Stessa query, formato ID cambia (UUID vs int) |
getStatus | getStatus | Stessi stati: STATUS_WAIT_CODE, STATUS_OK, STATUS_CANCEL |
setStatus | setStatus | Stesse azioni (status=8 annulla, =6 ricevuto) |
getPrices | getPrices | Restituisce i prezzi nativi di VerifySMS |
getCountries | getCountries | VerifySMS copre oltre 200 paesi, vengono restituiti più elementi |
| (nessun equivalente) | getHistory | NUOVO: accesso al registro di audit di 12 mesi |
Checklist di migrazione (30 minuti)
- (2 min) Registrati su verifysms.app, aggiungi un saldo di $5, genera una chiave API.
- (5 min) Sostituisci l'URL di base di DaisySMS con
https://api.verifysms.app/compat/handler_api.phpnella tua configurazione dell'ambiente. - (5 min) Imposta l'header
X-Sandbox-Mode: 1per l'ambiente di staging. - (10 min) Esegui test di integrazione contro la sandbox. Verifica il tasso di successo, la forma della risposta e la gestione degli errori.
- (2 min) Rimuovi l'header sandbox, distribuisci in canary al 5%.
- (24 ore) Monitora le metriche: il tasso di successo dovrebbe eguagliare o superare la baseline di DaisySMS.
- (5 min) Esegui il cutover del restante 95% se le metriche sono positive.
- (1 min) Apri una disputa per qualsiasi saldo DaisySMS inutilizzato.
Errori comuni e soluzioni
Il codice paese non restituisce numeri
DaisySMS utilizzava ID numerici personalizzati che potrebbero non corrispondere alla mappatura di VerifySMS. Usa action=getCountries per recuperare l'elenco corrente. Funzionano anche i codici ISO-3166 alpha-2 (US, GB, DE).
Il polling restituisce STATUS_CANCEL dopo 60 secondi
Questo è il rimborso automatico che si attiva. VerifySMS annulla e rimborsa qualsiasi numero che non riceve un SMS entro la finestra di noleggio. Regola il timeout di polling se necessario: il provider HeroSMS ha una finestra di 60 secondi, il provider 5SIM ha 2 minuti.
La chiamata setStatus restituisce BAD_STATUS
VerifySMS convalida i codici di stato in modo più rigoroso rispetto a DaisySMS. Usa status=8 per annullare, status=6 per "codice ricevuto e utilizzato". Status=3 (richiedi un altro SMS) è supportato ma limitato a una volta per numero.
FAQ
La mia vecchia chiave API di DaisySMS funzionerà?
No. L'API di DaisySMS ha smesso di accettare l'autenticazione quando il servizio è stato interrotto. Hai bisogno di una nuova chiave VerifySMS. Il formato è simile (stringa di 40 caratteri), quindi puoi incollarla nella stessa variabile d'ambiente.
Cosa succede se anche VerifySMS chiude?
Preoccupazione legittima dopo due recenti chiusure. Siamo registrati nel Regno Unito, finanziariamente solvibili e il nostro livello di compatibilità significa che la migrazione futura a qualsiasi provider compatibile con handler_api richiede minuti, non giorni. Ci impegniamo inoltre a una finestra di preavviso di 6 mesi per qualsiasi modifica dell'API, pubblicata in anticipo sul nostro changelog.
C'è un piano gratuito per i test?
La modalità sandbox è gratuita e illimitata per i test. I numeri reali richiedono un saldo a pagamento, deposito minimo di $5. Nessun abbonamento, nessuna tariffa mensile.
Ci sono altri manuali di migrazione?
Manteniamo un manuale separato e dettagliato per la Hub di migrazione SMS-Activate 2026: lista di controllo per sviluppatori, mappatura API e confronto rimborsi se il tuo stack è misto. Lo stesso livello di compatibilità di VerifySMS funziona per entrambi.
Inizia in 5 minuti
Registrati su verifysms.app, aggiungi un piccolo saldo (minimo $5), genera una chiave API e sarai pronto a sostituire l'URL di base. La maggior parte delle migrazioni di produzione termina prima della prossima finestra di deploy.
Get started in 5 minutes
Sign up at verifysms.app, add a small balance ($5 minimum), generate an API key, and you are ready to swap the base URL. Most production migrations finish before the next deploy window.