---
agentTools:
  projectIndex: https://docs.bond.tech/llms.txt
---

# Creating a business resource

<style>
.button {
    background-color: #EF5B25;
    border: none;
    color: white;
    padding: 4px 10px;
    text-align: center;
    text-decoration: none !important;
    display: inline-block;
    font-size: 12px;
    /* margin: 3px 2px; */
    cursor: pointer;
    border-radius: 12px;
    /* width: 150px; */
    height: 25px;
}
.button:hover{
  	opacity: 80%;
    color: #ffffff;
  }
</style>

## `business` object

To create a Business resource, use the `POST /businesses` operation and provide parameters, as shown in the table below.

<a class="button" href="https://www.postman.com/bond-technologies/workspace/bond-api" target="_blank">▶ Run in Postman</a>

[block:parameters]
{
  "data": {
    "h-0": "Parameter",
    "h-1": "Type",
    "h-2": "Description",
    "0-0": "`ein`",
    "0-1": "string",
    "0-2": "Unique type of tax identification number used to identify the business with the IRS.",
    "1-0": "`legal_business_name`  \n<b><sup>required</sup></b>",
    "1-1": "string",
    "1-2": "Legal name of the business.",
    "2-0": "`dba_business_name`",
    "2-1": "string",
    "2-2": "Alphanumeric,  \"doing business as\" name (trade name).",
    "3-0": "`business_type`",
    "3-1": "string",
    "3-2": "Valid values are one of:  <ul> <li><code>cooperative</code></li> <li><code>corporation</code></li> <li><code>limited_liability_company</code></li><li><code>limited_partnership</code></li>  <li><code>partnership</code></li> <li><code>sole_proprietorship</code></li>        </ul> ",
    "4-0": "`date_established`",
    "4-1": "date",
    "4-2": "Date of incorporation in `YYYY-MM-DD` format, for example `2021-06-28`",
    "5-0": "`phone`",
    "5-1": "string",
    "5-2": "Business phone number with or without hyphens.",
    "6-0": "`email`",
    "6-1": "string",
    "6-2": "Business contact email address.",
    "7-0": "`website`",
    "7-1": "string",
    "7-2": "The official website of the business",
    "8-0": "[addresses](#addresses-array)  \n<b><sup>required</sup></b>",
    "8-1": "array",
    "8-2": "Array of one or more physical or mailing addresses (see `addresses` Object table below).",
    "9-0": "[beneficial_owners](#beneficial-owners-array) ",
    "9-1": "array",
    "9-2": "Array of one or more beneficial owners (see `beneficial_owners` Object table below)."
  },
  "cols": 3,
  "rows": 10,
  "align": [
    "left",
    "left",
    "left"
  ]
}
[/block]

### `addresses` array

The `addresses` array is within the Business object and has the following structure.

[block:parameters]
{
  "data": {
    "h-0": "Parameters",
    "h-1": "Type",
    "h-2": "Description",
    "0-0": "`address_type`  \n<b><sup>required</sup></b>",
    "0-1": "string",
    "0-2": "Either `MAILING` or `PHYSICAL`.",
    "1-0": "`street`  \n<b><sup>required</sup></b>",
    "1-1": "string",
    "1-2": "Freeform name between 1 and 40 characters. May contain only alphanumeric and these special characters `. , _ - #`",
    "2-0": "`street2`",
    "2-1": "string",
    "2-2": "Freeform name maximum 40 characters.",
    "3-0": "`city`  \n<b><sup>required</sup></b>",
    "3-1": "string",
    "3-2": "City name, freeform between 2 and 40 characters.",
    "4-0": "`state`  \n<b><sup>required</sup></b>",
    "4-1": "string",
    "4-2": "Two-character US state code. Non-US state code maximum 20 characters.",
    "5-0": "`zip_code`  \n<b><sup>required</sup></b>",
    "5-1": "string",
    "5-2": "Five-digit US zip code, (for example 12345) or nine-digit US zip code, (for example 12345-1234).  \nNon-US state code between 2 and 20 characters.",
    "6-0": "`country`  \n<b><sup>required</sup></b>",
    "6-1": "string",
    "6-2": "ISO 3166-1 alpha-2 country code, maximum two characters.",
    "7-0": "`is_primary`  \n<b><sup>required</sup></b>",
    "7-1": "boolean",
    "7-2": "Is this the primary address; either `true` or `false`.  \n**Note:** This field is deprecated."
  },
  "cols": 3,
  "rows": 8,
  "align": [
    "left",
    "left",
    "left"
  ]
}
[/block]

