
What is iVend Extensiblity
Ability of a software system to allow and accept significant extension of its capabilities, without major rewriting of code or changes in its basic architecture.
iVend Extensibility provides an Add-on framework which facilitates the programmers to enhance and extend the business logic of the application as per new business requirements due to growing business needs and advancements.
Facilitates to extend UI (User Interface) Layer
Creation of User Defined Field (UDF) and User Defined Table (UDT)
Includes facility to extend Business Logic as well as new Business Rules.
Allows the events to be overridden for most of the activities application do.
Publish Add-on per store level and prioritize execution
iVend DB Context is accessible for SQL Queries execution
iVend Retail provides a rich bundle of API functions that can be leveraged to integrate with any standard ERP
Extends the ability to integrate with third party Payment Processors

iVend Extensibility Offerings














Add On Development
iVend Add-on Framework is used for writing Custom Business Logic independently by a programmer. iVend Addon allows to extend business logic either in Management Console or at the Terminal POS.The addon framework allows deployment of multiple Add-Ons on one Enterprise. The extended business logic is deployed as an Add-on centrally at the Enterprise which then gets auto-replicated to entire retail landscape.
-
POS - Business Transactions
This sample add-on demonstrates creation of business transactions eg Good Receipt, Good Issue etc from POS
Project Name: SampleForBusinessTransactions
Class Name: GoodsIssueMenu, GoodsReceiptMenu,GoodReceiptPOMenu, PurchaseOrderMenu,StockTranserReceiptMenu,StockTransaferShipmentMenu,LocationTransfer
-
POS- Sample For Silent Report Print
This sample add-on shows how to Print silent iVend report on 'AfterTransactioncommit' Event
Project Name: SampleForSilentReportPrint
Class Name: TransactionEntry
-
POS - SampleForPrintRecieptOnCustomButtonClick
This sample add-on covers Printing of Transaction receipt on click of a custom button on POS
Project Name: SampleForPrintRecieptOnCustomButtonClick
Class Name: TransactionDetail
-
Basic Add-On Sample
This sample add-on covers basic requirements for creating an iVend Retail Add-on e.g. Addon Version, Addon startup event, addon shutdown event, Number of minimum DLLs required to be referenced,etc.
Project Name: BasicSampleAddOn
Class Name: AddOnBasePlugin
-
MC - Create Custom Screen
This sample add-on demonstrate how to create a custom screen in iVend management console similar to master screen with Search/Add/Edit functionality.
Project Name: CustomScreenSampleForMC
Class Name: SampleSearchView, SampleAddEditView
-
MC - Open custom master lookup screen with Search Context
This sample add-on demonstrate how to open custom master with search context from the lookup button.
Project Name: CustomScreenSampleForMC
Class Name: SampleAddEditView
-
MC - Open system master lookup screen with Search Context
This sample add-on demonstrate how to open system master data in search screen from the lookup button.
Project Name: CustomScreenSampleForMC
Class Name: SampleAddEditView
-
MC - Create custom button Panel in master and transaction screens
This sample add-on shows how to create an additional custom button panel in management console screens to accomodate maximum 12 buttons
Project Name: SampleAddOnForMCCustomButtonPanel
Class Name: CustomButtonPanelOnVendorScreen
-
MC - Handling custom column in existing screens where UDFs are enabled
This sample add-on shows how to handle custom column generated in existing screens for each created UDF
Project Name: SampleAddOnForCustomColumnInMCScreen
Class Name: CustomColumnOnPurchaseOrderDetail
-
Error/Exception Handling
This sample add-on shows how to display Information/Error/Warning messages on management console & POS screens
Project Name: CustomScreenSampleForMC, POSEventsSampleAddon
Class Name: SampleSearchView, SampleAddEditView, Transaction
-
POS - Handle Quick Button panel click event
This sample add-on shows how to handle the click event of the quick button panel on POS transaction screen
Project Name: POSEventsSampleAddon
Class Name: Transaction
-
POS - Using Touch screen controls like 'on screen Keyboard', 'Date and Number Entry Controls' on Custom Screens
This sample add-on shows how to use Touch screen controls like on screen Keyboard, Date and Number Entry Controls on custom screen.
Project Name: POSTouchScreenSample
Class Name: POSCustomScreen, ImplementTransactionEvents
-
POS - Scanning events on custom screen. e.g. MSR, Scanning, Printing,etc
This sample add-on shows how to use Scanning events on custom screen. e.g. MSR, Scanning, Printing,etc.
Project Name: POSEventsSampleAddon
Class Name: SampleScreen
-
Screen globalization event
This sample add-on shows usage of OnGlobalize event on POS and management console.e.g. POS user menu name, button name, label text, etc can be globalized.
Project Name: POSEventsSampleAddon
Class Name: Payment
-
POS - Transaction Info Grid Customization
This sample add-on shows how to customize POS Transaction Information Grid. e.g.Show/Hide field, etc.
Project Name: POSEventsSampleAddon
Class Name: TransactionEntry
-
MC - Add custom menu category and menu item
This sample add-on shows how to add custom menus and handle menu click event.
Project Name: SampleAddOnForMCMenu
Class Name: MCMenuCategory
-
POS - Button events on screens
This sample add-on shows how to handle button events on POS screen. e.g. ok/cancel ,after/before events onItem edit, etc.
Project Name: POSEventsSampleAddon
Class Name: CustomerSearch, ProductSearch, TransactionSearch, TransactionEntry, TransactionDetail, SaleItemEdit,SaleEdit, QuotationItem, QuotationToSaleItem, LostSaleItem
-
MC - Button events on screens
This sample add-on shows how to handle button events on MC screen. e.g. ok/cancel ,after/before events customer add/edit screen.
Project Name: SampleAddOnForMCEvents
Class Name: GoodsReceiptEvents
-
POS - Create Custom screen
This sample add-on shows how to create custom POS screen using 'BasePOSCustomView' and render the same on POS.
Project Name: POSEventsSampleAddon
Class Name: SampleScreen
-
POS - Transaction mode change event
This sample add-on shows how to handle transaction mode change event on POS and get the transaction mode details.
Project Name: POSEventsSampleAddon
Class Name: Transaction
-
MC - Customize existing MC screen
This sample add-on shows how to handle existing screen GUI and their exposed events. e.g. Add column to Purchase Order detail grid, handling existing exposed events.
Project Name: CustomizeExistingScreenMC
Class Name: CustomePurchaseOrder
-
POS - Custom Button panel
This sample add-on shows how to create an additional custom button panel in POS screen to accomodate maximum 12 new buttons.
Project Name: POSEventsSampleAddon
Class Name: Payment
-
POS - Handle user menu item events
This sample add-on shows how to handle the POS user menu events. e.g. i) Void ii) Suspend / Recall iii) X Report iv) Expense v) Open Cash Drawer 1 & 2 vi) Cash in vii) Cash out viii) Z report – Date and Number ix) Close / Remove Till x) Re-Print Receipt xi) Gift Receipt, etc.
Project Name: SampleAddOnForPOSUserMenuEvents
Class Name: CashDrawerModule, CashInCashOut, Expense, Till, TransactionEntry, XReport, ZReport
-
POS - Manager override functionality
This sample add-on shows how to use manager override feature in POS transaction screen.
Project Name: POSEventsSampleAddon
Class Name: ManagerOverride
-
POS - Add custom user menu and handle menu events
This sample add-on shows how to create custom menu item on existing menu category and handle the click event for the same.
Project Name: SampleAddOnForCustomPOSMenu
Class Name: POSMenu
-
Custom Screens Globalization
This sample add-on shows how to implement globalization in custom screens on POS and MC for various controls and messages
Project Name: CustomSearchGlobalization
Class Name: PlugInClass.cs, LensTypeSearchView.cs
-
Creating custom search screen
This sample add-on shows how to create a custom search screen MC from a prototype of search screen which acts as base
Project Name: CustomSearchScreen
Class Name: "CustomBaseSearchView.cs AddOnCustomTypeSearchView.cs"
-
Creating UDT via API
a. Creating UDT via API b. Creating UDT through code via API service reference c. CRUD operation on UDT via API d. Creating UDF via API e. UDT Replication "
Project Name: SampleForCreatingUDTUsingAPIReference
Class Name: SampleFormForUDT
-
Floating Keyboard
Floating Keyboard
Project Name: SampleAddonForFloatingKeyboard
Class Name: FloatingKeyboard, POSMenuForFloatingkeyboard
-
Cancel Events on MC Views
Cancel Events (OnbeforeCancel & OnAfterCancel) on 16 Screens - As requested
Project Name: SampleAddOnForMCEvents
Class Name: All Class files in folder e.g. StockTransferRequest, ProductView, Customer etc
-
Custom Screen launching on Transaction and Payments screen events
Any Custom dialog need to be launch (added in Add-On) on Transaction and Payments screen events
Project Name: POSEventsSampleAddon
Class Name: SampleScreen, Payment
-
Handle events on POS transaction screen
Update transaction item properties like price, discount, taxes and surcharge on POS events
Project Name: POS- POSEventsSampleAddon, MC-CustomizeExistingScreenMC
Class Name: POS- TransactionEntry, MC- CustomePurchaseOrder
-
Read UDF values during Transactions
Fetching UDF data on any particular event of POS/MC screen
Project Name: POS- POSEventsSampleAddon , MC- CustomizeExistingScreenMC
Class Name: POS- ProductSearch, MC- ProductView
-
Sample Addon For UDT
Creating UDT, CRUD operation on UDT using add-on
Project Name: SampleAddonForUDT
Class Name: VendorSearch, iVendAddOn
-
Sample Add-on to Add Attributes column on POS Transaction Grid
This sample add-on demonstrates how to add line item attributes column on POS Transaction grid
Project Name: SampleforAttribuesOnPOSTransactonGrid
Class Name: LineAttributes
-
POS - Handle iVend business objects
This sample add-on shows how to handle transaction objects in the add-on. Also, how to add or get details of business objects.For e. g Adding product in current transaction, getting customer object based on key or id, etc.
Project Name: SampleAddonForTransactionEvents
Class Name: CustomerModule,TransactionEvents
-
POS - Handle current transaction context.
This sample add-on shows how to add or modify current transaction using the transaction object e.g. changing product price, discount, add product to transaction etc.
Project Name: POSEventsSampleAddon
Class Name: Payment,TransactionDetail
-
POS - Handle payment in current transaction
This sample add-on demonstrates the usage of payment object i.e. how to modify payment details for current transaction.For e.g. change in discount/amount on basis of some particular tender type etc.
Project Name: POSEventsSampleAddon
Class Name: Payment
-
Calling Web Service thorugh Add-on
This sample add-on demonstrates how to call a Web Service thorugh add-on via Soap messages
Project Name: SampleAddOnCallingWebService
Class Name: Payment
-
MC-Vertical Grid customization
This Sample Add-on shows how to customize Vertical Grid of Management Console.e.g Adding custom row in vertical grid.
Project Name: AddRowsToVGrid sample
Class Name: PurchaseOrder.cs
-
POS- Transaction Grid Customization
This sample shows how to rename and hide/show transaction grid column (including Attribute columns) through code on transaction grid/Customer Display screen/Transaction Detail screen.
Project Name: AddonForPOSTransactionGridCustomization
Class Name: TransactionEntry.cs,TransactionDetail.cs,CustomerFacingTransaction.cs,Plugin.cs
-
Import/Export User Defined Table
This sample shows how to enable Import/Export feature for a User defined table .
Project Name: SampleAddOnForUDT
Class Name: iVendAddOn.cs
-
Gift-card and Coupon events on POS
This sample shows how to handle events when Gift-card and Coupon is issued on POS.
Project Name: POSEventsSampleAddon
Class Name: TransactionEntry.cs
-
MC-Add security rights for UDT
This sample shows how to create custom master and enable system security rights for UDT using Add-on framework.
Project Name: AddonForCustomMaster
Class Name: Plugin.cs,RetailSeasonSearchView
-
Bacode event on POS
This sample shows how to handle barcode scan event on POS.
Project Name: POSEventsSampleAddon
Class Name: TransactionEntry.cs
-
Payment Processor dll delivery sample
This Sample Add-on shows how to add a payment processor dll as a embedded resource and copy to client system via Add-On code
Project Name: SampleDllCopyAddOn
Class Name: PlugIn.cs
-
Save any business object UDF value via API
This sample shows how to give an UDF value for an iVend object and save via API service reference
Project Name: CreatingObjectUDFvaluesusingAPIReferences
Class Name: Form1.cs
-
Email Notification Sample
This sample shows how to send email notifications through add-on code
Project Name: SampleForEmailNotification
Class Name: Email.cs
-
SMS Notification Sample
This sample shows how to send SMS notifications through add-on code
Project Name: SampleForSMSNotification
Class Name: SMS.cs
-
iVend Application Notification Sample
This sample shows how to send iVend application notifications through add-on code
Project Name: SampleForIVendApplicationNotification
Class Name: NotificationOnIVend.cs
-
Payment Processor Sample
This Sample shows how to implement a new Payment Processor and its integration methodology in iVend Retail.
Project Name: PaymentProcessorSample
Class Name: CXS.Payments.AuthorizeDotNet
-
POS - Business Transactions
This sample add-on demonstrates creation of business transactions eg Good Receipt, Good Issue etc from POS
Project Name: SampleForBusinessTransactions
Class Name: GoodsIssueMenu, GoodsReceiptMenu,GoodReceiptPOMenu, PurchaseOrderMenu,StockTranserReceiptMenu,StockTransaferShipmentMenu,LocationTransfer
-
POS- Sample For Silent Report Print
This sample add-on shows how to Print silent iVend report on 'AfterTransactioncommit' Event
Project Name: SampleForSilentReportPrint
Class Name: TransactionEntry
-
POS - SampleForPrintRecieptOnCustomButtonClick
This sample add-on covers Printing of Transaction receipt on click of a custom button on POS
Project Name: SampleForPrintRecieptOnCustomButtonClick
Class Name: TransactionDetail
-
Basic Add-On Sample
This sample add-on covers basic requirements for creating an iVend Retail Add-on e.g. Addon Version, Addon startup event, addon shutdown event, Number of minimum DLLs required to be referenced,etc.
Project Name: BasicSampleAddOn
Class Name: AddOnBasePlugin
-
MC - Create Custom Screen
This sample add-on demonstrate how to create a custom screen in iVend management console similar to master screen with Search/Add/Edit functionality.
Project Name: CustomScreenSampleForMC
Class Name: SampleSearchView, SampleAddEditView
-
MC - Open custom master lookup screen with Search Context
This sample add-on demonstrate how to open custom master with search context from the lookup button.
Project Name: CustomScreenSampleForMC
Class Name: SampleAddEditView
-
MC - Open system master lookup screen with Search Context
This sample add-on demonstrate how to open system master data in search screen from the lookup button.
Project Name: CustomScreenSampleForMC
Class Name: SampleAddEditView
-
MC - Create custom button Panel in master and transaction screens
This sample add-on shows how to create an additional custom button panel in management console screens to accomodate maximum 12 buttons
Project Name: SampleAddOnForMCCustomButtonPanel
Class Name: CustomButtonPanelOnVendorScreen
-
MC - Handling custom column in existing screens where UDFs are enabled
This sample add-on shows how to handle custom column generated in existing screens for each created UDF
Project Name: SampleAddOnForCustomColumnInMCScreen
Class Name: CustomColumnOnPurchaseOrderDetail
-
Error/Exception Handling
This sample add-on shows how to display Information/Error/Warning messages on management console & POS screens
Project Name: CustomScreenSampleForMC, POSEventsSampleAddon
Class Name: SampleSearchView, SampleAddEditView, Transaction
-
POS - Handle Quick Button panel click event
This sample add-on shows how to handle the click event of the quick button panel on POS transaction screen
Project Name: POSEventsSampleAddon
Class Name: Transaction
-
POS - Using Touch screen controls like 'on screen Keyboard', 'Date and Number Entry Controls' on Custom Screens
This sample add-on shows how to use Touch screen controls like on screen Keyboard, Date and Number Entry Controls on custom screen.
Project Name: POSTouchScreenSample
Class Name: POSCustomScreen, ImplementTransactionEvents
-
POS - Scanning events on custom screen. e.g. MSR, Scanning, Printing,etc
This sample add-on shows how to use Scanning events on custom screen. e.g. MSR, Scanning, Printing,etc.
Project Name: POSEventsSampleAddon
Class Name: SampleScreen
-
Screen globalization event
This sample add-on shows usage of OnGlobalize event on POS and management console.e.g. POS user menu name, button name, label text, etc can be globalized.
Project Name: POSEventsSampleAddon
Class Name: Payment
-
POS - Transaction Info Grid Customization
This sample add-on shows how to customize POS Transaction Information Grid. e.g.Show/Hide field, etc.
Project Name: POSEventsSampleAddon
Class Name: TransactionEntry
-
MC - Add custom menu category and menu item
This sample add-on shows how to add custom menus and handle menu click event.
Project Name: SampleAddOnForMCMenu
Class Name: MCMenuCategory
-
POS - Button events on screens
This sample add-on shows how to handle button events on POS screen. e.g. ok/cancel ,after/before events onItem edit, etc.
Project Name: POSEventsSampleAddon
Class Name: CustomerSearch, ProductSearch, TransactionSearch, TransactionEntry, TransactionDetail, SaleItemEdit,SaleEdit, QuotationItem, QuotationToSaleItem, LostSaleItem
-
MC - Button events on screens
This sample add-on shows how to handle button events on MC screen. e.g. ok/cancel ,after/before events customer add/edit screen.
Project Name: SampleAddOnForMCEvents
Class Name: GoodsReceiptEvents
-
POS - Create Custom screen
This sample add-on shows how to create custom POS screen using 'BasePOSCustomView' and render the same on POS.
Project Name: POSEventsSampleAddon
Class Name: SampleScreen
-
POS - Transaction mode change event
This sample add-on shows how to handle transaction mode change event on POS and get the transaction mode details.
Project Name: POSEventsSampleAddon
Class Name: Transaction
-
MC - Customize existing MC screen
This sample add-on shows how to handle existing screen GUI and their exposed events. e.g. Add column to Purchase Order detail grid, handling existing exposed events.
Project Name: CustomizeExistingScreenMC
Class Name: CustomePurchaseOrder
-
POS - Custom Button panel
This sample add-on shows how to create an additional custom button panel in POS screen to accomodate maximum 12 new buttons.
Project Name: POSEventsSampleAddon
Class Name: Payment
-
POS - Handle user menu item events
This sample add-on shows how to handle the POS user menu events. e.g. i) Void ii) Suspend / Recall iii) X Report iv) Expense v) Open Cash Drawer 1 & 2 vi) Cash in vii) Cash out viii) Z report – Date and Number ix) Close / Remove Till x) Re-Print Receipt xi) Gift Receipt, etc.
Project Name: SampleAddOnForPOSUserMenuEvents
Class Name: CashDrawerModule, CashInCashOut, Expense, Till, TransactionEntry, XReport, ZReport
-
POS - Manager override functionality
This sample add-on shows how to use manager override feature in POS transaction screen.
Project Name: POSEventsSampleAddon
Class Name: ManagerOverride
-
POS - Add custom user menu and handle menu events
This sample add-on shows how to create custom menu item on existing menu category and handle the click event for the same.
Project Name: SampleAddOnForCustomPOSMenu
Class Name: POSMenu
-
Custom Screens Globalization
This sample add-on shows how to implement globalization in custom screens on POS and MC for various controls and messages
Project Name: CustomSearchGlobalization
Class Name: PlugInClass.cs, LensTypeSearchView.cs
-
Creating custom search screen
This sample add-on shows how to create a custom search screen MC from a prototype of search screen which acts as base
Project Name: CustomSearchScreen
Class Name: "CustomBaseSearchView.cs AddOnCustomTypeSearchView.cs"
-
Creating UDT via API
a. Creating UDT via API b. Creating UDT through code via API service reference c. CRUD operation on UDT via API d. Creating UDF via API e. UDT Replication "
Project Name: SampleForCreatingUDTUsingAPIReference
Class Name: SampleFormForUDT
-
Floating Keyboard
Floating Keyboard
Project Name: SampleAddonForFloatingKeyboard
Class Name: FloatingKeyboard, POSMenuForFloatingkeyboard
-
Cancel Events on MC Views
Cancel Events (OnbeforeCancel & OnAfterCancel) on 16 Screens - As requested
Project Name: SampleAddOnForMCEvents
Class Name: All Class files in folder e.g. StockTransferRequest, ProductView, Customer etc
-
Custom Screen launching on Transaction and Payments screen events
Any Custom dialog need to be launch (added in Add-On) on Transaction and Payments screen events
Project Name: POSEventsSampleAddon
Class Name: SampleScreen, Payment
-
Handle events on POS transaction screen
Update transaction item properties like price, discount, taxes and surcharge on POS events
Project Name: POS- POSEventsSampleAddon, MC-CustomizeExistingScreenMC
Class Name: POS- TransactionEntry, MC- CustomePurchaseOrder
-
Read UDF values during Transactions
Fetching UDF data on any particular event of POS/MC screen
Project Name: POS- POSEventsSampleAddon , MC- CustomizeExistingScreenMC
Class Name: POS- ProductSearch, MC- ProductView
-
Sample Addon For UDT
Creating UDT, CRUD operation on UDT using add-on
Project Name: SampleAddonForUDT
Class Name: VendorSearch, iVendAddOn
-
Sample Add-on to Add Attributes column on POS Transaction Grid
This sample add-on demonstrates how to add line item attributes column on POS Transaction grid
Project Name: SampleforAttribuesOnPOSTransactonGrid
Class Name: LineAttributes
-
POS - Handle iVend business objects
This sample add-on shows how to handle transaction objects in the add-on. Also, how to add or get details of business objects.For e. g Adding product in current transaction, getting customer object based on key or id, etc.
Project Name: SampleAddonForTransactionEvents
Class Name: CustomerModule,TransactionEvents
-
POS - Handle current transaction context.
This sample add-on shows how to add or modify current transaction using the transaction object e.g. changing product price, discount, add product to transaction etc.
Project Name: POSEventsSampleAddon
Class Name: Payment,TransactionDetail
-
POS - Handle payment in current transaction
This sample add-on demonstrates the usage of payment object i.e. how to modify payment details for current transaction.For e.g. change in discount/amount on basis of some particular tender type etc.
Project Name: POSEventsSampleAddon
Class Name: Payment
-
Calling Web Service thorugh Add-on
This sample add-on demonstrates how to call a Web Service thorugh add-on via Soap messages
Project Name: SampleAddOnCallingWebService
Class Name: Payment
-
MC-Vertical Grid customization
This Sample Add-on shows how to customize Vertical Grid of Management Console.e.g Adding custom row in vertical grid.
Project Name: AddRowsToVGrid sample
Class Name: PurchaseOrder.cs
-
POS- Transaction Grid Customization
This sample shows how to rename and hide/show transaction grid column (including Attribute columns) through code on transaction grid/Customer Display screen/Transaction Detail screen.
Project Name: AddonForPOSTransactionGridCustomization
Class Name: TransactionEntry.cs,TransactionDetail.cs,CustomerFacingTransaction.cs,Plugin.cs
-
Import/Export User Defined Table
This sample shows how to enable Import/Export feature for a User defined table .
Project Name: SampleAddOnForUDT
Class Name: iVendAddOn.cs
-
Gift-card and Coupon events on POS
This sample shows how to handle events when Gift-card and Coupon is issued on POS.
Project Name: POSEventsSampleAddon
Class Name: TransactionEntry.cs
-
MC-Add security rights for UDT
This sample shows how to create custom master and enable system security rights for UDT using Add-on framework.
Project Name: AddonForCustomMaster
Class Name: Plugin.cs,RetailSeasonSearchView
-
Bacode event on POS
This sample shows how to handle barcode scan event on POS.
Project Name: POSEventsSampleAddon
Class Name: TransactionEntry.cs
-
Payment Processor dll delivery sample
This Sample Add-on shows how to add a payment processor dll as a embedded resource and copy to client system via Add-On code
Project Name: SampleDllCopyAddOn
Class Name: PlugIn.cs
-
Save any business object UDF value via API
This sample shows how to give an UDF value for an iVend object and save via API service reference
Project Name: CreatingObjectUDFvaluesusingAPIReferences
Class Name: Form1.cs
-
Email Notification Sample
This sample shows how to send email notifications through add-on code
Project Name: SampleForEmailNotification
Class Name: Email.cs
-
SMS Notification Sample
This sample shows how to send SMS notifications through add-on code
Project Name: SampleForSMSNotification
Class Name: SMS.cs
-
iVend Application Notification Sample
This sample shows how to send iVend application notifications through add-on code
Project Name: SampleForIVendApplicationNotification
Class Name: NotificationOnIVend.cs
-
Payment Processor Sample
This Sample shows how to implement a new Payment Processor and its integration methodology in iVend Retail.
Project Name: PaymentProcessorSample
Class Name: CXS.Payments.AuthorizeDotNet