Examples

POST /v1/07cb7e64-0bee-4b1c-937f-83aeeef6a343/move_ins/process_move_in
{
  "move_in": {
    "accepted_documents": [
      {
        "session_document_id": "512a2e25-8041-47c8-9725-a95c4c8f2573"
      }
    ],
    "discount_plans": [
      {
        "discount_plan_id": "2f9ad069-986b-4df6-869a-b66aee14ab33"
      }
    ],
    "gate_access_code": "56763",
    "insurance_id": "0c66b595-cc52-4957-85ab-401cedd9fca6",
    "services": [
      {
        "service_id": "8d2dcd5e-439d-49e7-8074-71010c1a85e6"
      },
      {
        "service_id": "06481bcd-9600-457c-89ea-6d8406c585ef"
      }
    ],
    "session_id": "4a15b92a519a36e7f49450fdb9aa13e2",
    "tenant_id": "a7bdcd49-7b2b-41ac-9f46-8686cca08611",
    "unit_id": "f7db4988-8cf5-493a-87b5-e06630ff71af"
  },
  "alternate_contact": {
    "first_name": "Jane",
    "last_name": "Doe",
    "description": "Alternate",
    "email": "janedoe@email.com",
    "address_attributes": {
      "address1": "123 main",
      "address2": "",
      "city": "Somecity",
      "postal": "12345",
      "state": "AL"
    }
  },
  "payment_method": {
    "billing_address_attributes": {
      "address1": "123 Main",
      "city": "Somecity",
      "country": "US",
      "postal": "12345",
      "state": "AL"
    },
    "card_number": "00000000",
    "card_type": "visa",
    "expiration_date": "10/24",
    "first_name": "John",
    "kind": "credit_card",
    "last_name": "Doe",
    "security_code": "123"
  }
}
200
{
  "move_in_unit_event": {
    "id": "fb81718a-7a35-404a-acfa-ddc3d6caa814",
    "invoice_period": "monthly",
    "unit_name": "U117",
    "unit_id": "f7db4988-8cf5-493a-87b5-e06630ff71af",
    "unit_combination_lock_number": null,
    "tenant_name": "Tomeka128 Legros",
    "tenant_id": "a7bdcd49-7b2b-41ac-9f46-8686cca08611",
    "ledger_id": "9252982d-9e35-48c7-958a-ce95b8bf3393",
    "esign_url": null,
    "rate_type": "standard_rate",
    "channel_rate_id": null,
    "discount_plan_ids": [],
    "storage_items": null,
    "storing_vehicle": null,
    "invoice_line_items": [
      {
        "id": "2414e93d-0c60-47a3-a367-323c4604c715",
        "description": "Rent Unit U117 - 6x5x3",
        "quantity": 1,
        "prorated": true,
        "discount_amount": null,
        "single_item_price": 226.65,
        "subtotal": 226.65,
        "tax_total": 21.31,
        "total": 247.96,
        "current_product_code": "Unit #U117",
        "full_description": "Rent Unit U117 - 6x5x3 (8/20/2020 - 8/31/2020) - Prorated",
        "children_line_items": [
          {
            "id": "1ab45d04-a8ea-4be0-a9c6-d50635a829fa",
            "description": "Xercor Insurance Services LLC - $38,000.00",
            "quantity": 1,
            "prorated": false,
            "discount_amount": null,
            "single_item_price": 25.33,
            "subtotal": 25.33,
            "tax_total": 0,
            "total": 25.33,
            "current_product_code": "XERCOR-1",
            "full_description": "Xercor Insurance Services LLC - $38,000.00 (8/20/2020 - 8/31/2020)",
            "children_line_items": []
          },
          {
            "id": "854b77ed-019e-42a0-9bd2-8f19ad9564cb",
            "description": "Some service item",
            "quantity": 1,
            "prorated": true,
            "discount_amount": null,
            "single_item_price": 6.41,
            "subtotal": 6.41,
            "tax_total": 0,
            "total": 6.41,
            "current_product_code": "S-14",
            "full_description": "Some service item (8/20/2020 - 8/31/2020) - Prorated",
            "children_line_items": []
          },
          {
            "id": "1c09a8f7-6f22-4a85-a998-8f309e909dc5",
            "description": "Some other service item",
            "quantity": 1,
            "prorated": true,
            "discount_amount": null,
            "single_item_price": 7.44,
            "subtotal": 7.44,
            "tax_total": 0,
            "total": 7.44,
            "current_product_code": "S-15",
            "full_description": "Some other service item (8/20/2020 - 8/31/2020) - Prorated",
            "children_line_items": []
          }
        ]
      },
      {
        "id": "1ab45d04-a8ea-4be0-a9c6-d50635a829fa",
        "description": "Xercor Insurance Services LLC - $38,000.00",
        "quantity": 1,
        "prorated": false,
        "discount_amount": null,
        "single_item_price": 25.33,
        "subtotal": 25.33,
        "tax_total": 0,
        "total": 25.33,
        "current_product_code": "XERCOR-1",
        "full_description": "Xercor Insurance Services LLC - $38,000.00 (8/20/2020 - 8/31/2020)",
        "children_line_items": []
      },
      {
        "id": "854b77ed-019e-42a0-9bd2-8f19ad9564cb",
        "description": "Some service item",
        "quantity": 1,
        "prorated": true,
        "discount_amount": null,
        "single_item_price": 6.41,
        "subtotal": 6.41,
        "tax_total": 0,
        "total": 6.41,
        "current_product_code": "S-14",
        "full_description": "Some service item (8/20/2020 - 8/31/2020) - Prorated",
        "children_line_items": []
      },
      {
        "id": "1c09a8f7-6f22-4a85-a998-8f309e909dc5",
        "description": "Some other service item",
        "quantity": 1,
        "prorated": true,
        "discount_amount": null,
        "single_item_price": 7.44,
        "subtotal": 7.44,
        "tax_total": 0,
        "total": 7.44,
        "current_product_code": "S-15",
        "full_description": "Some other service item (8/20/2020 - 8/31/2020) - Prorated",
        "children_line_items": []
      }
    ],
    "successful_payment_events": [
      {
        "id": "ee29e066-c0ae-4903-98f8-952c14ac2123",
        "amount": 287.14,
        "success": true,
        "date": "2020-08-20T08:43:23.711-10:00",
        "payment_method": {
          "id": "6075a14d-f77d-49a7-aed8-c5bf983f86b1",
          "kind": "credit_card",
          "first_name": "John",
          "last_name": "Doe",
          "reuseable": false,
          "card_number": "****0000",
          "card_type": "visa",
          "expiration_date": "10/24",
          "billing_address": {
            "id": "61cd9826-2747-4e4b-a4c7-f94a30d12339",
            "address1": "123 Main",
            "address2": null,
            "city": "Somecity",
            "state": "AL",
            "postal": "12345",
            "country": "US",
            "full_address": "123 Main, Somecity, AL 12345",
            "latitude": null,
            "longitude": null,
            "time_zone_id": "America/Chicago",
            "time_zone_offset": "-05:00",
            "invalid_data": false,
            "label": "Home"
          }
        }
      }
    ]
  },
  "meta": {
    "status_code": 200,
    "status_message": "OK",
    "status_cat": "https://http.cat/200",
    "request_method": "POST",
    "request_id": null,
    "parameters": {
      "move_in": {
        "accepted_documents": [
          {
            "session_document_id": "512a2e25-8041-47c8-9725-a95c4c8f2573"
          }
        ],
        "discount_plans": [
          {
            "discount_plan_id": "2f9ad069-986b-4df6-869a-b66aee14ab33"
          }
        ],
        "gate_access_code": "56763",
        "insurance_id": "0c66b595-cc52-4957-85ab-401cedd9fca6",
        "services": [
          {
            "service_id": "8d2dcd5e-439d-49e7-8074-71010c1a85e6"
          },
          {
            "service_id": "06481bcd-9600-457c-89ea-6d8406c585ef"
          }
        ],
        "session_id": "4a15b92a519a36e7f49450fdb9aa13e2",
        "tenant_id": "a7bdcd49-7b2b-41ac-9f46-8686cca08611",
        "unit_id": "f7db4988-8cf5-493a-87b5-e06630ff71af"
      },
      "payment_method": {
        "billing_address_attributes": {
          "address1": "123 Main",
          "city": "Somecity",
          "country": "US",
          "postal": "12345",
          "state": "AL"
        },
        "card_number": "[FILTERED]",
        "card_type": "visa",
        "expiration_date": "10/24",
        "first_name": "John",
        "kind": "credit_card",
        "last_name": "Doe",
        "security_code": "[FILTERED]"
      },
      "facility_id": "07cb7e64-0bee-4b1c-937f-83aeeef6a343"
    }
  }
}

