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. |