SMS Verification
TwilioSMS
Sends a verification code by SMS with Twilio Verify and holds the transaction until the sender or recipient enters it. Can also check the phone number with Twilio Lookup and reject VOIP or landline numbers. Either check can fail the transaction.
Published February 16, 2026Execution Phases
This control can execute during the following transaction phases.
Supported Networks
This control is available on the following blockchain networks.
Integration
This control is powered by an external integration.

Configuration
This control accepts the following configuration parameters.
{
"type": "object",
"required": [
"requiredFor"
],
"properties": {
"message": {
"type": "string",
"maxLength": 160,
"description": "Custom SMS message (optional)"
},
"requiredFor": {
"type": "array",
"items": {
"enum": [
"sender",
"recipient"
],
"type": "string"
},
"minItems": 1,
"description": "Which parties need phone verification"
},
"enableLookup": {
"type": "boolean",
"default": false,
"description": "Enable Twilio Lookup for phone number validation and intelligence"
},
"lookupOptions": {
"type": "object",
"properties": {
"blockVoip": {
"type": "boolean",
"default": false,
"description": "Block VOIP phone numbers"
},
"checkSimSwap": {
"type": "boolean",
"default": false,
"description": "Check for recent SIM swap (fraud indicator)"
},
"blockLandline": {
"type": "boolean",
"default": false,
"description": "Block landline phone numbers"
},
"requireMobile": {
"type": "boolean",
"default": false,
"description": "Only allow mobile phone numbers"
},
"simSwapThresholdDays": {
"type": "number",
"default": 7,
"minimum": 1,
"description": "Days threshold to consider SIM swap suspicious"
}
},
"description": "Twilio Lookup validation options (only applies when enableLookup is true)"
},
"codeExpiration": {
"type": "number",
"default": 300,
"maximum": 600,
"minimum": 60,
"description": "Verification code expiration in seconds"
},
"verificationRequired": {
"type": "boolean",
"default": true,
"description": "Whether SMS verification is required. If false, only phone lookup is performed."
}
}
}API Endpoints
Coinbax endpoints for this control. Request and response shapes are documented in the API reference.
- POST
/api/v1/controls/verify-twilio-smsrequiredSubmit the verification code the recipient entered, for Coinbax to verify with Twilio
Requires first: Twilio credentials configured on the workspace integration
Operation
ControlsController_verifyTwilioSMS
Tags
Documentation
# SMS Verification Control Provides optional SMS verification with Twilio Lookup phone validation. ## Features ### Optional Verification - Set `verificationRequired: false` to skip SMS verification - Still collects phone lookup data when lookup is enabled - Useful when you want phone validation without the verification step ### Twilio Lookup Integration - Enable `enableLookup: true` to validate phone numbers - Returns carrier name, line type (mobile/voip/landline) - Detects SIM swap fraud indicators ### Lookup Validation Options - **blockVoip**: Reject VOIP phone numbers (fraud prevention) - **blockLandline**: Reject landline numbers (can't receive SMS) - **requireMobile**: Only allow mobile phone numbers - **checkSimSwap**: Flag recent SIM swaps as potential fraud ## Configuration Examples ### Basic SMS Verification (Default) ```json { "requiredFor": ["recipient"], "verificationRequired": true } ``` ### Phone Validation Only (No SMS) ```json { "requiredFor": ["recipient"], "verificationRequired": false, "enableLookup": true, "lookupOptions": { "requireMobile": true, "blockVoip": true } } ``` ### Full Verification with Fraud Prevention ```json { "requiredFor": ["sender", "recipient"], "verificationRequired": true, "enableLookup": true, "lookupOptions": { "blockVoip": true, "checkSimSwap": true, "simSwapThresholdDays": 7 } } ```