Params

Param name Description
move_in
required

Value: Must be a Hash
move_in[should_generate_documents]
optional

Defaults to true if not passed. Determines whether documents will be generated along with the review cost call or not. Must be passed as true at least once before the move-in is processed.


Value: Must be one of: <code>true</code>, <code>false</code>.
move_in[lead_id]
optional

Provide an existing lead id if one exists


Value: Must be a String
move_in[unit_id]
required

The desired unit ID


Value: Must be a String
move_in[tenant_id]
optional

A tenant record to associate the move-in with. Required if tenant hash or lead_id are not given.


Value: Must be a String
move_in[tenant]
optional

Value: Must be a Hash
move_in[tenant][first_name]
optional

Value: Must be a String
move_in[tenant][account_number]
optional

Value: Must be a String
move_in[tenant][middle_initial]
optional

Value: Must be a String
move_in[tenant][last_name]
optional

Value: Must be a String
move_in[tenant][drivers_license_number]
optional

Value: Must be a String
move_in[tenant][drivers_license_state]
optional

Value: Must be a String
move_in[tenant][vehicle_license_plate_number]
optional

Value: Must be a String
move_in[tenant][vehicle_license_state]
optional

Value: Must be a String
move_in[tenant][vehicle_description]
optional

Value: Must be a String
move_in[tenant][email]
optional

