What I'm posting today is hopefully of use to someone out there who runs into this same problem. Admittedly it's rare but it took me a while to find the answer.

The Issue

I was attempting to import General Ledger transactions using eConnect via SmartConnect.  My client had multi-currency enabled and there was a default currency in place already (CAD). When users manually key in a journal entry, the currency ID defaults to CAD (in this customer's case), they don't have to select a currency.

When I was running the integration, the transactions were successfully created but the Currency ID field was blank. Since it's a required field, that meant manually updating them each time - not a long-term solution.

The Resolution

Thanks to Sivakumar, for the resolution.  It turns out that eConnect for whatever reason cannot check to see if Multicurrency is enabled, therefore it checks the CM00100 (Chequebook Master) table instead, to see if MC is enabled.  Strange but true.  What that meant was for it to determine what it needs to, at least one chequebook must be configured.

In this client's case, we were importing transactions for a holding company where they don't use A/P or A/R at all, so they had never set up a chequebook for it.  In the past, pre-SmartConnect, Integration Manager had imported things just fine but it was slow and time for something more robust - eConnect and SmartConnect were the answer (or hardcoding the currency into the integration which I don't like to do if the client uses multicurrency).

So we simply configured a dummy chequebook for this holding company, and from then on, the transactions were imported with a proper default currency ID!

The alternative would have been to hard-code the currency ID but in this case, it was nice to find the actual cause and fix it, instead of hard-coding a value that could change.