### `beneficial_owners` array

The `beneficial_owners` array is within the Business object and has the following structure.

[block:parameters]
{
  "data": {
    "h-0": "Parameters",
    "h-1": "Type (\\* Required)",
    "h-2": "Description",
    "0-0": "`dob`  \n<b><sup>required</sup></b>",
    "0-1": "string",
    "0-2": "Date of birth in `YYYY-MM-DD` format, for example `1978-06-20`.",
    "1-0": "`first_name`  \n<b><sup>required</sup></b>",
    "1-1": "string",
    "1-2": "First name, between 1 and 20 characters. Must start with a letter and can only contain letters, spaces, and apostrophes.",
    "2-0": "`middle_name`",
    "2-1": "string",
    "2-2": "Middle name, between 1 and 20 characters. Must start with a letter and can only contain letters, spaces, and apostrophes.",
    "3-0": "`last_name`  \n<b><sup>required</sup></b>",
    "3-1": "string",
    "3-2": "Last name, between 2 and 20 characters. Must start with a letter and can only contain letters, spaces, and apostrophes.",
    "4-0": "`addresses`  \n<b><sup>partially required</sup></b>",
    "4-1": "array",
    "4-2": "One or more official addresses, see Addresses array table above."
  },
  "cols": 3,
  "rows": 5,
  "align": [
    "left",
    "left",
    "left"
  ]
}
[/block]

## Example request

An example of a request to create a business resource is shown below.