Value: Must be a String
move_in[tenant][username]
optional

Value: Must be a String
move_in[tenant][password]
optional

Value: Must be a String
move_in[tenant][tax_exempt]
optional

Is the tenant tax exempt?


Value: Must be one of: <code>true</code>, <code>false</code>.
move_in[tenant][is_military]
optional

Is the tenant military?


Value: Must be one of: <code>true</code>, <code>false</code>.
move_in[tenant][is_business]
optional

Is the tenant a business?


Value: Must be one of: <code>true</code>, <code>false</code>.
move_in[tenant][business_name]
optional

Value: Must be a String
move_in[tenant][title]
optional

Value: Must be a String
move_in[tenant][decline_alternate_contact]
optional

Whether or not the tenant declined to provide alternate contact information


Value: Must be one of: <code>true</code>, <code>false</code>.
move_in[tenant][military_information]
optional

A collection of military information (if is_military is true).


Value: Must be a Hash
move_in[tenant][military_information][retired_military]
optional

Is the tenant retired military?


Value: Must be one of: <code>true</code>, <code>false</code>.
move_in[tenant][military_information][no_agent_given]
optional

Is agent information provided?


Value: Must be one of: <code>true</code>, <code>false</code>.
move_in[tenant][military_information][date_entered_service]
optional

Date entered service, Format: YYYY-MM-DD


Value: Must be a Date
move_in[tenant][military_information][military_id]
optional

Value: Must be a String
move_in[tenant][military_information][end_of_active_service_date]
optional

End date of active service, Format: YYYY-MM-DD


Value: Must be a Date
move_in[tenant][military_information][place_of_birth]
optional

Value: Must be a String
move_in[tenant][military_information][last_4_of_ssn]
optional

Must be a 4 digit number


Value: Must be a String
move_in[tenant][military_information][military_email_address]
optional

Must be a valid email address


Value: Must be a String
move_in[tenant][military_information][military_rank]
optional

Value: Must be a String
move_in[tenant][military_information][current_duty_location]
optional

