---
title: supportsCellularPlan()
framework: coretelephony
role: symbol
role_heading: Instance Method
path: coretelephony/ctcellularplanprovisioning/supportscellularplan()
---

# supportsCellularPlan()

Returns whether the device and your app meet eSIM provisioning requirements.

## Declaration

```swift
func supportsCellularPlan() -> Bool
```

## Return Value

Return Value true if all requirements are met; otherwise false.

## Discussion

Discussion This method returns true when all of the following conditions are met: The device supports eSIM installation. The activation policy allows eSIM installation. Your app includes the com.apple.CommCenter.fine-grained entitlement with public-cellular-plan in its array of values. You can use this method to verify that your entitlement is properly configured. If you expect the device to support cellular plans but it returns false, check that you’ve added the required entitlement to your app and that its value array includes public-cellular-plan. This method doesn’t check whether you have installed an eSIM. You can call this method at any time.

## See Also

### Provisioning an eSIM

- [supportsEmbeddedSIM](coretelephony/ctcellularplanprovisioning/supportsembeddedsim.md)
- [addPlan(request:properties:completionHandler:)](coretelephony/ctcellularplanprovisioning/addplan(request:properties:completionhandler:).md)
- [addPlan(with:completionHandler:)](coretelephony/ctcellularplanprovisioning/addplan(with:completionhandler:).md)
- [CTCellularPlanProvisioningAddPlanResult](coretelephony/ctcellularplanprovisioningaddplanresult.md)
