I finally finished the InfusionSoft integration with AbleCommerce that I’ve been working on.
The initial steps to push a contact are pretty simple.  But most times, it not enough to just push contact info.  You want to use tags, you want do email marketing, you want to set specific defaults.  But these aren’t set by the basic CreateContact API provided by InfusionSoft.
Thus I wrote my own optIn routine so emails imported with the API aren’t marked as ‘not marketable’.  Now they come in as ‘Unconfirmed’ like they should.  AbleCommerce doesn’t really have a flag for this.
And I wrote a routine to pull down all tags defined in InfusionSoft so they can be assigned to specific trigger actions via a backend configuration page.  This turned out excellent and minimizes future programming changes.  Client just needs to change the dropdown and *poof* new customers are automatically assigned to the designated InfusionSoft tag.
Overall, a fun project.  I like working with API interfaces.  Especially ones that are well documented like the InfusionSoft API.