Plivo provides virtual phone numbers across multiple countries. Many of these phone numbers have compliance requirements that are put in place by a regional regulatory body. Ownership and subsequent usage of these virtual phone numbers is subject to an approval process in which users must provide information and documents to the regulatory body for review. Once Plivo and the regulators at its carrier partners have reviewed the information and approved it, you can link the information and documents to a virtual phone number, after which the number is ready to be used for voice and SMS services.
Compliance generally requires a set of documents and information that regulators must accept prior to a virtual phone number being approved. The specifics are defined by regulatory bodies based on several parameters:
Here’s an example of a compliance requirement:
For a business to own a toll-free virtual phone number in the country Ruritania, the applicant must provide:
This guide provides step-by-step instructions, from renting a regulated number to ensuring that all the necessary regulatory documents have been submitted to Plivo.
For the purpose of this guide, we will walk through the renting process of an Italy Local number from Plivo. The same steps are applicable for renting any regulated numbers from Plivo.
Step1: Read the Compliance Requirements for Italy Local Numbers for Business type End users
curl -X GET -i --user auth_id:auth_token \
'https://api.plivo.com/v1/Account/{auth_id}/ComplianceRequirement/?end_user_type=individual&number_type=local&country_iso2=IT'
Step2: Create an End User
curl -X POST -i --user auth_id:auth_token \
-H "Content-Type: application/json" \
-d '{"end_user_type" : "business", "name" : "max", "last_name" : "well"}' \
https://api.plivo.com/v1/Account/{auth_id}/EndUser/
Step3: Read the information required to be submitted for each Document Type listed in the Compliance requirements for Italy Local numbers for Business type End users
curl -X GET -i --user auth_id:auth_token \
https://api.plivo.com/v1/Account/{auth_id}/ComplianceDocumentType/<document_type_id>/
Step4: Create Documents
curl -X POST -i --user auth_id:auth_token \
-H "Content-Type: multipart/form-data" \
--form 'alias=max'\
--form 'end_user_id="8ed4d3a5-b00c-494f-9393-c7bbad1d9ea1"' \
--form 'document_type_id="69933935-8909-47eb-ba4e-2a016eab2e9e"' \
--form 'unique_identification_number="KalaynIN142131"' \
--form 'first_name="max"' \
--form 'file=@local_path_of_image'\
https://api.plivo.com/v1/Account/{auth_id}/ComplianceDocument/
Step5: Update Compliance Application
curl -X POST -i --user auth_id:auth_token \
-H "Content-Type: application/json" \
-d '{"alias": "<compliance application alias>", "end_user_id": "<end user id created in Step2>", "document_ids":["<document_id of documents created in step4>"], "compliance_requirement_id": "compliance requirement id retrieved from Step1" }' \
https://api.plivo.com/v1/Account/{auth_id}/ComplianceApplication/
Step6: Submit the Compliance Application for a review
curl -X POST -i --user auth_id:auth_token \
-H "Content-Type: application/json" \
-d '{}' \ https://api.plivo.com/v1/Account/{auth_id}/ComplianceApplication/{ComplianceApplicationID}/Submit/
Step 7: Update Compliance Application
curl -X POST 'https://api.plivo.com/v1/Account/{auth_id}/ComplianceApplication/{ComplianceApplicationID}/' \
--header 'Content-Type: application/json' \
--data-raw '{
"compliance_requirement_id": "<compliance requirement id retrieved in Step1>",
"end_user_id": "<end user id retrieved in Step2>",
"document_ids": ["<existing documents or newly created documents as per step4>"],
"alias": "<application alias>”
}'
Step8: Rent a numbers using the New Compliance Application
curl -X POST -i --user AUTH_ID:AUTH_TOKEN
-H "Content-Type: application/json"
-d ‘{‘compliance_application_id’: ‘{ComplianceApplicationID}’}’
https://api.plivo.com/v1/Account/{auth_id}/PhoneNumber/{Number}/