Key Takeaways
- Laravel integration versioning is your Notification channel + job payload, not composer require sms-gateway/sdk:^2.
- We do not ship a versioned Laravel SDK. Pin live field names from Developer Center in a mapper you own.
- Idempotency keys and message-id columns are harder to migrate than a string constant.
- Do not silently switch OTP to a new deviceId in the same “v2” deploy without a canary.
- Priced by devices and SMS send volume. You use your own phone and operator SMS credit. A replay of v1 jobs during a deploy still spends pulsa.
Version your channel, not a fake SDK
Laravel / frameworks: how to version your integrations against an Android SMS gateway is change control on your HTTP mapper. Developer Center. Laravel send SMS. Laravel notifications.
If the upgrade plan is “composer update and hope the radio still pairs,” you do not have versioning. You have a Friday incident.
What actually needs a version
| Surface | Version? | Why |
|---|---|---|
| Composer “SDK” | N/A | We do not ship one |
| Your mapper | Yes | JSON field names |
| Job payload | Yes | Old workers in flight |
| deviceId / OTP pool | Change separately | Radio blast radius |
| Webhook HMAC | Document | Paid plans only |
Developer Center is the live contract
Blog samples rot. SMS API documentation. PHP samples are illustrations.
Ship v1 without painting into a corner
- Put HTTP behind one mapper class. SmsGatewayClient::send(). Jobs never build JSON ad hoc in three listeners.
- Version the job payload, not the vendor. sms_jobs.payload_version. Old workers must still deserialize.
- Keep a staff canary on every mapper bump. Same Laravel path, staff MSISDN, DLR check.
- Never rename OTP deviceId in the same PR as a field change. Two blast radii. Two rollbacks.
- Document webhook signature headers you rely on. Paid plans. Free has no webhooks — poll stays in v1.
- Tag the deploy with the Developer Center doc date. Support needs to know which contract you thought you were on.
What a field rename looks like
Dual-write old and new keys for one deploy if the plane still accepts both. Never “fix prod” by replaying last week’s OTP queue.
Old jobs still bill
Service pricing is based on device count and total SMS sent through the gateway. You need a working Android phone with a SIM and SMS credit from your mobile operator. Operator message costs are yours—we do not sell carrier SMS balance. Paid from $19/month; Free 300 SMS lifetime. Device and SMS volume pricing.
Next steps
One mapper, payload versions, canary, split radio changes. Then stop pinning a Composer SDK that is not in packagist because we never published it.
Related product pages
Jump to the live product docs for this topic—not another long-form article.
- SMS API documentationLive endpoint reference
- PHP REST send samplesPHP code examples
- device and SMS volume pricingPlans and allowances
- Android SMS gateway product guideDefinition, product, and how to buy





