AccountingSyncAmountInfo.currency_ref is required to sync transaction in original currency (Transaction ID: {transaction_id} )
Option A — Provide a valid Intacct currency on the transaction
- Ensure the Web Services user can read currencies in Intacct.
- In Intacct: Company > Admin > Roles > [Ramp W.S. role] > Permissions
- Grant Company → Currencies (view) and Company → Exchange rates (view) .
- Confirm the WS user has that role and is Active and Web Services only .
- Make sure USD (and any other used currencies) are active in Intacct:
- Company > Setup > Currencies: USD should be Active.
- Refresh accounting fields in Ramp:
- Ramp > Accounting > Settings > Accounting Fields > Refresh
- (This pulls the latest currencies and exchange-rate metadata needed.)
- Retry the sync from the failed transaction in Ramp .
- After this, Ramp will populate currency_ref (for example, "USD") so the transaction posts in its original currency cleanly.
Option B — Switch to “Issuing currency”
- In Ramp , go to Accounting → Settings → Sync settings and set Sync currency for card transactions to Issuing currency .
- Then omit currency_ref and retry the sync.
Option C — Keep “Original currency” syncing
- Include amount_info.currency_ref with the ISO code of the charge’s currency, for example:
- "currency_ref": "USD" for a USD charge
- "currency_ref": "EUR" for a Euro charge
- If the original currency isn’t USD, confirm that currency is enabled and available for the Sage entity you’re syncing to.
- Retry the sync.
Why this is required
For Sage, card transactions can carry both the functional (GL) currency and the original transaction currency. If you choose to sync in original currency, the transaction’s currency must be explicit and supported in Sage for that entity. Otherwise, Ramp will block it with a validation error.