```curl
curl --request POST \
     --url https://sandbox.bond.tech/api/v0.1/businesses \
     --header 'Accept: application/json' \
     --header 'Authorization: <YOUR_AUTHENTICATION>' \
     --header 'Content-Type: application/json' \
     --header 'Identity: <YOUR_IDENTITY>' \
     --data '
{
     "addresses": [
          {
               "address_type": "MAILING",
               "street": "345 California Ave.",
               "street2": "Suite 600",
               "city": "San Francisco",
               "state": "CA",
               "zip_code": "12345-1234",
               "country": "US",
               "is_primary": true
          }
     ],
     "beneficial_owners": [
    {
        "first_name": "James",
        "last_name": "Bond",
        "dob": "1970-12-12",
        "addresses": [
        {
            "address_type": "MAILING",
            "street": "345 California Ave.",
            "street2": "Suit 600",
            "city": "San Francisco",
            "state": "CA",
            "zip_code": "12345-1234",
            "country": "US",
            "is_primary": true
        }
        ]
    },
    {
        "first_name": "Le",
        "last_name": "Chiffre",
        "dob": "1980-04-04",
        "addresses": [
        {
            "address_type": "MAILING",
            "street": "345 California Ave.",
            "street2": "Suit 600",
            "city": "San Francisco",
            "state": "CA",
            "zip_code": "12345-1234",
            "country": "US",
            "is_primary": true
        }
        ]
    }
    ],
     "ein": "12-1234567",
     "legal_business_name": "John Doe Business Corporation",
     "dba_business_name": "John Doe & Co.",
     "business_type": "limited_liability_company",
     "phone": "+14157485052",
     "email": "info@business.com",
     "website": "www.business.com"
}
'
```
```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://sandbox.bond.tech/api/v0.1/businesses")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Accept"] = 'application/json'
request["Content-Type"] = 'application/json'
request["Identity"] = '<YOUR_IDENTITY>'
request["Authorization"] = 'YOUR-AUTHENTICATION'
request.body = "{\"addresses\":[{\"address_type\":\"MAILING\",\"street\":\"345 California Ave.\",\"street2\":\"Suite 600\",\"city\":\"San Francisco\",\"state\":\"CA\",\"zip_code\":\"12345-1234\",\"country\":\"US\",\"is_primary\":true}],\"ein\":\"12-1234567\",\"legal_business_name\":\"John Doe Business Corporation\",\"dba_business_name\":\"John's\",\"business_type\":\"limited_liability_company\",\"date_established\":\"2020-01-01T00:00:00.000Z\",\"phone\":\"+14157485052\",\"email\":\"info@business.com\",\"website\":\"www.business.com\"}"

response = http.request(request)
puts response.read_body
```
```javascript
const options = {
  method: 'POST',
  headers: {
    Accept: 'application/json',
    'Content-Type': 'application/json',
    Identity: '<YOUR_IDENTITY>',
    Authorization: 'YOUR-AUTHENTICATION'
  },
  body: JSON.stringify({
    addresses: [
      {
        address_type: 'MAILING',
        street: '345 California Ave.',
        street2: 'Suite 600',
        city: 'San Francisco',
        state: 'CA',
        zip_code: '12345-1234',
        country: 'US',
        is_primary: true
      }
    ],
    ein: '12-1234567',
    legal_business_name: 'John Doe Business Corporation',
    dba_business_name: 'John\'s',
    business_type: 'limited_liability_company',
    date_established: '2020-01-01T00:00:00.000Z',
    phone: '+14157485052',
    email: 'info@business.com',
    website: 'www.business.com'
  })
};

fetch('https://sandbox.bond.tech/api/v0.1/businesses', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
```
```python
import requests

url = "https://sandbox.bond.tech/api/v0.1/businesses"

payload = {
    "addresses": [
        {
            "address_type": "MAILING",
            "street": "345 California Ave.",
            "street2": "Suite 600",
            "city": "San Francisco",
            "state": "CA",
            "zip_code": "12345-1234",
            "country": "US",
            "is_primary": True
        }
    ],
    "ein": "12-1234567",
    "legal_business_name": "John Doe Business Corporation",
    "dba_business_name": "John's",
    "business_type": "limited_liability_company",
    "date_established": "2020-01-01T00:00:00.000Z",
    "phone": "+14157485052",
    "email": "info@business.com",
    "website": "www.business.com"
}
headers = {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Identity": "<YOUR_IDENTITY>",
    "Authorization": "YOUR-AUTHENTICATION"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
```
```csharp
var client = new RestClient("https://sandbox.bond.tech/api/v0.1/businesses");
var request = new RestRequest(Method.POST);
request.AddHeader("Accept", "application/json");
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Identity", "<YOUR_IDENTITY>");
request.AddHeader("Authorization", "YOUR-AUTHENTICATION");
request.AddParameter("application/json", "{\"addresses\":[{\"address_type\":\"MAILING\",\"street\":\"345 California Ave.\",\"street2\":\"Suite 600\",\"city\":\"San Francisco\",\"state\":\"CA\",\"zip_code\":\"12345-1234\",\"country\":\"US\",\"is_primary\":true}],\"ein\":\"12-1234567\",\"legal_business_name\":\"John Doe Business Corporation\",\"dba_business_name\":\"John's\",\"business_type\":\"limited_liability_company\",\"date_established\":\"2020-01-01T00:00:00.000Z\",\"phone\":\"+14157485052\",\"email\":\"info@business.com\",\"website\":\"www.business.com\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```
```java
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"addresses\":[{\"address_type\":\"MAILING\",\"street\":\"345 California Ave.\",\"street2\":\"Suite 600\",\"city\":\"San Francisco\",\"state\":\"CA\",\"zip_code\":\"12345-1234\",\"country\":\"US\",\"is_primary\":true}],\"ein\":\"12-1234567\",\"legal_business_name\":\"John Doe Business Corporation\",\"dba_business_name\":\"John's\",\"business_type\":\"limited_liability_company\",\"date_established\":\"2020-01-01T00:00:00.000Z\",\"phone\":\"+14157485052\",\"email\":\"info@business.com\",\"website\":\"www.business.com\"}");
Request request = new Request.Builder()
  .url("https://sandbox.bond.tech/api/v0.1/businesses")
  .post(body)
  .addHeader("Accept", "application/json")
  .addHeader("Content-Type", "application/json")
  .addHeader("Identity", "<YOUR_IDENTITY>")
  .addHeader("Authorization", "YOUR-AUTHENTICATION")
  .build();

Response response = client.newCall(request).execute();
```

