My understanding is that the Ingenico terminals can run custom code they call 'plug-ins', but they have to be built by Ingenico themselves. You can, however, write custom code on a machine that talks to the terminal - for example they provide a tool called 'POSgate'. I don't believe this is available to the general public, however.