> For the complete documentation index, see [llms.txt](https://sandbox-docs.verifone.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sandbox-docs.verifone.com/adk-5.0-programmers-guide/readme/namespaces/namespacevficpl.md).

# vficpl

[Data Structures](#nested-classes) | [Enumerations](#enum-members) | [Functions](#func-members)

|                 |                                                                                                                                                                                                                                                                                                                                                       |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Data Structures |                                                                                                                                                                                                                                                                                                                                                       |
| struct          | [AltPaymentData](#structvficpl_1_1_alt_payment_data)                                                                                                                                                                                                                                                                                                  |
|                 | <p>Represents Alt Payment Data object on CP-Payment communication. <a href="#structvficpl_1_1_alt_payment_data">More...</a><br></p>                                                                                                                                                                                                                   |
| class           | [Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md)                                                                                                                                                                                                                                                |
| class           | [Barcode](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_barcode.md)                                                                                                                                                                                                                                        |
|                 | <p>Represents <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_barcode.md">Barcode</a> object on CP-Payment communication. <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_barcode.md#details">More...</a><br></p>                                 |
| struct          | [CpBaseFnImp](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_base_fn_imp.md)                                                                                                                                                                                                                            |
| struct          | [CpBaseFnImp< R >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_base_fn_imp_3_01_r_01_4.md)                                                                                                                                                                                                           |
| struct          | [CpBaseFnImp< R, A1 >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_base_fn_imp_3_01_r_00_01_a1_01_4.md)                                                                                                                                                                                              |
| struct          | [CpBaseFnImp< R, A1, A2 >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_base_fn_imp_3_01_r_00_01_a1_00_01_a2_01_4.md)                                                                                                                                                                                 |
| struct          | [CpFreeFnImp](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_free_fn_imp.md)                                                                                                                                                                                                                            |
| struct          | [CpFreeFnImp< F, R >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_free_fn_imp_3_01_f_00_01_r_01_4.md)                                                                                                                                                                                                |
| struct          | [CpFreeFnImp< F, R, A1 >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_free_fn_imp_3_01_f_00_01_r_00_01_a1_01_4.md)                                                                                                                                                                                   |
| struct          | [CpFreeFnImp< F, R, A1, A2 >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_free_fn_imp_3_01_f_00_01_r_00_01_a1_00_01_a2_01_4.md)                                                                                                                                                                      |
| class           | [CpFunction](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_cp_function.md)                                                                                                                                                                                                                                 |
| class           | [CpFunction< R >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_cp_function_3_01_r_01_4.md)                                                                                                                                                                                                                |
| class           | [CpFunction< R, A1 >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_cp_function_3_01_r_00_01_a1_01_4.md)                                                                                                                                                                                                   |
| class           | [CpFunction< R, A1, A2 >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_cp_function_3_01_r_00_01_a1_00_01_a2_01_4.md)                                                                                                                                                                                      |
| struct          | [CpMemberFnImp](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_member_fn_imp.md)                                                                                                                                                                                                                        |
| struct          | [CpMemberFnImp< M, T, R >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_member_fn_imp_3_01_m_00_01_t_00_01_r_01_4.md)                                                                                                                                                                                 |
| struct          | [CpMemberFnImp< M, T, R, A1 >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_member_fn_imp_3_01_m_00_01_t_00_01_r_00_01_a1_01_4.md)                                                                                                                                                                    |
| struct          | [CpMemberFnImp< M, T, R, A1, A2 >](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_cp_member_fn_imp_3_01_m_00_01_t_00_01_r_00_01_a1_00_01_a2_01_4.md)                                                                                                                                                       |
| struct          | [CustomerIdentification](#structvficpl_1_1_customer_identification)                                                                                                                                                                                                                                                                                   |
|                 | <p>Customer identification to be used equivalent to a card pre-dip / pre-swipe. <a href="#structvficpl_1_1_customer_identification">More...</a><br></p>                                                                                                                                                                                               |
| class           | [Donation](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_donation.md)                                                                                                                                                                                                                                      |
|                 | <p>Represents the <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_donation.md">Donation</a> object on CP-Payment communication. <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_donation.md#details">More...</a><br></p>                          |
| class           | [EnvironmentDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_environment_data_provider.md)                                                                                                                                                                                                      |
| struct          | [InvokeRequest](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_request.md)                                                                                                                                                                                                                          |
| struct          | [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md)                                                                                                                                                                                                                            |
|                 | <p>Trigger invocation result. <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md#details">More...</a><br></p>                                                                                                                                                                        |
| interface       | [ITransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_i_transaction_data_provider.md)                                                                                                                                                                                                   |
| class           | [LoyaltyIdentifier](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_loyalty_identifier.md)                                                                                                                                                                                                                   |
|                 | <p>Represents <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_loyalty_identifier.md">LoyaltyIdentifier</a> object on CP-Payment communication. <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_loyalty_identifier.md#details">More...</a><br></p> |
| class           | [Merchandise](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_merchandise.md)                                                                                                                                                                                                                                |
|                 | <p>Represents the <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_merchandise.md">Merchandise</a> object on CP-Payment communication. <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_merchandise.md#details">More...</a><br></p>                 |
| class           | [Offer](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_offer.md)                                                                                                                                                                                                                                            |
|                 | <p>Represents the <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_offer.md">Offer</a> object on CP-Payment communication. <a href="https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_offer.md#details">More...</a><br></p>                                   |
| struct          | [PaymentAmountAdjustment](#structvficpl_1_1_payment_amount_adjustment)                                                                                                                                                                                                                                                                                |
|                 | <p>Payment amount adjustment Fx data. <a href="#structvficpl_1_1_payment_amount_adjustment">More...</a><br></p>                                                                                                                                                                                                                                       |
| struct          | [TechAltPaymentData](#structvficpl_1_1_tech_alt_payment_data)                                                                                                                                                                                                                                                                                         |
|                 | <p>Represents Alt Payment trigger response. <a href="#structvficpl_1_1_tech_alt_payment_data">More...</a><br></p>                                                                                                                                                                                                                                     |
| struct          | [TechnologyData](#structvficpl_1_1_technology_data)                                                                                                                                                                                                                                                                                                   |
| struct          | [TransactionData](#structvficpl_1_1_transaction_data)                                                                                                                                                                                                                                                                                                 |
| interface       | [TransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_transaction_data_provider.md)                                                                                                                                                                                                      |

|              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Enumerations |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| enum         | <p><a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4">ApiError</a> {<br>  <a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4aac6ea7cce7cfe7b490e5c7e9683c4356">API\_OK</a>, <a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4af9bef427ea9e87e17c542097262b2d9c">API\_FAIL</a>, <a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4a8aadbd1dd596c4cad93bbb5bdd6c14c9">API\_SERVICE\_TIMEOUT</a>, <a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4aeb92fc9c99ff9c6c460a2ed82e1b8716">API\_INVALID\_PARAMETERS</a>,<br>  <a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4a77594044bb3a17ab6cce09dd1232bcda">API\_UNSUPPORTED\_REQUEST</a>, <a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4a4296511c7cae9476c435c04c468e794e">API\_ENCRYPTION\_UNAVAILABLE</a>, <a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4ae3326934d0cb3f4d23c8ef7a04ce52b3">API\_NO\_PAPER</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| enum         | <p><a href="#a59e56af19e754a6aa26a612ebf91d05f">ErrorCode</a> {<br>  <a href="#a59e56af19e754a6aa26a612ebf91d05fae086821aa37071bfbb216a0fb5643cc3">CP\_INVOKE\_SUCCESS</a>, <a href="#a59e56af19e754a6aa26a612ebf91d05fa3e0843950e675d30cc04ab9c43327ed3">CP\_INVOKE\_FAILED</a>, <a href="#a59e56af19e754a6aa26a612ebf91d05fa15a82fbea37fb093d565e0d9db9298e9">CP\_INVOKE\_TIMEOUT</a>, <a href="#a59e56af19e754a6aa26a612ebf91d05fa74effbcc2afb8cff7bd2a511279b77b6">CP\_INVOKE\_MANDATORY\_PARAMS\_MISSING</a>,<br>  <a href="#a59e56af19e754a6aa26a612ebf91d05fa24981dca9214e9b22b8fe4515d8ceaa9">CP\_INVOKE\_SERVICE\_SUCCESS</a>, <a href="#a59e56af19e754a6aa26a612ebf91d05fa51518a55f4963bb63b166244ec3f23e9">CP\_INVOKE\_NATIVE\_SUCCESS</a>, <a href="#a59e56af19e754a6aa26a612ebf91d05fa348cffdd1862b4403ee65ee4b880f63c">CP\_INVOKE\_CANCELED</a>, <a href="#a59e56af19e754a6aa26a612ebf91d05fa57c4ceaf23acc04bae1231f0c3a0d3ef">CP\_INVOKE\_BUSY</a>,<br>  <a href="#a59e56af19e754a6aa26a612ebf91d05faa8780beaab249baa6c45fc0108dcd8c7">CP\_INVOKE\_IDLE</a>, <a href="#a59e56af19e754a6aa26a612ebf91d05fa1308487c375a59992f9a1157ec8c5392">CP\_INVOKE\_NOT\_IMPLEMENTED</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|              | <p>Represents possible error codes of invoke call. <a href="#a59e56af19e754a6aa26a612ebf91d05f">More...</a><br></p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| enum         | <p><a href="#ad7c9d0eab3af08a96ce9fd9ce293de88">OFFER\_TYPE</a> {<br>  <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88ae836b3548e12b2e722918c0ba5db3bb0">OFFER\_UNDEFINED</a>, <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88a055d7389ec059ad865fde1dd02504117">OFFER\_MERCHANT\_COUPON</a>, <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88a782450e10ad6812a794228dae173b2ea">OFFER\_MANUFACTURER\_COUPON</a>, <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88a16427e84542c1fe797b399a9a82ecd41">OFFER\_OTHER\_COUPON</a>,<br>  <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88a16ee5740ffd2e9a2064a43f36c1d8cfa">OFFER\_PRODUCT\_DISCOUNT</a>, <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88a128bff6b7fa2474e01ba2fb6b3f957f3">OFFER\_LOYALTY\_CARD</a>, <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88abd542afe07b9f273f121ac6041511eab">OFFER\_TRANSACTION\_DISCOUNT</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|              | <p>Represents the Offer object on CP-Payment communication. <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88">More...</a><br></p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| enum         | <p><a href="#aba55b083790f62440bcff1c23bbe2f12">CpTrigger</a> {<br>  <a href="#aba55b083790f62440bcff1c23bbe2f12a0c83cc2df29b61317293826c6ee3c3bb">NOTIF\_IDLE</a> = 0, <a href="#aba55b083790f62440bcff1c23bbe2f12a7d66bf00b2b1dca8764c98e307eeb515">NOTIF\_MANUAL\_LAUNCH</a> = 1, <a href="#aba55b083790f62440bcff1c23bbe2f12a28ad135ffa26cbc612ad6b5a67f35738">REQUEST\_CUSTOMER\_IDENTIFICATION</a> = 16, <a href="#aba55b083790f62440bcff1c23bbe2f12ac1d840abc773652f6f3794a7623aef20">NOTIF\_TRX\_STARTED</a> = 2,<br>  <a href="#aba55b083790f62440bcff1c23bbe2f12a40c848eab70a77518353ba8f697b8651">REQUEST\_BASKET\_ADJUSTMENT</a> = 3, <a href="#aba55b083790f62440bcff1c23bbe2f12a1e97f9f6cda1c23da7383410a2d28723">NOTIF\_BASKET\_FINALIZED</a> = 4, <a href="#aba55b083790f62440bcff1c23bbe2f12ae3f457de903c658874e4ec13451edbd0">REQUEST\_LOYALTY</a> = 5, <a href="#aba55b083790f62440bcff1c23bbe2f12afac0fd439ec03b243778d1bbeac5cf40">REQUEST\_AMOUNT\_ADJUSTMENT</a> = 6,<br>  <a href="#aba55b083790f62440bcff1c23bbe2f12a97b9f518144d0f9c9615d0216836bb35">NOTIF\_AMOUNT\_FINALIZED</a> = 7, <a href="#aba55b083790f62440bcff1c23bbe2f12ac989d77f634b4dd93e6d44247c5622ef">REQUEST\_ALT\_PAYMENT</a> = 8, <a href="#aba55b083790f62440bcff1c23bbe2f12a4061e229a1817948456ed525133e97a8">REQUEST\_TECH\_ALT\_PAYMENT</a> = 17, <a href="#aba55b083790f62440bcff1c23bbe2f12a6e9539d276d28ca7108f149b840ae05e">NOTIF\_CARD\_PRESENTED</a> = 9,<br>  <a href="#aba55b083790f62440bcff1c23bbe2f12a9c1699a9aa75d886d8527ffb3cbe956e">NOTIF\_CARD\_BIN\_RECEIVED</a> = 10, <a href="#aba55b083790f62440bcff1c23bbe2f12ada0fd4652c9773c4af9c1b7cc4fed3bf">REQUEST\_PAYMENT\_AMOUNT\_ADJUSTMENT</a> = 11, <a href="#aba55b083790f62440bcff1c23bbe2f12a171b25af4e1a59131598df4f16980904">NOTIF\_AUTHORIZATION\_COMPLETED</a> = 12, <a href="#aba55b083790f62440bcff1c23bbe2f12af3df6e700a5f0c02be1c01f54b341fb0">NOTIF\_PAYMENT\_COMPLETED</a> = 13,<br>  <a href="#aba55b083790f62440bcff1c23bbe2f12a88b00393e9ec643b54ac79d79c98b079">REQUEST\_RECEIPT\_MANAGEMENT</a> = 14, <a href="#aba55b083790f62440bcff1c23bbe2f12a4b08bcac62143f2549b4a99ba816cafb">NOTIF\_TRX\_ENDED</a> = 15<br>}</p> |
|              | <p>CpTrigger - contains all triggers used by commerce platform. <a href="#aba55b083790f62440bcff1c23bbe2f12">More...</a><br></p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| enum         | [TransactionOriginator](#a6c410aee3c873fc45fe7bccf53c6b8d5) { [ORIGINATOR\_MIN\_VALUE](#a6c410aee3c873fc45fe7bccf53c6b8d5a57d1b749897c258ca15d4aaa47f0ddda) = -1, [ORIGINATOR\_UNDEFINED](#a6c410aee3c873fc45fe7bccf53c6b8d5a36bb1c296647604d38b010a4ddf2c908) = 0, [ORIGINATOR\_PAYMENT\_APPLICATION](#a6c410aee3c873fc45fe7bccf53c6b8d5af005728e8702c6d948f1ad9dbea2c10a), [ORIGINATOR\_CP\_APPLICATION](#a6c410aee3c873fc45fe7bccf53c6b8d5a2ea03fb9cd1b9c5bcb98e37dda60eb5c) }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| enum         | <p><a href="#aa7a2e64697569804f14626bbb2649a58">TransactionType</a> {<br>  <a href="#aa7a2e64697569804f14626bbb2649a58ac9cf59a5cdefcf034807f0f020df4f2a">TRX\_TYPE\_MIN\_VALUE</a> = -1, <a href="#aa7a2e64697569804f14626bbb2649a58a1ba076296397909c41255f4114341d79">TRX\_TYPE\_UNDEFINED</a> = 0, <a href="#aa7a2e64697569804f14626bbb2649a58af270ea53198f751c6402d0a8d90cca55">TRX\_TYPE\_PAYMENT</a>, <a href="#aa7a2e64697569804f14626bbb2649a58aec2452e792b76e52b9927dc91447d24b">TRX\_TYPE\_DEFERRED\_PAYMENT</a>,<br>  <a href="#aa7a2e64697569804f14626bbb2649a58a1e62629897315391e5de35fc048375b1">TRX\_TYPE\_DEFERRED\_PAYMENT\_COMPLETION</a>, <a href="#aa7a2e64697569804f14626bbb2649a58a22871ee1fd2d70ab6c6ac05d02ab8a27">TRX\_TYPE\_REFUND</a>, <a href="#aa7a2e64697569804f14626bbb2649a58add9aeec252d4fd2d5faf318b8044c079">TRX\_TYPE\_VOID</a>, <a href="#aa7a2e64697569804f14626bbb2649a58a77669dabacaa14496ba6a2201700ee79">TRX\_TYPE\_PRE\_AUTHORISATION</a>,<br>  <a href="#aa7a2e64697569804f14626bbb2649a58a4895cde5668e8f442bd2af653a99d574">TRX\_TYPE\_PRE\_AUTHORISATION\_COMPLETION</a>, <a href="#aa7a2e64697569804f14626bbb2649a58aff0710c0e5dd208cccfd86da620a99e3">TRX\_TYPE\_CASH\_ADVANCE</a>, <a href="#aa7a2e64697569804f14626bbb2649a58a6f7ff053755d76095c8522e545d8b1c9">TRX\_TYPE\_CASHBACK</a>, <a href="#aa7a2e64697569804f14626bbb2649a58afe81d94cb9377bccf3c1412d602018a4">TRX\_TYPE\_CASH\_PAYMENT</a>,<br>  <a href="#aa7a2e64697569804f14626bbb2649a58ae6bbf21e449163eef511de208b8d345a">TRX\_TYPE\_REVERSAL</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| enum         | <p><a href="#a76b9e96d86b331202dcc0fba38b758cd">CardType</a> {<br>  <a href="#a76b9e96d86b331202dcc0fba38b758cdaf7d5e92a30556fba27496de1bf6642b4">CARD\_TYPE\_MIN\_VALUE</a> = -1, <a href="#a76b9e96d86b331202dcc0fba38b758cdabcc6b5795166223d8528bae2aff81530">CARD\_TYPE\_UNDEFINED</a> = 0, <a href="#a76b9e96d86b331202dcc0fba38b758cda4c54f3a51230fc4a4b559e0f31764854">CARD\_TYPE\_MAG\_STRIPE</a>, <a href="#a76b9e96d86b331202dcc0fba38b758cdab29ecf453018fe08b2e64f11a77b249d">CARD\_TYPE\_CHIP</a>,<br>  <a href="#a76b9e96d86b331202dcc0fba38b758cda4a99e20b47e3ddd7c9ef05eb282d6dec">CARD\_TYPE\_CTLS\_CARD</a>, <a href="#a76b9e96d86b331202dcc0fba38b758cda336d510be7ce5671579cf4f206f616c2">CARD\_TYPE\_CTLS\_PHONE</a>, <a href="#a76b9e96d86b331202dcc0fba38b758cdab811da325f709369606e17aa1cb76a6e">CARD\_TYPE\_MANUAL</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| enum         | <p><a href="#abf880d7292973573c80d9fd18ea77453">AuthEntity</a> {<br>  <a href="#abf880d7292973573c80d9fd18ea77453ac1d44979f9e4d61f5665842ae60d1d77">AUTH\_ENTITY\_MIN\_VALUE</a> = -1, <a href="#abf880d7292973573c80d9fd18ea77453a2a5e1608827ba47ba87f1e4078e24f91">AUTH\_ENTITY\_UNDEFINED</a> = 0, <a href="#abf880d7292973573c80d9fd18ea77453a44efc0ba541427fbd13046e3947413a8">AUTH\_ENTITY\_MERCHANT</a>, <a href="#abf880d7292973573c80d9fd18ea77453a7e302c6b734137707dfe0e21fd7e3a39">AUTH\_ENTITY\_ACQUIRER</a>,<br>  <a href="#abf880d7292973573c80d9fd18ea77453a7de55871016aee7b476dca6297852ab9">AUTH\_ENTITY\_CARD\_SCHEME</a>, <a href="#abf880d7292973573c80d9fd18ea77453a6e17f5499de4132067c9d89914aae499">AUTH\_ENTITY\_ISSUER</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| enum         | <p><a href="#a87ba9bd5edfd749f4729620dbadd5fce">AuthResult</a> {<br>  <a href="#a87ba9bd5edfd749f4729620dbadd5fcea844d7e8f9402ac043df58f084eda0469">AUTH\_RESULT\_MIN\_VALUE</a> = -1, <a href="#a87ba9bd5edfd749f4729620dbadd5fcea01842cc50c96d8ebcce3899f7a6be8e8">AUTH\_RESULT\_UNDEFINED</a> = 0, <a href="#a87ba9bd5edfd749f4729620dbadd5fcea4d44bf75d544f749d365460565869af6">AUTH\_RESULT\_AUTHORIZED\_ONLINE</a>, <a href="#a87ba9bd5edfd749f4729620dbadd5fceaed5a15f881bd37b4c9cab122342a2acc">AUTH\_RESULT\_AUTHORIZED\_OFFLINE</a>,<br>  <a href="#a87ba9bd5edfd749f4729620dbadd5fcea6f0a10fdb47368de754a4692d8e251f2">AUTH\_RESULT\_REJECTED\_ONLINE</a>, <a href="#a87ba9bd5edfd749f4729620dbadd5fcea5225877e26989921a6e46138cb7e2153">AUTH\_RESULT\_CASH\_VERIFIED</a>, <a href="#a87ba9bd5edfd749f4729620dbadd5fceaae3961729e7ceaed899d2fed1e343f5e">AUTH\_RESULT\_ABORTED</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| enum         | <p><a href="#abc1dfb7e5d03f66392b0b4e8be15af50">HolderAuth</a> {<br>  <a href="#abc1dfb7e5d03f66392b0b4e8be15af50a13520fee927c826e79b8ad410da80073">HOLDER\_AUTH\_MIN\_VALUE</a> = -1, <a href="#abc1dfb7e5d03f66392b0b4e8be15af50a79279bc7212777399c5ccd893b0bc4e7">HOLDER\_AUTH\_UNDEFINED</a> = 0, <a href="#abc1dfb7e5d03f66392b0b4e8be15af50a14528ba74d694ba44ea333e6b09fd890">HOLDER\_AUTH\_PIN</a>, <a href="#abc1dfb7e5d03f66392b0b4e8be15af50a1be4162610288474eb7b780ddc8eacd6">HOLDER\_AUTH\_SIGNATURE</a>,<br>  <a href="#abc1dfb7e5d03f66392b0b4e8be15af50a73e3c991c566bed502f11806976ad4eb">HOLDER\_AUTH\_ID</a>, <a href="#abc1dfb7e5d03f66392b0b4e8be15af50a51404dd4ab95fe214db01db10b175424">HOLDER\_AUTH\_OTHER</a>, <a href="#abc1dfb7e5d03f66392b0b4e8be15af50a7b17b16b4e52aee87d875b5e7ef382d9">HOLDER\_AUTH\_NONE</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| enum         | [TransactionResult](#affde3f05c6a4a5092ccd40ec3e830d43) { [TRX\_RESULT\_MIN\_VALUE](#affde3f05c6a4a5092ccd40ec3e830d43abbadbf8eba95d9a193040157896529c5) = -1, [TRX\_RESULT\_UNDEFINED](#affde3f05c6a4a5092ccd40ec3e830d43aa728f7be1f30330de91724598e48c351) = 0, [TRX\_RESULT\_SUCCESS](#affde3f05c6a4a5092ccd40ec3e830d43a9d468b203514876d033fb5d0897719f4), [TRX\_RESULT\_CANCELLED](#affde3f05c6a4a5092ccd40ec3e830d43a838dd830728627f70f8214d27d5c20ce) }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| enum         | <p><a href="#a1c203ac3c282fe7696ce695935e2b5dc">TechnologyType</a> {<br>  <a href="#a1c203ac3c282fe7696ce695935e2b5dcac5a65639585b536f37777f79406af14d">TECH\_TYPE\_MIN\_VALUE</a> = -1, <a href="#a1c203ac3c282fe7696ce695935e2b5dca4ccc6b41ad2600ced68dfeb148b23cf2">TECH\_TYPE\_UNDEFINED</a> = 0, <a href="#a1c203ac3c282fe7696ce695935e2b5dca5dd330b60714e956ae967b6a1e021f0e">TECH\_TYPE\_MIFARE\_CLASSIC</a>, <a href="#a1c203ac3c282fe7696ce695935e2b5dca6d218ee88f58c18c28310d00b57993f9">TECH\_TYPE\_MIFARE\_ULTRALIGHT</a>,<br>  <a href="#a1c203ac3c282fe7696ce695935e2b5dca239f60140c3e28771a22f59c83fed4e8">TECH\_TYPE\_ISO7816</a><br>}</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |

|                                                                                                                                                                                                                                                                                                                                                                        |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Functions                                                                                                                                                                                                                                                                                                                                                              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md) &                                         | [getApi](#a42b69ad670428bf118b40a00cf59b496) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [setEnvironmentDataProvider](#a770b649a42bf6c1cf1d34e0c6165ff58) ([EnvironmentDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_environment_data_provider.md) \&envData)                                                                                                                                                                                                                                                                                        |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) void                                                                                                                                             | [setBasket](#a47c8903f6cf26144150fa99d21fd807e) (const std::list< [Merchandise](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_merchandise.md) > \&merchandises, const std::list< [Offer](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_offer.md) > \&offers, const std::list< [Donation](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_donation.md) > \&donations)                  |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [getBasket](#ab1c5bc2e93eed8cd5c3356e1dd12f119) (std::list< [Merchandise](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_merchandise.md) > \&merchandises, std::list< [Offer](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_offer.md) > \&offers, std::list< [Donation](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_donation.md) > \&donations)                                    |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [setApi](#aef8408b1629d19eaa27a183be2bef5e2) ([Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md) \&api)                                                                                                                                                                                                                                                                                                                                                          |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string                                                                                                                                      | [getProvision](#af3331180e3743ea6d16d29ff2427ac48) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string                                                                                                                                      | [getPublisher](#a3b3fc3a29c1354026365dd16bfc7e504) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string                                                                                                                                      | [getPublisherId](#a594d8e35680d4e7497544bc3d5ac8c46) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string                                                                                                                                      | [getQrCodeString](#a0277b25de7a0475fb50eb12c38b14181) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::list< [Offer](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_offer.md) >                          | [getLoyaltyOffers](#a6c337b2d5da35972bb2ecee3c04f9a8a) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::list< [LoyaltyIdentifier](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_loyalty_identifier.md) > | [getLoyaltyIdentifiers](#a0a7f7e7b82c6f3b755a81c7bfc7b7ab0) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string                                                                                                                                      | [getFxAmount](#a8e454211981744b922bae32f48d293e3) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string                                                                                                                                      | [getFxCurrency](#a168a379c94be7d795b0567e0890956ea) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [AltPaymentData](#structvficpl_1_1_alt_payment_data)                                                                                             | [getAltPaymentData](#a9de813115021e14784c242e92757d47f) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [TechAltPaymentData](#structvficpl_1_1_tech_alt_payment_data)                                                                                    | [getTechAltPaymentData](#a923e76d59a4651b0f30b2df42601f790) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [CustomerIdentification](#structvficpl_1_1_customer_identification)                                                                              | [getCustomerIdentification](#aa2ddfbcdfec859501be40da14b462a9f) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [PaymentAmountAdjustment](#structvficpl_1_1_payment_amount_adjustment)                                                                           | [getPaymentAmountAdjustment](#a5898fddd803a36971b95be0edb8d8876) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [init](#a5ef71297d93fdd0099630254ef4f0aea) (const std::string \&applicationId, [TransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_transaction_data_provider.md) \&trxData, [Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md) \&api, [EnvironmentDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_environment_data_provider.md) \&envData) |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [init](#adc3b1693acfc9926b43d49177dddea69) (const std::string \&applicationId, [TransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_transaction_data_provider.md) \&trxData, [Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md) \&api)                                                                                                                                                             |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [init](#af3604b595253ea6907e5150e83155e8d) (const std::string \&applicationId, [TransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_transaction_data_provider.md) \&trxData, [EnvironmentDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_environment_data_provider.md) \&envData)                                                                                                               |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [init](#a5b999c5309312eecb43d568bb14032bb) (const std::string \&applicationId, [TransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_transaction_data_provider.md) \&trxData)                                                                                                                                                                                                                                                                           |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [init](#ad2968ca7d610c815f173414d645e8852) (const std::string \&appid, [ITransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_i_transaction_data_provider.md) \&trxData, [Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md) \&api, [EnvironmentDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_environment_data_provider.md) \&envData)      |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [init](#a4fcf7041b913d34d9cb6cab1ffb422d3) (const std::string \&appid, [ITransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_i_transaction_data_provider.md) \&trxData, [Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md) \&api)                                                                                                                                                                  |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [init](#ad8c7c8a15638521499c7c16ddd8705cb) (const std::string \&appid, [ITransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_i_transaction_data_provider.md) \&trxData, [EnvironmentDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_environment_data_provider.md) \&envData)                                                                                                                    |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool                                                                                                                                             | [init](#a792f8eceedf83bd7416fd1c7f11eef87) (const std::string \&appid, [ITransactionDataProvider](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_i_transaction_data_provider.md) \&trxData)                                                                                                                                                                                                                                                                                |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) void                                                                                                                                             | [deinit](#a352ddaa2769fa08bbfa0e95d5d9cca6f) ()                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [ErrorCode](#a59e56af19e754a6aa26a612ebf91d05f)                                                                                                  | [invoke](#ab9d50d8d888d385d38a92e3d8b1974ba) ([InvokeRequest](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_request.md) \&request)                                                                                                                                                                                                                                                                                                                                |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md)                       | [invoke](#a3795a53125b8ae4c1348294b60334aba) (const [CpTrigger](#aba55b083790f62440bcff1c23bbe2f12) trigger)                                                                                                                                                                                                                                                                                                                                                                                                         |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md)                       | [invoke](#a03bd564e57072915ec1c7b82574c04ae) (const [CpTrigger](#aba55b083790f62440bcff1c23bbe2f12) trigger, bool sysToForground)                                                                                                                                                                                                                                                                                                                                                                                    |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md)                       | [invokeByName](#adc04dd7fe0a7a61093b18d8c74943621) (const [CpTrigger](#aba55b083790f62440bcff1c23bbe2f12) trigger, const std::string \&programName)                                                                                                                                                                                                                                                                                                                                                                  |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md)                       | [invokeByName](#ae10e0edc808d5382d7a6b268b0fd5eef) (const [CpTrigger](#aba55b083790f62440bcff1c23bbe2f12) trigger, const std::string \&programName, bool sysToForground)                                                                                                                                                                                                                                                                                                                                             |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md)                       | [invokeFromDesktop](#a571ac156101cdd0fb2361788064ac5e1) (const [CpTrigger](#aba55b083790f62440bcff1c23bbe2f12) trigger)                                                                                                                                                                                                                                                                                                                                                                                              |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md)                       | [invokeFromDesktop](#a2b66f79671a09e00b3c5f65ca32bcb69) (const [CpTrigger](#aba55b083790f62440bcff1c23bbe2f12) trigger, bool sysToForground)                                                                                                                                                                                                                                                                                                                                                                         |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::vector< std::string >                                                                                                                       | [getCpAppList](#ab0b9912d7ee77961fb31ae13f9e34e18) (const [CpTrigger](#aba55b083790f62440bcff1c23bbe2f12) trigger)                                                                                                                                                                                                                                                                                                                                                                                                   |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [vfiipc::JSObject](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvfiipc_1_1_j_s_object.md)                       | [getCpPropList](#a20d7f23a5f162116695a1192072f0d8f) (const [CpTrigger](#aba55b083790f62440bcff1c23bbe2f12) trigger)                                                                                                                                                                                                                                                                                                                                                                                                  |
| [CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [vfiipc::JSObject](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvfiipc_1_1_j_s_object.md)                       | [getCpExtraProps](#a19a35b029151524c96d7131b3ddd4709) (const std::string \&appid)                                                                                                                                                                                                                                                                                                                                                                                                                                    |

***

### DataStructure Documentation <a href="#data-structure-documentation" id="data-structure-documentation"></a>

### vficpl::AltPaymentData <a href="#structvficpl_1_1_alt_payment_data" id="structvficpl_1_1_alt_payment_data"></a>

struct vficpl::AltPaymentData

Represents Alt Payment Data object on CP-Payment communication.

|             |                  |                                                                                                                                                |
| ----------- | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| Data Fields |                  |                                                                                                                                                |
| string      | approvedAmount   | Amount approved by the Alternate Payment Commerce Application. This amount is returned as a negative number. String amount formatting applies. |
| string      | authCode         | The transaction Authorization Code usally provided by the Alternate Payment Service Provider.                                                  |
| string      | methodsOfPayment | Description of Alternate Payment service.                                                                                                      |
| string      | redeemedUnits    | Number of units of alternate currency consumed.                                                                                                |

### vficpl::CustomerIdentification <a href="#structvficpl_1_1_customer_identification" id="structvficpl_1_1_customer_identification"></a>

struct vficpl::CustomerIdentification

Customer identification to be used equivalent to a card pre-dip / pre-swipe.

|                |        |                                                                                                                           |
| -------------- | ------ | ------------------------------------------------------------------------------------------------------------------------- |
| Data Fields    |        |                                                                                                                           |
| list< string > | ids    | A customers identifier(s) unique in the service provider system.                                                          |
| string         | par    | Payment Account Reference (PAR) represents the Payment Account at the same level that PAN represents the Payment Account. |
| list< string > | tokens | Customer token(s) provided by the Verifone tokenization service.                                                          |

### vficpl::PaymentAmountAdjustment <a href="#structvficpl_1_1_payment_amount_adjustment" id="structvficpl_1_1_payment_amount_adjustment"></a>

struct vficpl::PaymentAmountAdjustment

Payment amount adjustment Fx data.

|             |                       |   |
| ----------- | --------------------- | - |
| Data Fields |                       |   |
| bool        | fxAccepted            |   |
| string      | fxAmount              |   |
| string      | fxCurrency            |   |
| double      | fxInvertedRate        |   |
| string      | fxMerchantId          |   |
| double      | fxPercentageCommision |   |
| double      | fxPercentageMargin    |   |
| double      | fxRate                |   |
| string      | fxTerminalId          |   |

### vficpl::TechAltPaymentData <a href="#structvficpl_1_1_tech_alt_payment_data" id="structvficpl_1_1_tech_alt_payment_data"></a>

struct vficpl::TechAltPaymentData

Represents Alt Payment trigger response.

|             |                 |   |
| ----------- | --------------- | - |
| Data Fields |                 |   |
| string      | approvedAmount  |   |
| string      | authCode        |   |
| string      | methodOfPayment |   |
| string      | redeemedUnits   |   |
| bool        | result          |   |
| string      | techHandle      |   |
| string      | techType        |   |

### vficpl::TechnologyData <a href="#structvficpl_1_1_technology_data" id="structvficpl_1_1_technology_data"></a>

struct vficpl::TechnologyData

|                                                      |           |                                                                   |
| ---------------------------------------------------- | --------- | ----------------------------------------------------------------- |
| Data Fields                                          |           |                                                                   |
| string                                               | aid       | Iso7816 AID that was selected on the card                         |
| string                                               | appdata   | Mifare application data                                           |
| string                                               | ats       | Iso7816 Response from the card answer to select (ATS) the command |
| string                                               | handle    | A unqiue identifier for this device during this session           |
| string                                               | histbytes | Mifare historical bytes                                           |
| [TechnologyType](#a1c203ac3c282fe7696ce695935e2b5dc) | type      | The type of interface used to communicate with this technology    |

### vficpl::TransactionData <a href="#structvficpl_1_1_transaction_data" id="structvficpl_1_1_transaction_data"></a>

struct vficpl::TransactionData

[TransactionData](#structvficpl_1_1_transaction_data) container struct for defined return values of [Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md)

|                  |                    |                                                                                                                                                                                                                       |
| ---------------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Data Fields      |                    |                                                                                                                                                                                                                       |
| string           | currency           | alphabetic currency code (ISO 4217)                                                                                                                                                                                   |
| string           | errorDescription   | description of error                                                                                                                                                                                                  |
| string           | gratuityAmount     | tip value                                                                                                                                                                                                             |
| string           | invoice            | invoice or bill number this transaction relates to                                                                                                                                                                    |
| bool             | manualEntry        | true permits the payment application to obtain card data via manual card entry. false indicates that the manual card entry is not an option.                                                                          |
| vector< string > | manualPromptOption | <p>Only filled if manualEntry is true.</p><p>Possible values are</p><p>ZIP prompts to enter zipcode</p><p>NOCVV disables prompt for CVV</p><p>If ZIP is specified, the result of the AVS is returned in AVS\_Code</p> |
| string           | panHandle          | reference of payment application ehich refers to the PAN in question.                                                                                                                                                 |
| string           | result             | result of transaction                                                                                                                                                                                                 |
| string           | transactionAmount  | amount of transaction                                                                                                                                                                                                 |
| string           | transactionId      | transaction id provided by the payment gateway, which is a client specific transaction identifier.                                                                                                                    |
| string           | transactionType    | type of transaction executed by the payment application                                                                                                                                                               |

### EnumerationType Documentation <a href="#enumeration-type-documentation" id="enumeration-type-documentation"></a>

### ApiError <a href="#a6aec14d1e03f2a2bf43eeae11b6a0ca4" id="a6aec14d1e03f2a2bf43eeae11b6a0ca4"></a>

enum \[ApiError]\(#a6aec14d1e03f2a2bf43eeae11b6a0ca4)

|                              |   |
| ---------------------------- | - |
| Enumerator                   |   |
| API\_OK                      |   |
| API\_FAIL                    |   |
| API\_SERVICE\_TIMEOUT        |   |
| API\_INVALID\_PARAMETERS     |   |
| API\_UNSUPPORTED\_REQUEST    |   |
| API\_ENCRYPTION\_UNAVAILABLE |   |
| API\_NO\_PAPER               |   |

### AuthEntity <a href="#abf880d7292973573c80d9fd18ea77453" id="abf880d7292973573c80d9fd18ea77453"></a>

enum \[AuthEntity]\(#abf880d7292973573c80d9fd18ea77453)

Entity that has authorized the transaction.

|                            |                                                   |
| -------------------------- | ------------------------------------------------- |
| Enumerator                 |                                                   |
| AUTH\_ENTITY\_MIN\_VALUE   | min value of enumeration                          |
| AUTH\_ENTITY\_UNDEFINED    | entity is undefined                               |
| AUTH\_ENTITY\_MERCHANT     | merchant has authorized the transaction           |
| AUTH\_ENTITY\_ACQUIRER     | acquirer has authorized the transaction           |
| AUTH\_ENTITY\_CARD\_SCHEME | card scheme used for authorization of transaction |
| AUTH\_ENTITY\_ISSUER       | issuer has authorized the transaction             |

### AuthResult <a href="#a87ba9bd5edfd749f4729620dbadd5fce" id="a87ba9bd5edfd749f4729620dbadd5fce"></a>

enum \[AuthResult]\(#a87ba9bd5edfd749f4729620dbadd5fce)

Result of transaction authorization.

|                                   |                                     |
| --------------------------------- | ----------------------------------- |
| Enumerator                        |                                     |
| AUTH\_RESULT\_MIN\_VALUE          | min value of enumeration            |
| AUTH\_RESULT\_UNDEFINED           | result is undefined                 |
| AUTH\_RESULT\_AUTHORIZED\_ONLINE  | online authorized                   |
| AUTH\_RESULT\_AUTHORIZED\_OFFLINE | offline authorized                  |
| AUTH\_RESULT\_REJECTED\_ONLINE    | online rejected                     |
| AUTH\_RESULT\_CASH\_VERIFIED      | transaction verified and cash payed |
| AUTH\_RESULT\_ABORTED             | authorization aborted               |

### CardType <a href="#a76b9e96d86b331202dcc0fba38b758cd" id="a76b9e96d86b331202dcc0fba38b758cd"></a>

enum \[CardType]\(#a76b9e96d86b331202dcc0fba38b758cd)

Specifies card type used to obtain card data.

|                         |                              |
| ----------------------- | ---------------------------- |
| Enumerator              |                              |
| CARD\_TYPE\_MIN\_VALUE  | min value of enumeration     |
| CARD\_TYPE\_UNDEFINED   | card type is undefined       |
| CARD\_TYPE\_MAG\_STRIPE | used card type is mag-stripe |
| CARD\_TYPE\_CHIP        | used card type is chip       |
| CARD\_TYPE\_CTLS\_CARD  | used card type is ctls card  |
| CARD\_TYPE\_CTLS\_PHONE | used card type is ctls phone |
| CARD\_TYPE\_MANUAL      | used card type is manual     |

### CpTrigger <a href="#aba55b083790f62440bcff1c23bbe2f12" id="aba55b083790f62440bcff1c23bbe2f12"></a>

enum \[CpTrigger]\(#aba55b083790f62440bcff1c23bbe2f12)

CpTrigger - contains all triggers used by commerce platform.

|                                      |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Enumerator                           |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| NOTIF\_IDLE                          | <p>CP\_SYSTEM\_NOTIFIES\_IDLE\_ENTERED - Fired by Payment Application when entering idle state. This happens once when application first starts up and each time after a transaction completes.</p><p>This allows the Commerce Applications to control the screen and devices in-between transactions.</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| NOTIF\_MANUAL\_LAUNCH                | CP\_SYSTEM\_NOTIFIES\_MANUAL\_LAUNCH\_SELECTED - Fired by Payment application when one of the service label has been selected.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| REQUEST\_CUSTOMER\_IDENTIFICATION    | CP\_SYSTEM\_REQUESTS\_CUSTOMER\_IDENTIFICATION - Customer identification to be used equivalent to a card "pre-dip / pre-swipe". This is used to enable loyalty programs at the ECR. Some alternative payment methods support loyalty programs, which are usually linked to using the same provider for alternative payment.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| NOTIF\_TRX\_STARTED                  | CP\_SYSTEM\_NOTIFIES\_TRANSACTION\_STARTED - Fired by System when exiting the idle screen and ready to initiate a transaction. Exiting idle from a menu like in other services will not fire this event.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| REQUEST\_BASKET\_ADJUSTMENT          | CP\_SYSTEM\_REQUESTS\_BASKET\_ADJUSTMENT - The pre-adjusted basket may be responded to by the commerce application by explicit offer format against the basket line details. This would be the case when the commerce application is basket aware and can quickly adjudicate the basket.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| NOTIF\_BASKET\_FINALIZED             | <p>CP\_SYSTEM\_NOTIFIES\_BASKET\_FINALIZED - No response is needed to final basket, as attempts to adjudicate the basket are now be closed.</p><p><em>Note:</em> For Payment applications allowing alterations to the basket post tender, it should be noted that a pre-adjusted basket may be received after final to repeat the process if new information is obtained during tendering. For example, basket may be adjusted as a result of trigger CP\_SYSTEM\_REQUESTS\_LOYALTY.</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| REQUEST\_LOYALTY                     | CP\_SYSTEM\_REQUESTS\_LOYALTY - Loyalty data returned from the launched commerce application. Loyalty response may or may not include offers data.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| REQUEST\_AMOUNT\_ADJUSTMENT          | <p>CP\_SYSTEM\_REQUESTS\_AMOUNT\_ADJUSTMENT - Fired by Payment Application when amount is received from POS or entered directly. This amount may have been altered by a discount. Permits the commerce application to adjust the final either by a amount or by an percentage.</p><p>Example usage: Pennies application which rounds up the final amount. For example an amount of $8.19 is rounded up to $9.00</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| NOTIF\_AMOUNT\_FINALIZED             | CP\_SYSTEM\_NOTIFIES\_AMOUNT\_FINALIZED - Fired by Payment Application when amount was received from POS or entered directly. This informs the commerce applications on the final amount and intermediate amounts, if any.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| REQUEST\_ALT\_PAYMENT                | CP\_SYSTEM\_REQUESTS\_ALT\_PAYMENT - Fired by Payment Application when one of the alternate payment label has been selected by cardholder.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| REQUEST\_TECH\_ALT\_PAYMENT          | <p>CP\_SYSTEM\_REQUESTS\_TECH\_ALT\_PAYMENT - Fired by Payment application when:</p><p>An NFC Tag is presented, and is identified as a supported Technology (e.g. MifareClassic, MifareUltralight, FeliCa)</p><p>An Iso7816 card has been presented and successfully responds to application selection using a registered AID</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| NOTIF\_CARD\_PRESENTED               | <p>CP\_SYSTEM\_NOTIFIES\_CARD\_PRESENTED - Fired by Payment application when:</p><p>Magstripe is swiped</p><p>Chip card has been inserted and read for PAN</p><p>Contacless card/phone has been presented</p><p>Access to the card data is on-demand.</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| NOTIF\_CARD\_BIN\_RECEIVED           | <p>CP\_SYSTEM\_NOTIFIES\_CARD\_BIN\_RECEIVED - Fired by Payment application when</p><p>Magstripe is swiped</p><p>Chip card has been inserted and read for PAN</p><p>Contacless card/phone has been presented</p><p>Access to the card data is on-demand.</p><p>This event has card BIN information in the payload</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| REQUEST\_PAYMENT\_AMOUNT\_ADJUSTMENT | <p>CP\_SYSTEM\_REQUESTS\_PAYMENT\_AMOUNT\_ADJUSTMENT - Fired by Payment application with the same conditions as CP\_SYSTEM\_REQUESTS\_AMOUNT\_ADJUSTMENT.</p><p>This gives the opportunity for Commerce Applications to adjust the amount <em>only</em> for only certain card types or provide Dynamic Currency Conversion (DCC) capability.</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| NOTIF\_AUTHORIZATION\_COMPLETED      | CP\_SYSTEM\_NOTIFIES\_AUTHORIZATION\_COMPLETED - Fired by Payment Application when payment authorization is complete.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| NOTIF\_PAYMENT\_COMPLETED            | CP\_SYSTEM\_NOTIFIES\_PAYMENT\_COMPLETED - Fired by Payment Application when payment transaction is completed. This is important because we may be in the payment section for several cycles with split tenders.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| REQUEST\_RECEIPT\_MANAGEMENT         | CP\_SYSTEM\_REQUESTS\_RECEIPT\_MANAGEMENT - Fired by Payment Application when a receipt is available to be processed. This allows a CP application to provide electronic receipt management services. This may be triggered multiple times during a transaction, but only once per receipt type. If signature is required for customer verification during a transaction, then this will be triggered by the payment application when verification is required, with signature indicators set. If the request does not contain a signature image, but requires a signature - and the response Provision is NONE or OFFER\_DECLINED then the payment application will have to print the receipt (internal printer or POS printer) to allow verification to be performed as usual. A CP Application may choose to use the CP\_APP\_REQUESTS\_PRINT API call during this trigger to have the payment application produce a physical receipt. |
| NOTIF\_TRX\_ENDED                    | CP\_SYSTEM\_NOTIFIES\_TRANSACTION\_ENDED - Fired by Payment Application when transaction is complete.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

### ErrorCode <a href="#a59e56af19e754a6aa26a612ebf91d05f" id="a59e56af19e754a6aa26a612ebf91d05f"></a>

enum \[ErrorCode]\(#a59e56af19e754a6aa26a612ebf91d05f)

Represents possible error codes of invoke call.

|                                        |                                                                       |
| -------------------------------------- | --------------------------------------------------------------------- |
| Enumerator                             |                                                                       |
| CP\_INVOKE\_SUCCESS                    | invoke was successful                                                 |
| CP\_INVOKE\_FAILED                     | result of invoke is failed                                            |
| CP\_INVOKE\_TIMEOUT                    | invoke is timed out                                                   |
| CP\_INVOKE\_MANDATORY\_PARAMS\_MISSING | invoke rejected because mandatory parameters are missing              |
| CP\_INVOKE\_SERVICE\_SUCCESS           | invoke of app type service successful                                 |
| CP\_INVOKE\_NATIVE\_SUCCESS            | invoke of app type native successful                                  |
| CP\_INVOKE\_CANCELED                   | invoke of app canceled by user                                        |
| CP\_INVOKE\_BUSY                       | trying to invoke a trigger when a previous request is in progress     |
| CP\_INVOKE\_IDLE                       | threre is no any trigger invocation in progress when trying to cancel |
| CP\_INVOKE\_NOT\_IMPLEMENTED           | functionality not implemented                                         |

### HolderAuth <a href="#abc1dfb7e5d03f66392b0b4e8be15af50" id="abc1dfb7e5d03f66392b0b4e8be15af50"></a>

enum \[HolderAuth]\(#abc1dfb7e5d03f66392b0b4e8be15af50)

Means by which the transaction is authorized.

|                          |                            |
| ------------------------ | -------------------------- |
| Enumerator               |                            |
| HOLDER\_AUTH\_MIN\_VALUE | min value of enumeration   |
| HOLDER\_AUTH\_UNDEFINED  | holder auth is undefined   |
| HOLDER\_AUTH\_PIN        | holder authorized by pin   |
| HOLDER\_AUTH\_SIGNATURE  | authorized by signature    |
| HOLDER\_AUTH\_ID         | authorized by id           |
| HOLDER\_AUTH\_OTHER      | authorized by other method |
| HOLDER\_AUTH\_NONE       | holder not authorized      |

### OFFER\_TYPE <a href="#ad7c9d0eab3af08a96ce9fd9ce293de88" id="ad7c9d0eab3af08a96ce9fd9ce293de88"></a>

enum \[OFFER\_TYPE]\(#ad7c9d0eab3af08a96ce9fd9ce293de88)

Represents the [Offer](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_offer.md) object on CP-Payment communication.

|                              |                                           |
| ---------------------------- | ----------------------------------------- |
| Enumerator                   |                                           |
| OFFER\_UNDEFINED             | offer is undefined                        |
| OFFER\_MERCHANT\_COUPON      | offer consists of merchant coupon         |
| OFFER\_MANUFACTURER\_COUPON  | offer consists of manufacturer coupon     |
| OFFER\_OTHER\_COUPON         | offer consists of special coupon          |
| OFFER\_PRODUCT\_DISCOUNT     | offer consists of product discount coupon |
| OFFER\_LOYALTY\_CARD         | offer consists of loyalty card            |
| OFFER\_TRANSACTION\_DISCOUNT | offer consists of transaction discount    |

### TechnologyType <a href="#a1c203ac3c282fe7696ce695935e2b5dc" id="a1c203ac3c282fe7696ce695935e2b5dc"></a>

enum \[TechnologyType]\(#a1c203ac3c282fe7696ce695935e2b5dc)

|                                |                          |
| ------------------------------ | ------------------------ |
| Enumerator                     |                          |
| TECH\_TYPE\_MIN\_VALUE         | min value of enumeration |
| TECH\_TYPE\_UNDEFINED          | tech type is undefined   |
| TECH\_TYPE\_MIFARE\_CLASSIC    |                          |
| TECH\_TYPE\_MIFARE\_ULTRALIGHT |                          |
| TECH\_TYPE\_ISO7816            |                          |

### TransactionOriginator <a href="#a6c410aee3c873fc45fe7bccf53c6b8d5" id="a6c410aee3c873fc45fe7bccf53c6b8d5"></a>

enum \[TransactionOriginator]\(#a6c410aee3c873fc45fe7bccf53c6b8d5)

Indicates which entity was responsible for starting the transaction.

|                                  |                                             |
| -------------------------------- | ------------------------------------------- |
| Enumerator                       |                                             |
| ORIGINATOR\_MIN\_VALUE           | min value of enumeration                    |
| ORIGINATOR\_UNDEFINED            | originator is undefined                     |
| ORIGINATOR\_PAYMENT\_APPLICATION | transaction started by payment application. |
| ORIGINATOR\_CP\_APPLICATION      | transaction started by cp application       |

### TransactionResult <a href="#affde3f05c6a4a5092ccd40ec3e830d43" id="affde3f05c6a4a5092ccd40ec3e830d43"></a>

enum \[TransactionResult]\(#affde3f05c6a4a5092ccd40ec3e830d43)

The result of the transaction

|                         |                                 |
| ----------------------- | ------------------------------- |
| Enumerator              |                                 |
| TRX\_RESULT\_MIN\_VALUE | min value of enumeration        |
| TRX\_RESULT\_UNDEFINED  | transaction result is undefined |
| TRX\_RESULT\_SUCCESS    | transaction result is success   |
| TRX\_RESULT\_CANCELLED  | transaction result is cancelled |

### TransactionType <a href="#aa7a2e64697569804f14626bbb2649a58" id="aa7a2e64697569804f14626bbb2649a58"></a>

enum \[TransactionType]\(#aa7a2e64697569804f14626bbb2649a58)

Type of transaction executed by the Payment Application

|                                           |                                                     |
| ----------------------------------------- | --------------------------------------------------- |
| Enumerator                                |                                                     |
| TRX\_TYPE\_MIN\_VALUE                     | min value of enumeration                            |
| TRX\_TYPE\_UNDEFINED                      | type is undefined                                   |
| TRX\_TYPE\_PAYMENT                        | type of transaction is payment                      |
| TRX\_TYPE\_DEFERRED\_PAYMENT              | type of transaction is deferred payment             |
| TRX\_TYPE\_DEFERRED\_PAYMENT\_COMPLETION  | type of transaction is deferred payment completion  |
| TRX\_TYPE\_REFUND                         | type of transaction is refund                       |
| TRX\_TYPE\_VOID                           | type of transaction is void                         |
| TRX\_TYPE\_PRE\_AUTHORISATION             | type of transaction is pre authorisation            |
| TRX\_TYPE\_PRE\_AUTHORISATION\_COMPLETION | type of transaction is pre authorisation completion |
| TRX\_TYPE\_CASH\_ADVANCE                  | type of transaction is cash advance                 |
| TRX\_TYPE\_CASHBACK                       | type of transaction is cashback                     |
| TRX\_TYPE\_CASH\_PAYMENT                  | type of transaction is cash payment                 |
| TRX\_TYPE\_REVERSAL                       | type of transaction is reversal                     |

### FunctionDocumentation <a href="#function-documentation" id="function-documentation"></a>

### deinit() <a href="#a352ddaa2769fa08bbfa0e95d5d9cca6f" id="a352ddaa2769fa08bbfa0e95d5d9cca6f"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) void vficpl::deinit

deinitialization of Commerce

### getAltPaymentData() <a href="#a9de813115021e14784c242e92757d47f" id="a9de813115021e14784c242e92757d47f"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) \[AltPaymentData]\(#structvficpl\_1\_1\_alt\_payment\_data) vficpl::getAltPaymentData

Get data returned from CP App while executing CP\_SYSTEM\_REQUESTS\_ALT\_PAYMENT.

#### Seealso <a href="#see-also" id="see-also"></a>

[AltPaymentData](#structvficpl_1_1_alt_payment_data)

### getApi() <a href="#a42b69ad670428bf118b40a00cf59b496" id="a42b69ad670428bf118b40a00cf59b496"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [Api](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_api.md)& vficpl::getApi

get API instance

#### Returns

reference to API object

### getBasket() <a href="#ab1c5bc2e93eed8cd5c3356e1dd12f119" id="ab1c5bc2e93eed8cd5c3356e1dd12f119"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::getBasket

get basket data used for CP\_SYSTEM\_NOTIFIES\_BASKET\_FINALIZED and CP\_SYSTEM\_REQUESTS\_BASKET\_ADJUSTMENT

**Parameters**

\[in] **merchandises** - merchandises used by CP App \[in] **offers** - offers used by CP App \[in] **donations** - donations used by CP App

#### Returns

true if basket is adjusted by CP App

### getCpAppList() <a href="#ab0b9912d7ee77961fb31ae13f9e34e18" id="ab0b9912d7ee77961fb31ae13f9e34e18"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::vector\ vficpl::getCpAppList

Get CP application list of given trigger

#### Returns

vector of strings with application names to the given trigger

### getCpExtraProps() <a href="#a19a35b029151524c96d7131b3ddd4709" id="a19a35b029151524c96d7131b3ddd4709"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [vfiipc::JSObject](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvfiipc_1_1_j_s_object.md) vficpl::getCpExtraProps

Get additional configuration entries for given CP application

**Parameters**

\[in] **appid** - the application id

#### Returns

js object with extra config or empty object if no such

### getCpPropList() <a href="#a20d7f23a5f162116695a1192072f0d8f" id="a20d7f23a5f162116695a1192072f0d8f"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [vfiipc::JSObject](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvfiipc_1_1_j_s_object.md) vficpl::getCpPropList

Get CP application property js object of given trigger

#### Returns

js object to the given trigger

### getCustomerIdentification() <a href="#aa2ddfbcdfec859501be40da14b462a9f" id="aa2ddfbcdfec859501be40da14b462a9f"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) \[CustomerIdentification]\(#structvficpl\_1\_1\_customer\_identification) vficpl::getCustomerIdentification

Get data returned from CP App while executing CP\_SYSTEM\_REQUESTS\_CUSTOMER\_IDENTIFICATION.

#### Seealso <a href="#see-also-1" id="see-also-1"></a>

[CustomerIdentification](#structvficpl_1_1_customer_identification)

### getFxAmount() <a href="#a8e454211981744b922bae32f48d293e3" id="a8e454211981744b922bae32f48d293e3"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string vficpl::getFxAmount

Get data returned from CP App while executing CP\_SYSTEM\_REQUESTS\_PAYMENT\_AMOUNT\_ADJUSTMENT.

### getFxCurrency() <a href="#a168a379c94be7d795b0567e0890956ea" id="a168a379c94be7d795b0567e0890956ea"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string vficpl::getFxCurrency

Get data returned from Cp App while executing CP\_SYSTEM\_REQUESTS\_PAYMENT\_AMOUNT\_ADJUSTMENT.

### getLoyaltyIdentifiers() <a href="#a0a7f7e7b82c6f3b755a81c7bfc7b7ab0" id="a0a7f7e7b82c6f3b755a81c7bfc7b7ab0"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::list\\<[LoyaltyIdentifier](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_loyalty_identifier.md)\\> vficpl::getLoyaltyIdentifiers

getLoyaltyIdentifiers returned from CP App while executing CP\_SYSTEM\_REQUESTS\_LOYALTY.

#### Returns

array of [LoyaltyIdentifier](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_loyalty_identifier.md) objects

### getLoyaltyOffers() <a href="#a6c337b2d5da35972bb2ecee3c04f9a8a" id="a6c337b2d5da35972bb2ecee3c04f9a8a"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::list\\<[Offer](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/classvficpl_1_1_offer.md)\\> vficpl::getLoyaltyOffers

Get loyalty offers returned from CP App while executing CP\_SYSTEM\_REQUESTS\_LOYALTY.

#### Returns

array of LoyaltyOffer object

### getPaymentAmountAdjustment() <a href="#a5898fddd803a36971b95be0edb8d8876" id="a5898fddd803a36971b95be0edb8d8876"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) \[PaymentAmountAdjustment]\(#structvficpl\_1\_1\_payment\_amount\_adjustment) vficpl::getPaymentAmountAdjustment

Get payment amount adjustment Fx fields

#### Seealso <a href="#see-also-2" id="see-also-2"></a>

Paymentamountadjustment

### getProvision() <a href="#af3331180e3743ea6d16d29ff2427ac48" id="af3331180e3743ea6d16d29ff2427ac48"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string vficpl::getProvision

get provision - Receipt Management response

#### Returns

the provision

### getPublisher() <a href="#a3b3fc3a29c1354026365dd16bfc7e504" id="a3b3fc3a29c1354026365dd16bfc7e504"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string vficpl::getPublisher

get publisher name

#### Returns

publisher name. Identify which offers or loyalty platform is being leveraged.

### getPublisherId() <a href="#a594d8e35680d4e7497544bc3d5ac8c46" id="a594d8e35680d4e7497544bc3d5ac8c46"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string vficpl::getPublisherId

get publisher id

#### Returns

publisher identifier. Provider may elect to pass a numeric identifer for their platform

### getQrCodeString() <a href="#a0277b25de7a0475fb50eb12c38b14181" id="a0277b25de7a0475fb50eb12c38b14181"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) std::string vficpl::getQrCodeString

get qr code string

#### Returns

qr code string (RFU)

### getTechAltPaymentData() <a href="#a923e76d59a4651b0f30b2df42601f790" id="a923e76d59a4651b0f30b2df42601f790"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) \[TechAltPaymentData]\(#structvficpl\_1\_1\_tech\_alt\_payment\_data) vficpl::getTechAltPaymentData

Get data returned from CP App while executing CP\_SYSTEM\_REQUESTS\_TECH\_ALT\_PAYMENT.

#### Seealso <a href="#see-also-3" id="see-also-3"></a>

[TechAltPaymentData](#structvficpl_1_1_tech_alt_payment_data)

### init()\[1/8] <a href="#a792f8eceedf83bd7416fd1c7f11eef87" id="a792f8eceedf83bd7416fd1c7f11eef87"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::init

Deprecated initialization of Commerce

**Parameters**

\[in] **appid** - the application id specifies application using commerce \[in] **trxData** - Transaction Data Provider taken from current transaction.

#### Returns

true on successful initialization

### init()\[2/8] <a href="#a4fcf7041b913d34d9cb6cab1ffb422d3" id="a4fcf7041b913d34d9cb6cab1ffb422d3"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::init

Deprecated initialization of Commerce

**Parameters**

\[in] **appid** - the application id specifies application using commerce \[in] **trxData** - Transaction Data Provider taken from current transaction. \[in] **api** - api reference to ApiCallbacks implementation.

#### Returns

true on successful initialization

### init()\[3/8] <a href="#ad2968ca7d610c815f173414d645e8852" id="ad2968ca7d610c815f173414d645e8852"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::init

Deprecated initialization of Commerce

**Parameters**

\[in] **appid** - the application id specifies application using commerce \[in] **trxData** - Transaction Data Provider taken from current transaction. \[in] **api** - api reference to ApiCallbacks implementation. \[in] **envData** - Environment Data Provider.

#### Returns

true on successful initialization

### init()\[4/8] <a href="#ad8c7c8a15638521499c7c16ddd8705cb" id="ad8c7c8a15638521499c7c16ddd8705cb"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::init

Deprecated initialization of Commerce

**Parameters**

\[in] **appid** - the application id specifies application using commerce \[in] **trxData** - Transaction Data Provider taken from current transaction. \[in] **envData** - Environment Data Provider.

#### Returns

true on successful initialization

### init()\[5/8] <a href="#a5b999c5309312eecb43d568bb14032bb" id="a5b999c5309312eecb43d568bb14032bb"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::init

initialization of Commerce

**Parameters**

\[in] **applicationId** - the application id specifies application using commerce \[in] **trxData** - Transaction Data Provider taken from current transaction.

#### Returns

true on successful initialization

### init()\[6/8] <a href="#adc3b1693acfc9926b43d49177dddea69" id="adc3b1693acfc9926b43d49177dddea69"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::init

initialization of Commerce

**Parameters**

\[in] **applicationId** - the application id specifies application using commerce \[in] **trxData** - Transaction Data Provider taken from current transaction. \[in] **api** - api reference to ApiCallbacks implementation.

#### Returns

true on successful initialization

### init()\[7/8] <a href="#a5ef71297d93fdd0099630254ef4f0aea" id="a5ef71297d93fdd0099630254ef4f0aea"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::init

initialization of Commerce

**Parameters**

\[in] **applicationId** - the application id specifies application using commerce \[in] **trxData** - Transaction Data Provider taken from current transaction. \[in] **api** - api reference to ApiCallbacks implementation. \[in] **envData** - Environment Data Provider.

#### Returns

true on successful initialization

### init()\[8/8] <a href="#af3604b595253ea6907e5150e83155e8d" id="af3604b595253ea6907e5150e83155e8d"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::init

initialization of Commerce

**Parameters**

\[in] **applicationId** - the application id specifies application using commerce \[in] **trxData** - Transaction Data Provider taken from current transaction. \[in] **envData** - Environment Data Provider.

#### Returns

true on successful initialization

### invoke()\[1/3] <a href="#a3795a53125b8ae4c1348294b60334aba" id="a3795a53125b8ae4c1348294b60334aba"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md) vficpl::invoke

sends the notification to CP. The call will be blocking the thread until CP app is closed. decision for request/response or request only is done internally depending on trigger.

**Parameters**

\[in] **trigger** - the trigger message that will be sent to CPR

#### Returns

returns whether the notification was delivered

### invoke()\[2/3] <a href="#a03bd564e57072915ec1c7b82574c04ae" id="a03bd564e57072915ec1c7b82574c04ae"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md) vficpl::invoke

sends the notification to CP. The call will be blocking the thread until CP app is closed. decision for request/response or request only is done internally depending on trigger.

**Parameters**

\[in] **trigger** - the trigger message that will be sent to CPR \[in] **sysToForground** - default parameter executing sysToForground at end of invoke

#### Returns

returns whether the notification was delivered

### invoke()\[3/3] <a href="#ab9d50d8d888d385d38a92e3d8b1974ba" id="ab9d50d8d888d385d38a92e3d8b1974ba"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) \[ErrorCode]\(#a59e56af19e754a6aa26a612ebf91d05f) vficpl::invoke

### invokeByName()\[1/2] <a href="#adc04dd7fe0a7a61093b18d8c74943621" id="adc04dd7fe0a7a61093b18d8c74943621"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md) vficpl::invokeByName

sends the notification to CP. The call will be blocking the thread until CP app is closed. decision for request/response or request only is done internally depending on trigger.

**Parameters**

\[in] **trigger** - the trigger message that will be sent to CPR **programName** - name of the program that will be started in mac

#### Returns

returns whether the notification was delivered

### invokeByName()\[2/2] <a href="#ae10e0edc808d5382d7a6b268b0fd5eef" id="ae10e0edc808d5382d7a6b268b0fd5eef"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md) vficpl::invokeByName

sends the notification to CP. The call will be blocking the thread until CP app is closed. decision for request/response or request only is done internally depending on trigger.

**Parameters**

\[in] **trigger** - the trigger message that will be sent to CPR **programName** - name of the program that will be started in mac \[in] **sysToForground** - default parameter executing sysToForground at end of invoke

#### Returns

returns whether the notification was delivered

### invokeFromDesktop()\[1/2] <a href="#a571ac156101cdd0fb2361788064ac5e1" id="a571ac156101cdd0fb2361788064ac5e1"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md) vficpl::invokeFromDesktop

invoke from desktop shows application selection desktop with all apps from a given trigger. After selection the program is directly invoked in mac. This method waits until the application ends.

**Parameters**

**trigger** which is used for application selection

#### Returns

returns whether the application has been executed

### invokeFromDesktop()\[2/2] <a href="#a2b66f79671a09e00b3c5f65ca32bcb69" id="a2b66f79671a09e00b3c5f65ca32bcb69"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) [InvokeResult](https://github.com/verifoneone/verifone-git-book-adk/tree/ADK5.0_staging/structvficpl_1_1_invoke_result.md) vficpl::invokeFromDesktop

invoke from desktop shows application selection desktop with all apps from a given trigger. After selection the program is directly invoked in mac. This method waits until the application ends.

**Parameters**

**trigger** which is used for application selection \[in] **sysToForground** - default parameter executing sysToForground at end of invoke

#### Returns

returns whether the application has been executed

### setApi() <a href="#aef8408b1629d19eaa27a183be2bef5e2" id="aef8408b1629d19eaa27a183be2bef5e2"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::setApi

set instance of API object

**Parameters**

\[in] **api** - the api reference to ApiCallbacks implementation

#### Returns

true on success

### setBasket() <a href="#a47c8903f6cf26144150fa99d21fd807e" id="a47c8903f6cf26144150fa99d21fd807e"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) void vficpl::setBasket

set basket data used for CP\_SYSTEM\_NOTIFIES\_BASKET\_FINALIZED and CP\_SYSTEM\_REQUESTS\_BASKET\_ADJUSTMENT

**Parameters**

\[in] **merchandises** - merchandises send to CP App \[in] **offers** - offers send to CP App \[in] **donations** - donations send to CP App

### setEnvironmentDataProvider() <a href="#a770b649a42bf6c1cf1d34e0c6165ff58" id="a770b649a42bf6c1cf1d34e0c6165ff58"></a>

[CPDllSpec](/adk-5.0-programmers-guide/readme/files/dir_2002fcb36e937be08e088f9ab4e81de8/dir_fad52422ca9a0153aca9cfe879bff259/dir_613e11e510006a27889deef70cf7d9b4/cpdllspec_8h.md#a405283673573049b0d38f77c79ee0e06) bool vficpl::setEnvironmentDataProvider

Sets new Environment Data Provider

**Parameters**

\[in] **envData** - reference to EnvironmentDataProvider

#### Returns

true on success


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://sandbox-docs.verifone.com/adk-5.0-programmers-guide/readme/namespaces/namespacevficpl.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
