If you and I do business 100 times a day, we could either send 100 transactions through the system and incur 100 transaction fees, or do a little bit of accounting and only incur one. Using an API / trusted party like coinbase to do the accounting doesn't undermine bitcoin in any way, as it would still be needed for the end of day reconciliation (moreover, the accounting wouldn't make any sense without it.)