Many peoples still don't understand why the trade-in value become $0 after typing the promotion code. It's a trap by AT&T.
Verizon: they guarantee the minimum trade-in value even if you cancel the line earlier than 24 months. For example, if you cancel the line in Nov, 2016, Verizon will refund you $160 if the old phone had $160 trade-in value before typing the promotion code. They will refund $350 if it was $350, for example 128GB 6s+.
AT&T: they also guarantee the minimum trade-in value but it's $0.00. If you cancel the line in Nov, 2016, you will get $0.00. Congratulation! You just sold your shiny iPhone 6s plus 128GB for $0.00. If you cancel the line in Dec, 2016, you will get $27. You can't argue because you agreed on the $0.00 train-in agreement. AT&T will tell you "Sir! You should have read the fine prints before signing."
Class action lawsuits are coming...