FDMSLevel3 Bean
Properties Methods Events Configuration Settings Errors
The FDMSLevel3 component is a tool used to create Level 3 Corporate Purchasing Card addendum aggregates, which can then be passed to the FDMSSETTLE component and settled.
Syntax
InPayDirect.Fdmslevel3
Remarks
This Level3Extension bean creates Level 3 addendum data, which can be sent in the settlement to achieve a better interchange rate when accepting corporate purchasing cards. The Level 3 addendum allows the merchant to send very detailed information about every item that was purchased by the card holder, as well as tax and shipping information.
This bean creates a different addendum aggregate based on the CardType. Visa and MasterCard addendums differ slightly, and therefore a slightly different set of properties are required for each.
List of valid Line Item properties for Visa:
- Quantity (required)
- UnitCost (required)
- CommodityCode (optional)
- Description (optional)
- DiscountAmount (optional)
- ProductCode (optional)
- TaxAmount (optional)
- TaxRate (optional)
- Total (optional)
- Units (optional)
List of valid Line Item properties for Mastercard:
- Description (required)
- ProductCode (required)
- Quantity (required)
- Units (required)
- UnitCost (optional)
- Total (required)
- DiscountAmount (optional)
- TaxIncluded (required)
- TaxRate (required)
- TaxAmount (required)
- TaxType (required)
The following example illustrates how to build a Level 3 addendum for the ctVisa CardType:
'First, authorize the credit card FDMSECommerce.TransactionAmount = "2720" '$27.20 FDMSECommerce.Authorize() 'Then, put the result into the settlement component FDMSSettle.DetailRecords.Add(New FDMSRecordType(FDMSECommerce.GetDetailAggregate())) 'Then build the Level 2 portion FDMSLevel2.CardType = ctVisa FDMSLevel2.CommercialCardType = FDMSECommerce.ResponseCommercialCard FDMSLevel2.OrderDate = "060828" 'September 28th, 2006 FDMSLevel2.FreightTaxAmount = "0" FDMSLevel2.FreightAmount = "600" FDMSLevel2.PurchaseIdentifier = "123456PURCHID" FDMSLevel2.ShippedToZip = "90210" FDMSLevel2.ShippedFromZip = "90210" FDMSLevel2.TaxAmount = "120" 'Now build the Level 3 portion FDMSLevel3.CardType = ctVisa FDMSLineItem item = new FDMSLineItem(); item.Quantity = 2; item.UnitCost = "500"; // $13.99 item.Units = "each"; item.Total = "1060"; FDMSLevel3.LineItems.Add(item); item = new FDMSLineItem(); item.Quantity = 1; item.UnitCost = "1000"; item.Units = "each"; item.Total = "1060"; FDMSLevel3.LineItems.Add(item); 'Finally, add the Level 2 and Level 3 addendum data to the settlement at the same index 'as the associated transaction. FDMSSettle.DetailRecords[FDMSSettle.DetailRecords.Count()].AddendumAggregate = FDMSLevel2.GetAddendum() + FDMSLevel3.GetAddendum()
A Level 3 addendum for the ctMasterCard CardType is constructed similarly:
NOTE: You must send both a Level 2 addendum and a Level 3 addendum together in the same DetailAddendum. Level 3 data cannot be processed without a corresponding Level2 aggregate (however, you can send Level 2 data without Level 3 data).
Property List
The following is the full list of the properties of the bean with short descriptions. Click on the links for further details.
CardType | The card type for which a Level 2 or Level 3 addendum will be created. |
LineItems | A collection of line items to be included in the Level 3 addendum. |
Method List
The following is the full list of the methods of the bean with short descriptions. Click on the links for further details.
config | Sets or retrieves a configuration setting . |
getAddendum | Returns a Level 3 Purchasing card addendum based on the specified CardType . |
reset | Clears all properties to their default values. |
Event List
The following is the full list of the events fired by the bean with short descriptions. Click on the links for further details.
Error | Information about errors during data delivery. |
Configuration Settings
The following is a list of configuration settings for the bean with short descriptions. Click on the links for further details.
CodePage | The system code page used for Unicode to Multibyte translations. |