I have looked over a few tutorials on how to add a customer attribute to the customer edit page within admin. 

- http://www.extensions.sashas.org/blog/magento-2-make-customer-attribute.html
- https://magento.stackexchange.com/questions/88245/magento-2-how-to-create-a-customer-custom-attribute
- https://magento.stackexchange.com/questions/153532/how-to-add-dropdown-attribute-to-custom-module-in-magento-2-0/153539

This however does not seem to be working completely for me. I added the below to my **InstallData.php** file:

	public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context) {

		$customerSetup = $this->customerSetupFactory->create(['setup' => $setup]);

		$customerEntity = $customerSetup->getEavConfig()->getEntityType('customer');
		$attributeSetId = $customerEntity->getDefaultAttributeSetId();

		$attributeSet = $this->attributeSetFactory->create();
		$attributeGroupId = $attributeSet->getDefaultGroupId($attributeSetId);

		$customerSetup->addAttribute(Customer::ENTITY, 'cp_permissions', [
			'type' => 'text',
			'label' => 'Account Type',
			'input' => 'select',
			'source' => 'Magento\Eav\Model\Entity\Attribute\Source\Table',
			'required' => false,
			'visible' => true,
			'user_defined' => true,
			'sort_order' => 101,
			'position' => 101,
			'system' => 0,
			'option' =>
				array (
					'values' =>
						array (
							0 => 'Master',
							1 => 'Branch'
						),
				),
		]);

		$attribute = $customerSetup->getEavConfig()->getAttribute(Customer::ENTITY, 'cp_permissions')
			->addData([
				'attribute_set_id' => $attributeSetId,
				'attribute_group_id' => $attributeGroupId,
				'used_in_forms' => ['adminhtml_customer'],
			]);

		$attribute->save();

		}
	}


And run `setup:upgrade` to install the plugin. This works fine it seems and the attribute `cp_permissions` is added within the `eav_attribute` table however when checking the customer edit page within admin no attribute is visible. What am i doing wrong here?

**UPDATE**

I compared my attribute to the gender attribute and matched a lot of the values where there where differences and its shown up. Main issues seems to be that the type was static for gender, the source wasn't being set and need to work out how to make sure this is correct. 

The attribute also does not save the value once set either.