Create an entity
There are two types of entities, individuals and corporations. In the Method ecosystem, an individual entity represents a single person, while a corporation entity represents a company. Specific information is required to identify each type of entity, as well as enable capabilities, which define what actions they can take.
tip
Creating an entity should be your first priority when integrating with Method. Entities function as legal owners / holders for Method accounts.
âšī¸ See the entity object for details on the API.
Individual entityâ
- cURL
- Node.js
- Python
POST
/entities
curl https://production.methodfi.com/entities \
-X POST \
-H "Authorization: Bearer sk_WyZEWVfTcH7GqmPzUPk65Vjc" \
-H "Content-Type: application/json" \
-d '{
"type": "individual",
"individual": {
"first_name": "Kevin",
"last_name": "Doyle",
"phone": "+16505555555",
"email": "kevin.doyle@gmail.com",
"dob": "1997-03-18"
},
"address": {
"line1": "3300 N Interstate 35",
"line2": null,
"city": "Austin",
"state": "TX",
"zip": "78705"
}
}'
POST
/entities
const entity = await method.entities.create({
type: 'individual',
individual: {
first_name: 'Kevin',
last_name: 'Doyle',
phone: '+16505555555',
email: 'kevin.doyle@gmail.com',
dob: '1997-03-18',
},
address: {
line1: '3300 N Interstate 35',
line2: null,
city: 'Austin',
state: 'TX',
zip: '78705',
},
});
POST
/entities
entity = method.entities.create({
'type': 'individual',
'individual': {
'first_name': 'Kevin',
'last_name': 'Doyle',
'phone': '+16505555555',
'email': 'kevin.doyle@gmail.com',
'dob': '1997-03-18',
},
'address': {
'line1': '3300 N Interstate 35',
'line2': None,
'city': 'Austin',
'state': 'TX',
'zip': '78705'
}
})
RESPONSE
{
"id": "ent_au22b1fbFJbp8",
"type": "individual",
"individual": {
"first_name": "Kevin",
"last_name": "Doyle",
"phone": "+16505555555",
"email": "kevin.doyle@gmail.com",
"dob": "1997-03-18"
},
"corporation": null,
"receive_only": null,
"address": {
"line1": "3300 N Interstate 35",
"line2": null,
"city": "Austin",
"state": "TX",
"zip": "78705"
},
"capabilities": [
"payments:send",
"payments:receive",
"data:sync"
],
"available_capabilities": [
"data:retrieve"
],
"pending_capabilities": [],
"error": null,
"status": "active",
"metadata": null,
"created_at": "2020-12-09T00:40:51.107Z",
"updated_at": "2020-12-09T00:40:51.107Z"
}
Corporation entityâ
- cURL
- Node.js
- Python
POST
/entities
curl https://production.methodfi.com/entities \
-X POST \
-H "Authorization: Bearer sk_WyZEWVfTcH7GqmPzUPk65Vjc" \
-H "Content-Type: application/json" \
-d '{
"type": "c_corporation",
"corporation": {
"name": "Alphabet Inc.",
"dba": "Google",
"ein": "641234567",
"owners": [
{
"first_name": "Sergey",
"last_name": "Brin",
"phone": "+16505555555",
"email": "sergey@google.com",
"dob": "1973-08-21",
"address": {
"line1": "600 Amphitheatre Parkway",
"line2": null,
"city": "Mountain View",
"state": "CA",
"zip": "94043"
}
}
]
},
"address": {
"line1": "1600 Amphitheatre Parkway",
"line2": null,
"city": "Mountain View",
"state": "CA",
"zip": "94043"
}
}'
POST
/entities
const entity = await method.entities.create({
type: 'c_corporation',
corporation: {
name: 'Alphabet Inc.',
dba: 'Google',
ein: '641234567',
owners: [
{
first_name: 'Sergey',
last_name: 'Brin',
phone: '+16505555555',
email: 'sergey@google.com',
dob: '1973-08-21',
address: {
line1: '600 Amphitheatre Parkway',
line2: null,
city: 'Mountain View',
state: 'CA',
zip: '94043',
},
},
],
},
address: {
line1: '1600 Amphitheatre Parkway',
line2: null,
city: 'Mountain View',
state: 'CA',
zip: '94043',
},
});
POST
/entities
entity = method.entities.create({
'type': 'c_corporation',
'corporation': {
'name': 'Alphabet Inc.',
'dba': 'Google',
'ein': '641234567',
'owners': [
{
'first_name': 'Sergey',
'last_name': 'Brin',
'phone': '+16505555555',
'email': 'sergey@google.com',
'dob': '1973-08-21',
'address': {
'line1': '600 Amphitheatre Parkway',
'line2': None,
'city': 'Mountain View',
'state': 'CA',
'zip': '94043'
}
}
]
},
'address': {
'line1': '1600 Amphitheatre Parkway',
'line2': None,
'city': 'Mountain View',
'state': 'CA',
'zip': '94043'
}
})
RESPONSE
{
"id": "ent_y1a9e1fbnJ1f3",
"type": "c_corporation",
"individual": null,
"receive_only": null,
"corporation": {
"name": "Alphabet Inc.",
"dba": "Google",
"ein": "641234567",
"owners": [
{
"first_name": "Sergey",
"last_name": "Brin",
"phone": "+16505555555",
"email": "sergey@google.com",
"dob": "1973-08-21",
"address": {
"line1": "600 Amphitheatre Parkway",
"line2": null,
"city": "Mountain View",
"state": "CA",
"zip": "94043"
}
}
]
},
"address": {
"line1": "1600 Amphitheatre Parkway",
"line2": null,
"city": "Mountain View",
"state": "CA",
"zip": "94043"
},
"capabilities": [
"payments:send",
"payments:receive"
],
"available_capabilities": [],
"pending_capabilities": [],
"error": null,
"status": "active",
"metadata": null,
"created_at": "2020-12-09T00:40:51.107Z",
"updated_at": "2020-12-09T00:40:51.107Z"
}
Next stepsâ
In the next topic you will learn how Method verifies an entity's identity for fraud prevention, and which pieces of information to collect from your end-users.