Answers.Body: <p>I received a similar message when trying to create a 'Provides Membership to' relationship. If you go in the civicrm_membership table for that contact ID, you will see that the join_date, start_date and end_date fields are all NULL. Set them to the correct values and it should work.</p>
  
  <p>This does not answer how you got into the situation in the first place, but in several months of running our site I have only seen this once, so I have to believe it's an intermittent problem.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-04-26T16:56:08.177Z
Answers.LastActivityDate: 2017-04-26T16:56:08.177Z
Answers.UserDisplayName: R Dooman
Answers.Body: <p>Yes I have noticed this too for new memberships. Saving the membership after creation creates these fields, however initial signup does not. The membership status check relies on these fields to be present, to determine the membership status, but as they were never created at signup, it fails when performing a status check</p>
  
  <p>i.e.</p>
  
  <p>$result = civicrm_api3('Membership', 'create', array(
    'sequential' => 1,
    'membership_type_id' => "xxx",
    'contact_id' => xxx,
    'id' => xxx,
    'skipStatusCal' => 0, // Force status calculation
  ));</p>
  
  <pre><code>"error_message": "The membership cannot be saved because the status cannot be calculated for start_date: null end_date null join_date null as at 2017-03-16 20:07:53"
  </code></pre>
  
  <p>Running 4.7.16</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-03-16T09:40:00.677Z
Answers.LastActivityDate: 2017-03-16T09:40:00.677Z
Answers.UserDisplayName: Adam
Body: <p>Hello more established users of Civi.  I am currently having this happen after a member signs up for a membership.  I am very new to Civi and work at a small nonprofit (ie: we have no I.T. Dept).  Please help if you can walk me through the steps.</p>
  
  <p>"Sorry but we are not able to provide this at the moment.
  The membership cannot be saved because the status cannot be calculated for start_date: null end_date null join_date null as at 2016-12-07 12:01:48"</p>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2016-12-08T01:54:42.943Z
Comments.Text: you may need to provide more information such as your settings from /civicrm/admin/member/membershipStatus?reset=1
Comments.UserDisplayName: petednz - fuzion
Tags: <civicontribute><error><error-page>
Title: Error message given after membership confirmation screen
ThreadText: # Error message given after membership confirmation screen
  
  (Asked by: username_0 on 2016-12-07)
  
  Hello more established users of Civi. I am currently having this happen after a member signs up for a membership. I am very new to Civi and work at a small nonprofit (ie: we have no I.T. Dept). Please help if you can walk me through the steps.
  
  "Sorry but we are not able to provide this at the moment.
  The membership cannot be saved because the status cannot be calculated for start\_date: null end\_date null join\_date null as at 2016-12-07 12:01:48"
  
  **Tags:** civicontribute, error, error-page
  
  > **Comments:**
  > **username_1**: you may need to provide more information such as your settings from /civicrm/admin/member/membershipStatus?reset=1  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_2 on 2017-04-26. Score: 1
  
  I received a similar message when trying to create a 'Provides Membership to' relationship. If you go in the civicrm\_membership table for that contact ID, you will see that the join\_date, start\_date and end\_date fields are all NULL. Set them to the correct values and it should work.
  
  This does not answer how you got into the situation in the first place, but in several months of running our site I have only seen this once, so I have to believe it's an intermittent problem.
  
  
  ---
  
  ### Answer by username_3 on 2017-03-16. Score: 0
  
  Yes I have noticed this too for new memberships. Saving the membership after creation creates these fields, however initial signup does not. The membership status check relies on these fields to be present, to determine the membership status, but as they were never created at signup, it fails when performing a status check
  i.e.
  $result = civicrm_api3('Membership', 'create', array(
    'sequential' => 1,
    'membership_type_id' => "xxx",
    'contact_id' => xxx,
    'id' => xxx,
    'skipStatusCal' => 0, // Force status calculation
  ));
  "error_message": "The membership cannot be saved because the status cannot be calculated for start_date: null end_date null join_date null as at 2017-03-16 20:07:53"
  
  Running 4.7.16
  
  
  ---
  
  