The JSON response contains all the information related to the newly created business. It also returns the new `business_id` which is a unique Bond identifier for the business. The `business_id ` is used in subsequent API calls to [retrieve](https://docs.bond.tech/reference/get_businesses) and [update](https://docs.bond.tech/reference/patch_business) the business resource, initiate [KYB](https://docs.bond.tech/reference/post_kyb), and [issue cards](https://docs.bond.tech/reference/post_cards).

An example of a 201 response to a successful business creation request is shown below.

```json
{
    "date_created": "2022-12-20T13:51:14.711080+00:00",
    "addresses": [
        {
            "date_created": "2022-12-20T13:51:14.716179+00:00",
            "address_id": "6229590e-544a-4a76-842c-e3cf3d35b750",
            "address_type": "MAILING",
            "street": "345 California Ave.",
            "street2": "Suite 600",
            "city": "San Francisco",
            "state": "CA",
            "zip_code": "12345-1234",
            "country": "US",
            "is_primary": true
        }
    ],
    "beneficial_owners": [
        {
            "date_created": "2022-12-20T13:51:14.713557+00:00",
            "addresses": [
                {
                    "date_created": "2022-12-20T13:51:14.717783+00:00",
                    "address_id": "af9de206-8643-4d77-9fbb-7bdd2fe5f80f",
                    "address_type": "MAILING",
                    "street": "345 California Ave.",
                    "street2": "Suit 600",
                    "city": "San Francisco",
                    "state": "CA",
                    "zip_code": "12345-1234",
                    "country": "US",
                    "is_primary": true
                }
            ],
            "beneficial_owner_id": "2630058d-b9e4-4d73-a335-aba4d111b466",
            "first_name": "James",
            "middle_name": null,
            "last_name": "Bond",
            "dob": "1970-12-12",
            "ssn": null,
            "phone": null,
            "email": null
        },
        {
            "date_created": "2022-12-20T13:51:14.714869+00:00",
            "addresses": [
                {
                    "date_created": "2022-12-20T13:51:14.719143+00:00",
                    "address_id": "df4d21b1-0e55-4b05-899d-f3c68d3e328e",
                    "address_type": "MAILING",
                    "street": "345 California Ave.",
                    "street2": "Suit 600",
                    "city": "San Francisco",
                    "state": "CA",
                    "zip_code": "12345-1234",
                    "country": "US",
                    "is_primary": true
                }
            ],
            "beneficial_owner_id": "b4183240-ecb0-4568-9531-5078a35c752c",
            "first_name": "Le",
            "middle_name": null,
            "last_name": "Chiffre",
            "dob": "1980-04-04",
            "ssn": null,
            "phone": null,
            "email": null
        }
    ],
    "business_id": "bf8fad28-5a93-4340-b67b-d80df9e7234e",
    "ein": "12-1234567",
    "legal_business_name": "John Doe Business Corporation",
    "dba_business_name": "John Doe & Co.",
    "business_type": "limited_liability_company",
    "date_established": null,
    "phone": "+14157485052",
    "email": "info@business.com",
    "website": "www.business.com"
}
```

For a complete specification and interactive examples, see <a href="ref:post_businesses" target="_blank">Create a business</a> in the Bond API Reference.

## When missing a field

If you try to create a business with a missing field, you receive a JSON response similar to the  example shown below.

```json
{
'Message': {'legal_business_name': ['Missing data for required field.']},
 'Status': 400,
 'Code': 'create_business_schema',
 'Type': 'Request Error'
}
```