Square is focused on in person card transactions whereas Stripe is focused primarily on online transactions and supports multiple types of payment method (CC, ACH, ApplePay, Bitcoin, etc). Stripe also handles outgoing payments (marketplace, top-ups, etc) and is just now getting into in person transactions.