A word to anyone doing an eTapestry API integration for a client who uses Blackbaud Merchant Services: you may have an eTapestry sandbox, but you don’t (and can’t) get a BMS sandbox account.
So how do developers test their API interactions? According to the BMS account rep I spoke to, they do it on the live system. With live credit cards. From the get-go.
For me, this means I have a slew of unit tests for account and session management that point to my sandbox account (that create and edit a bunch of fake accounts), but that my Gift, Recurring Gift, and integration tests must (carefully!) work on the live system.
…With my credit card. $1 transactions, y’all.
I hate to withhold the unit tests from future developers, so that’ll be a careful “deployment” into their SVN repo. Hopefully I won’t miss a reference.