Adyen POS Object Creation is a void method.
Calls and callbacks follow this flow:
- Invoke a method to perform a specific action.
- Set a timer to wait for an application-internal flag.
- In the callback pass the objects and results to internal objects, set the application-internal wait-flag and proceed to the end of the callback handler.
- Proceed with the main flow - handle and process the information obtained in the callback.
For methods from the COM extension for Windows that take arguments, carefully verify these arguments to avoid runtime errors. There is no option to validate the passed arguments. The same applies to the callback arguments, the COM extension for Windows can not validate these for you.
Callback Parameter Order
The C library defines the order, but does not enforce it. As an example the create tender callback:
CreateTenderCB(objTender, intPedResult, intPspResult, intLibResult, strErrorMessage)
CreateTender callback returns the tender object that should be used to execute subsequent tender-actions.
strErrorMessage can be used directly in logging or feedback.
Use the provided helper methods to evaluate the other arguments.
Parameters are accessible through the interface in any standard coding tool. If necessary, you can observe the IDL provided with the library using an OLE viewer.
Actionable vs. Informational Callbacks
Several callbacks occur during the processing of a tender. There are two types of callback: Actionable and Informational.
- Actionable callbacks require action to complete the transaction.
- Informational callbacks can be logged but are not required to complete a transaction.
These callbacks are asynchronous responses to a synchronous call:
- Library initialization callback
- Register POS callback
- Register PED callback
- Create tender callback
- Cancel or Refund callback
- Show Screen callback
- TxStoreReport callback
- Library exit callback
These callbacks are related to transactions, and will require actions to be performed:
These callbacks are related to transactions, and will require no actions to be performed: