+962 번호의 요청 순서는 어떻게 되나요?
SMS 인증 API는 https://otproute.com/api/v1의 단순한 REST이며, 개발자 콘솔에서 생성하는 or_live_ 접두사의 Bearer 키를 사용합니다. 대부분의 통합이 요르단에서 따르는 순서는 이렇습니다.
- 조회:
GET /api/v1/services와GET /api/v1/countries가 식별자를 반환합니다. 요르단은jo이고, Telegram 같은 서비스는telegram입니다. - 가격 확인:
GET /api/v1/prices?country=jo&service=telegram은 해당 조합의 현재 비용과 주문 가능 여부를 반환합니다. - 주문:
{"service": "telegram", "country": "jo"}로POST /api/v1/activations를 호출하면 번호가 예약되고 활성화 ID가 반환됩니다. - 수집:
GET /api/v1/activations/{id}를 몇 초마다 폴링하거나, 웹훅이 결과를 보내 주도록 하세요. - 정리:
POST /api/v1/activations/{id}/cancel은 더 이상 필요 없는 활성화를 해제하고 환불합니다.
GET /api/v1/balance는 테스트 실행 시작 시 점검용으로 유용하며, 지갑 잔액이 부족하면 작업이 명확한 메시지와 함께 일찍 실패합니다. 전체 레퍼런스는 문서에 있습니다.
웹훅이 정말 OTP Route에서 온 것인지 어떻게 확인하나요?
각 이벤트(예: activation.sms_received 또는 activation.expired)는 t=<unix>,v1=<hex> 형태의 X-OTPRoute-Signature 헤더와 함께 도착합니다. 서버는 해당 엔드포인트의 시크릿으로 "<t>.<raw body>"의 HMAC-SHA256을 계산해 v1과 비교합니다. 값이 다르거나 t가 너무 오래전이면 요청을 거부하세요. 그렇게 하면 재전송 공격을 막을 수 있습니다.
재시도로 같은 이벤트가 두 번 전달될 수 있으므로 활성화 ID를 기준으로 처리하고, 두 번째 사본은 아무 동작도 하지 않도록 하세요. 공개 웹훅 URL을 마련하기 번거로운 로컬 개발에서는 폴링도 여전히 안정적인 대안입니다. 큐잉과 재시도는 웹훅 기반 OTP 수신 글에서 다룹니다.
요르단 경로에서는 어떤 앱을 인증할 수 있나요?
요르단에는 1,700개가 넘는 서비스가 등록되어 있습니다. 인기 서비스는 WhatsApp, Telegram, Facebook, Instagram, Snapchat, TikTok, X (Twitter), Discord, Claude, Microsoft & Outlook, Amazon, Viber, imo, Signal, LinkedIn입니다.
이 목록은 스냅샷일 뿐 약속이 아닙니다. 캐리어 용량은 하루 중에도 바뀌므로 API가 실시간 이용 가능 여부를 알려 주며, 코드는 주문 전에 이를 읽어야 합니다.
요르단 번호 형식: 트렁크 0, E.164, 아랍어 텍스트
요르단의 국가 코드는 +962이고 트렁크 접두사는 0입니다. 현지에서 휴대전화 번호는 07로 시작하게 쓰고, 국제 형식에서는 0이 사라져 +962 뒤에 7로 시작하는 9자리가 옵니다. E.164 형식으로 저장하고, 사용자가 현지 번호를 붙여 넣으면 국가 코드를 붙이기 전에 맨 앞 0을 제거하세요. 07…과 +9627…을 문자열로 비교하는 것은 중복 계정 버그의 전형적인 원인입니다.
아랍어가 공용어이며 많은 사람이 휴대전화와 앱을 아랍어로 설정합니다. 앱과 계정의 언어 설정에 따라 코드가 아랍어 또는 영어 텍스트로 도착할 수 있습니다. 아랍어 메시지는 유니코드로 전송되고 숫자가 오른쪽에서 왼쪽으로 읽는 텍스트 안에 들어갈 수 있으므로, 패턴으로 코드를 추출하고 두 언어를 모두 테스트하세요.
팀이 요르단을 다루는 경우는 아랍어 사용자를 위해 제품을 현지화하거나, 암만에서 지역 전체의 지원을 운영하거나, 사우디아라비아, 아랍에미리트 같은 인접 시장과 함께 흐름을 점검할 때입니다.
대시보드에서 요르단 코드 주문하기
운영 담당자는 코드를 작성하지 않고도 같은 작업을 할 수 있습니다. 이메일과 6자리 코드 또는 Google 로그인으로 계정을 만들고, 자금을 충전한 뒤, OTP Gateway에서 요르단과 서비스를 선택하고 표시된 가격을 확인해 주문하세요. +962 번호가 즉시 나타나고, SMS가 도착하면 그 옆에 코드가 표시됩니다.
활성화는 20분 동안 열려 있습니다. 코드가 도착한 경우에만 비용을 내며, 아무것도 오지 않은 채 시간이 끝나거나 취소하면 금액이 지갑으로 자동 환불됩니다.
코드가 오지 않을 때의 디버깅 순서
가장 쉬운 설명부터 시작해 바깥쪽으로 넓혀 가세요.
- 시간이 아직 남아 있나요? 전달 속도는 서비스와 경로에 따라 다릅니다. 실패라고 판단하기 전에 20분을 모두 기다리세요.
- 서비스가 가상 번호를 허용하나요? 허용하지 않는 서비스도 있으며, 그래서 사용되지 않은 활성화는 환불됩니다.
- 다른 경로를 시도하세요. 나중에 다시 주문하거나, 제품이 허용한다면 같은 기능에 다른 서비스 경로를 사용하세요.
- 재시도를 조절하세요. 몇 초마다 재주문하는 반복문은 대부분 시도만 낭비합니다. 간격을 두세요.
본인이 소유하거나 운영하는 테스트 계정에서만 시험하고, 각 서비스의 규칙을 따르며, OTP Route의 허용 사용 정책(Acceptable Use Policy)이 모든 사용에 적용된다는 점을 기억하세요.
장기 회선, 지갑, 샌드박스
OTP Route는 요르단용 셀프서비스 장기 번호를 제공하지 않습니다. 월 $1.95부터인 전용 번호(Dedicated Number)는 미국과 캐나다에서만 즉시 제공됩니다. 팀에 지속적으로 사용할 +962 회선이 필요하면 [email protected]으로 문의하세요. 마련할 수 있는지는 현지 규정에 따라 달라집니다.
지갑은 USD 선불 방식이며 월 요금도 선택할 요금제도 없습니다. 카드 또는 USDT/USDC로 충전하고, 충전할 때마다 PDF 인보이스를 이메일로 받습니다. 통합 중에는 개발 계정에 샌드박스 모드를 요청해 자금을 쓰지 않고 시뮬레이션된 번호와 코드를 받을 수 있습니다. 실시간 요금은 요금 안내를 참고하세요.
자주 묻는 질문
요르단의 API 국가 코드는 무엇인가요?
OTP Route API에서 country 값으로 jo를 사용하세요. 예를 들어 GET /api/v1/prices?country=jo&service=whatsapp처럼 씁니다.
요르단 휴대전화 번호에서 0을 빼야 하나요?
국제 형식에서는 빼야 합니다. 현지 07 번호는 +962 뒤에 7로 시작하는 9자리가 붙은 형태가 됩니다.
요르단 인증 코드가 아랍어로 도착하나요?
그럴 수 있습니다. 언어는 보통 앱과 계정 설정을 따르므로, 숫자를 패턴으로 파싱하고 아랍어와 영어 메시지를 모두 테스트하세요.
+962 번호는 코드를 받을 때까지 얼마나 유지되나요?
각 활성화는 20분 동안 지속됩니다. 그 시간 안에 SMS가 오지 않으면 요금이 지갑으로 돌아옵니다.
계속 보유할 수 있는 요르단 전용 번호를 받을 수 있나요?
셀프서비스로는 불가능합니다. 전용 번호(Dedicated Number)는 미국과 캐나다 상품이며, 요르단은 [email protected]으로 문의하실 수 있습니다.
자동화 테스트에서 요르단 SMS OTP를 받을 방법이 있나요?
네. POST /api/v1/activations로 주문한 다음 활성화를 폴링하거나 서명된 웹훅을 처리하세요. 샌드박스 계정에서는 시뮬레이션된 코드로 이를 미리 연습할 수 있습니다.
서비스 이름은 각 소유자의 상표입니다. OTP Route는 해당 소유자와 제휴 관계가 없습니다. 번호는 합법적으로 사용하고, 각 서비스의 약관과 당사의 허용 가능한 사용 정책을 준수하세요.