Value: Must be a String
move_in[tenant][military_information][branch_of_service]
optional

Must be Air Force, Army, Coast Guard, Marines, Navy, National Guard, or Other


Value: Must be a String
move_in[tenant][military_information][military_unit]
optional

Value: Must be a String
move_in[tenant][military_information][squadron]
optional

Value: Must be a String
move_in[tenant][military_information][division]
optional

Value: Must be a String
move_in[tenant][military_information][type_of_service]
optional

Must be Active Component or Veteran


Value: Must be a String
move_in[tenant][military_information][agent_first_name]
optional

Value: Must be a String
move_in[tenant][military_information][agent_last_name]
optional

Value: Must be a String
move_in[tenant][military_information][agent_email_address]
optional

Must be a valid email address


Value: Must be a String
move_in[tenant][military_information][agent_phone_number]
optional

Must be a valid phone number


Value: Must be a String
move_in[tenant][military_information][agent_address]
optional

Value: Must be a String
move_in[tenant][military_information][agent_city]
optional

Value: Must be a String
move_in[tenant][military_information][agent_state]
optional

Must be a valid state abbreviation


Value: Must be a String
move_in[tenant][military_information][agent_postal_code]
optional

Must be a valid US postal code


Value: Must be a String
move_in[tenant][military_information][officer_first_name]
optional

Value: Must be a String
move_in[tenant][military_information][officer_last_name]
optional

Value: Must be a String
move_in[tenant][military_information][officer_phone_number]
optional

Must be a valid phone number


Value: Must be a String
move_in[tenant][password_recovery_questions_attributes]
optional

Password recovery questions


Value: Must be an Array of nested elements
move_in[tenant][password_recovery_questions_attributes][question]
required

Value: Must be a String
move_in[tenant][password_recovery_questions_attributes][answer]
required

Value: Must be a String
move_in[tenant][phone_numbers_attributes]
required

A collection of phone numbers.


Value: Must be an Array of nested elements
move_in[tenant][phone_numbers_attributes][number]
optional

Phone number


Value: Must be a String
move_in[tenant][phone_numbers_attributes][extension]
required

Phone number extension


Value: Must be a String
move_in[tenant][phone_numbers_attributes][label]
optional

A label for what the phone number is, such as Home, Work, Mobile, etc.


Value: Must be a String
move_in[tenant][phone_numbers_attributes][primary]
optional

Flag that indicates if this is the primary phone number of the tenant


Value: Must be a String
move_in[tenant][phone_numbers_attributes][sms_opt_in]
optional

Opt the tenant in to SMS (if applicable). Requires a "Mobile" label for SMS to work correctly.


Value: Must be one of: <code>true</code>, <code>false</code>.
move_in[tenant][mailing_address_attributes]
required

A collection of addresses.


Value: Must be a Hash
move_in[tenant][mailing_address_attributes][address1]
required

Value: Must be a String
move_in[tenant][mailing_address_attributes][address2]
optional

Value: Must be a String
move_in[tenant][mailing_address_attributes][city]
required

Value: Must be a String
move_in[tenant][mailing_address_attributes][state]
required

Value: Must be a String
move_in[tenant][mailing_address_attributes][postal]
required

Value: Must be a String
move_in[tenant][contacts_attributes]
optional

A collection of contacts.


Value: Must be an Array of nested elements
move_in[tenant][contacts_attributes][first_name]
optional

Value: Must be a String
move_in[tenant][contacts_attributes][middle_initial]
optional

Value: Must be a String
move_in[tenant][contacts_attributes][last_name]
optional

Value: Must be a String
move_in[tenant][contacts_attributes][email]
optional

Value: Must be a String
move_in[tenant][contacts_attributes][description]
required

Contact description


Value: Must be a String
move_in[tenant][contacts_attributes][primary]
optional

Flag that indicates if this is the primary contact of the tenant


Value: Must be a String
move_in[tenant][contacts_attributes][phone_numbers_attributes]
optional

A collection of phone numbers.


Value: Must be an Array of nested elements
move_in[tenant][contacts_attributes][phone_numbers_attributes][number]
optional

