English
One-time or long-term? Choosing a +1 787 route for verification tests
Yes, OTP Route lets you receive Puerto Rico (+1 787) verification codes on one-time OTP Gateway numbers, with each code shown in the dashboard and delivered to your systems by API polling or a signed webhook. Pricing starts at $0.20 per code, and if no SMS arrives within the 20-minute window the charge is returned to your wallet.
Should a Puerto Rico project use the OTP Gateway or a Dedicated Number?
Begin with how long the number has to live. The OTP Gateway issues a +1 787 number for exactly one code, which is right for a sign-up test, a localisation check or a CI job that verifies once and moves on. A Dedicated Number is a line you keep, suited to a staging account that must log in again next week or to a shared support inbox.
For Puerto Rico the choice is effectively made for you. Although the island is a US territory, its numbers are not part of the self-serve Dedicated Number inventory; that product covers the United States and Canada, from $1.95/month. If a mainland US line is acceptable for a recurring account, the virtual numbers page explains the options. If you specifically need a Puerto Rican long-term line, email [email protected]; whether it can be arranged depends on local rules and is not assured.
Which Puerto Rico OTP API calls create and read an activation?
The API sits at https://otproute.com/api/v1 and expects Bearer keys prefixed or_live_. Puerto Rico's country id is pr.
- Fetch ids with
GET /api/v1/servicesandGET /api/v1/countries, and cache them per deployment. - Price the request:
GET /api/v1/prices?country=pr&service=<id>returns the current figure and shows whether a route is open. - Order with
POST /api/v1/activations, body{"service": "<id>", "country": "pr"}. - Put the returned number into the flow under test.
- Receive the code through
activation.sms_receivedon your webhook, or pollGET /api/v1/activations/{id}. - Cancel with
POST /api/v1/activations/{id}/cancelif the job stops early.
Webhook calls carry X-OTPRoute-Signature: t=<unix>,v1=<hex>. Recompute HMAC-SHA256 of <t>.<raw body> with the endpoint secret, compare in constant time, refuse old timestamps, and ignore repeat events for an activation id you have already handled. Each account gets 10 keys, 5 webhook endpoints and 300 requests per minute. The OTP API integration guide goes deeper.
What makes +1 787 and +1 939 numbers tricky in forms?
Puerto Rico belongs to the North American Numbering Plan, so its numbers look like any US number: country code 1, a three-digit area code (787 or the 939 overlay) and seven digits, written in E.164 as +1787 or +1939 plus seven digits.
That resemblance causes real bugs. Some apps list Puerto Rico as its own country with ISO code PR, others merge it into the United States, and address forms may expect PR as a state value. Confirm that your country picker, phone validator and address fields agree with each other, and that a user who selects Puerto Rico is never told their +1 number is invalid. Store numbers in E.164 and derive the region from the area code rather than from the leading +1.
Which services can receive Puerto Rico SMS OTP codes?
The Puerto Rico route currently carries more than 900 services. Popular senders include WhatsApp, Uber, Google (Gmail & YouTube), Facebook, Instagram, TikTok, X (Twitter), Amazon, ChatGPT (OpenAI), Microsoft & Outlook, LinkedIn, Discord, Airbnb, Netflix and Telegram. Availability moves through the day, so trust the API's answer at order time over any list.
Without code, open the OTP Gateway in the dashboard, choose Puerto Rico and a service, confirm the displayed price and order. The Puerto Rico verification number appears with its countdown, and the code is printed beside it when the SMS lands.
What if the code doesn't show up within 20 minutes?
Each activation lasts 20 minutes, and you pay only when a code arrives. If the window expires empty, or you cancel, the full amount is returned to the wallet automatically.
If Puerto Rican codes are not coming through:
- Give the activation its full window before marking the test red.
- Try again a little later, or pick a different service route.
- Confirm the service accepts virtual numbers; some reject them, and the refund is there to absorb that.
- Don't fire new orders in a tight loop; add exponential backoff between attempts.
For broader patterns, read reducing failed OTP deliveries.
Why do teams verify Spanish and English flows for Puerto Rico?
Spanish and English are both official, and Spanish is the language most residents use every day. That makes Puerto Rico a practical place to check bilingual onboarding: does the verification SMS arrive in Spanish when the app is set to Spanish, does the code-entry screen handle accented copy, and does the right template go out when a user switches language mid-flow? The island uses the US dollar and many US companies already serve it, so payment apps, delivery platforms, marketplaces and banks extending a US launch often need a +1 787 number for testing. Run these checks on accounts you control, follow every service's terms, and stay within OTP Route's Acceptable Use Policy. To automate them, see CI/CD testing.
How do the wallet and sandbox work for Puerto Rico tests?
There is no subscription. One prepaid USD wallet funds every order, with no monthly fee and no plan to pick. Top up by card or with USDT/USDC, and a PDF invoice arrives by email for each top-up and number purchase. Before going live, ask for your development account to be switched to sandbox, which returns simulated numbers and codes so the complete OTP routing flow can be rehearsed without spending funds. When you are ready, create an account with an email and a 6-digit code or Google sign-in, and turn on TOTP two-factor for the team.
Frequently asked questions
Can I test a Puerto Rico sign-up flow without a local SIM card?
Yes. Order a +1 787 number from the OTP Gateway, enter it in your app, and pick up the code in the dashboard or through the SMS verification API and webhooks.
Is Puerto Rico treated as the United States in the API?
No. It has its own country id, pr, which you use in price lookups and activation requests instead of the US id.
Can I buy a +1 787 Dedicated Number?
Not from the dashboard. Self-serve Dedicated Numbers cover only the United States and Canada; for a Puerto Rican line, email [email protected] to ask.
Will the verification SMS be in Spanish?
That depends on the sender and often on the app's language setting. If your product supports both, test the Spanish and the English locale.
Which area codes might I see on a Puerto Rico number?
Puerto Rico uses 787 and 939. Whichever one you receive, store it in E.164 so your records stay consistent.
What does a Puerto Rico verification code cost?
From $0.20 per code. The exact price for each service comes from GET /api/v1/prices and the dashboard, and nothing is charged if the code never arrives.
How many parallel tests can I run?
The account allows 300 requests per minute and 10 keys. Most of that budget goes on polling, so webhooks leave more headroom for parallel jobs.
Service names are trademarks of their respective owners. OTP Route is not affiliated with them. Use numbers lawfully, follow each service's terms and our Acceptable Use Policy.