Phone number


Value: Must be a String
move_in[tenant][contacts_attributes][phone_numbers_attributes][extension]
optional

Phone number extension


Value: Must be a String
move_in[tenant][contacts_attributes][phone_numbers_attributes][label]
optional

A label for what the phone number is, such as Home, Work, Mobile, etc.


Value: Must be a String
move_in[tenant][contacts_attributes][phone_numbers_attributes][primary]
optional

Flag that specifies if this is the primary phone number of the contact


Value: Must be a String
move_in[tenant][contacts_attributes][address_attributes]
optional

A collection of addresses.


Value: Must be a Hash
move_in[tenant][contacts_attributes][address_attributes][address1]
optional

Value: Must be a String
move_in[tenant][contacts_attributes][address_attributes][address2]
optional

Value: Must be a String
move_in[tenant][contacts_attributes][address_attributes][city]
optional

Value: Must be a String
move_in[tenant][contacts_attributes][address_attributes][state]
optional

Value: Must be a String
move_in[tenant][contacts_attributes][address_attributes][postal]
optional

Value: Must be a String
move_in[gate_access_code]
optional

The desired gate access code for the unit, required if tenant provided does not have a gate access code from a previous ledger


Value: Must be a String
move_in[invoice_period]
optional

Value: Must be one of: <code>monthly</code>, <code>anniversary</code>.
move_in[insurance_id]
optional

Desired insurance ID


Value: Must be a String
move_in[services]
optional

A collection of service ids


Value: Must be an Array of nested elements
move_in[services][service_id]
optional

Value: Must be a String
move_in[insurance_goods_value]
optional

Estimated value of goods stored for insurance purpose. Must be in range 1-5000 if provided.


Value: Must be a Integer
move_in[invoiceable_items]
optional

A collection of additional invoiceable items purchased with move-in


Value: Must be an Array of nested elements
move_in[invoiceable_items][id]
optional

ID of invoiceable item purchased


Value: Must be a String
move_in[invoiceable_items][quantity]
optional

Quantity of invoiceable items purchased


Value: Must be a Integer
move_in[discount_plans]
optional

A collection of discount plan ids


Value: Must be an Array of nested elements
move_in[discount_plans][discount_plan_id]
optional

Value: Must be a String
move_in[tenant_signature_request_id]
optional

Signature request id


Value: Must be a String
move_in[lien_holders]
optional

A collection of lien holders


Value: Must be an Array of nested elements
move_in[lien_holders][name]
optional

Name of the lien holder


Value: Must be a String
move_in[lien_holders][address_attributes]
optional

The address of the alternate contact


Value: Must be a Hash
move_in[lien_holders][address_attributes][address1]
optional

Value: Must be a String
move_in[lien_holders][address_attributes][address2]
optional

Value: Must be a String
move_in[lien_holders][address_attributes][city]
optional

Value: Must be a String
move_in[lien_holders][address_attributes][state]
optional

Value: Must be a String
move_in[lien_holders][address_attributes][postal]
optional

Value: Must be a String
move_in[session_id]
optional

Provide the session ID returned from review_cost to use the lease reserved lease number.


Value: Must be a String
move_in[accepted_documents]
optional

A collection of documents that were accepted, only required if passing a session_id.


Value: Must be an Array of nested elements
move_in[accepted_documents][session_document_id]
optional

Value: Must be a String
payment_method
required

Can accept a paymentmethodid, or fields for CC or ACH payments


Value: Must be a Hash
payment_method[payment_method_id]
optional

If you want to use an existing payment method, pass in the id


Value: Must be a String
payment_method[first_name]
optional

Required if not using an existing payment method


Value: Must be a String
payment_method[last_name]
optional

Required if not using an existing payment method


Value: Must be a String
payment_method[kind]
optional

Required if not using an existing payment method


Value: Must be one of: <code>ach</code>, <code>credit_card</code>, <code>check</code>, <code>cash</code>, <code>card_swipe</code>.
payment_method[reuseable]
optional

Value: Must be one of: <code>true</code>, <code>false</code>.
payment_method[magnetic_track]
optional

Required if using a card swipe


Value: Must be a String
payment_method[card_number]
optional

Required if using a credit card


Value: Must be a String
payment_method[card_type]
optional

Required if using a credit card


Value: Must be one of: <code>visa</code>, <code>mastercard</code>, <code>american_express</code>, <code>diners</code>, <code>discover</code>, <code>jcb</code>.
payment_method[security_code]
optional

Required if using a credit card


Value: Must be a String
payment_method[expiration_date]
optional

Required if using a credit card. Format: MM/YY


Value: Must be a String
payment_method[account_number]
optional

Required if using ACH


Value: Must be a String
payment_method[account_number_confirmation]
optional

Required if using ACH


Value: Must be a String
payment_method[account_type]
optional

Required if using ACH


Value: Must be a String
payment_method[bank_name]
optional

Required if using ACH


Value: Must be a String
payment_method[routing_number]
optional

Required if using ACH


Value: Must be a String
payment_method[billing_address_attributes]
optional

Required if not using an existing payment method


Value: Must be a Hash
payment_method[billing_address_attributes][company]
optional

Value: Must be a String
payment_method[billing_address_attributes][address1]
optional

Value: Must be a String
payment_method[billing_address_attributes][address2]
optional

Value: Must be a String
payment_method[billing_address_attributes][city]
optional

Value: Must be a String
payment_method[billing_address_attributes][postal]
optional

Value: Must be a String
payment_method[billing_address_attributes][state]
optional

Value: Must be a String
payment_method[check_number]
optional

Required if using Check


Value: Must be a String
payment_method[name_on_check]
optional

Required if using Check


Value: Must be a String
payment_method[check_amount]
optional

Required if using Check


Value: Must be a String
payment_method[reference_number]
optional

Required if using Money Order


Value: Must be a String
payment_method[money_order_amount]
optional

Required if using Money Order


Value: Must be a String
payment_method[amount_tendered]
optional

Required if using Cash


Value: Must be a String
payment_method[autopay_enabled]
optional

Enable autopay with this payment method (reuseable must be true). An autopay_day must also be set


Value: Must be one of: <code>true</code>, <code>false</code>.
payment_method[autopay_day]
optional

When autopay_enabled is set to 'true' you must specify an autopay day of the month between 1 and 31


Value: Must be a Integer
alternate_contact
optional

Contact to be used as the alternate contact for the tenant


Value: Must be a Hash
alternate_contact[id]
optional

The ID of the contact that will be used for the alternate contact


Value: Must be a String
alternate_contact[description]
required

Contact description


Value: Must be a String
alternate_contact[declined]
optional

Decline to use an alternate contact for the tenant


Value: Must be one of: <code>true</code>, <code>false</code>.
alternate_contact[first_name]
optional

Value: Must be a String
alternate_contact[middle_initial]
optional

Value: Must be a String
alternate_contact[last_name]
optional

Value: Must be a String
alternate_contact[email]
optional

Value: Must be a String
alternate_contact[phone_numbers_attributes]
optional

A collection of phone numbers.


Value: Must be an Array of nested elements
alternate_contact[phone_numbers_attributes][number]
optional

Phone number


Value: Must be a String
alternate_contact[phone_numbers_attributes][extension]
optional

Phone number extension


Value: Must be a String
alternate_contact[phone_numbers_attributes][label]
optional

A label for what the phone number is, such as Home, Work, Mobile, etc.


Value: Must be a String
alternate_contact[phone_numbers_attributes][primary]
optional

Flag that specifies if this is the primary phone number of the contact


Value: Must be a String
alternate_contact[address_attributes]
optional

The address of the alternate contact


Value: Must be a Hash
alternate_contact[address_attributes][address1]
optional

Value: Must be a String
alternate_contact[address_attributes][address2]
optional

Value: Must be a String
alternate_contact[address_attributes][city]
optional

Value: Must be a String
alternate_contact[address_attributes][state]
optional

Value: Must be a String
alternate_contact[address_attributes][postal]
optional

Value: Must be a String