Version Notes
Improvements to ThreatMetrix Detection
Download this release
Release Info
Developer | Demac Media |
Extension | 666999 |
Version | 0.3.4 |
Comparing to | |
See all releases |
Code changes from version 0.3.3 to 0.3.4
app/code/community/Demac/Optimal/Helper/Data.php
CHANGED
@@ -254,7 +254,7 @@ class Demac_Optimal_Helper_Data extends Mage_Core_Helper_Abstract
|
|
254 |
}
|
255 |
// End Refactor
|
256 |
|
257 |
-
if($billingAddress->getCustomerAddressId() === $shippingAddress->getCustomerAddressId())
|
258 |
{
|
259 |
$billingDetailsArray['useAsShippingAddress'] = true;
|
260 |
} else {
|
254 |
}
|
255 |
// End Refactor
|
256 |
|
257 |
+
if(!$customerData['is_guest'] && $billingAddress->getCustomerAddressId() === $shippingAddress->getCustomerAddressId())
|
258 |
{
|
259 |
$billingDetailsArray['useAsShippingAddress'] = true;
|
260 |
} else {
|
app/code/community/Demac/Optimal/Model/Method/Hosted.php
CHANGED
@@ -182,7 +182,6 @@ class Demac_Optimal_Model_Method_Hosted extends Mage_Payment_Model_Method_Cc
|
|
182 |
if (!$this->canAuthorize()) {
|
183 |
Mage::throwException(Mage::helper('payment')->__('Authorize action is not available.'));
|
184 |
}
|
185 |
-
|
186 |
try {
|
187 |
$error = false;
|
188 |
$customerSession = Mage::getSingleton('customer/session');
|
182 |
if (!$this->canAuthorize()) {
|
183 |
Mage::throwException(Mage::helper('payment')->__('Authorize action is not available.'));
|
184 |
}
|
|
|
185 |
try {
|
186 |
$error = false;
|
187 |
$customerSession = Mage::getSingleton('customer/session');
|
app/code/community/Demac/Optimal/controllers/Frontend/OptimalController.php
CHANGED
@@ -157,19 +157,22 @@ class Demac_Optimal_Frontend_OptimalController extends Mage_Core_Controller_Fron
|
|
157 |
$orderData['increment_id'] = 0;
|
158 |
$orderData['customer_email'] = $customerData['email'];
|
159 |
|
|
|
|
|
160 |
$billingAddressId = $customer->getDefaultBilling();
|
161 |
-
if
|
162 |
$orderData['billing_address'] = Mage::getModel('customer/address')->load($billingAddressId);
|
163 |
} else {
|
164 |
Mage::throwException($this->__("There was a problem adding the credit card. You must create a billing address first."));
|
165 |
}
|
166 |
|
167 |
$shippingAddressId = $customer->getDefaultShipping();
|
168 |
-
if
|
169 |
$orderData['shipping_address'] = Mage::getModel('customer/address')->load($shippingAddressId);
|
170 |
} else {
|
171 |
$orderData['shipping_address'] = $orderData['billing_address'];
|
172 |
}
|
|
|
173 |
|
174 |
$orderData['base_tax_amount'] = 0;
|
175 |
$orderData['base_grand_total'] = 0;
|
@@ -235,7 +238,9 @@ class Demac_Optimal_Frontend_OptimalController extends Mage_Core_Controller_Fron
|
|
235 |
$cardName = $orderStatus->transaction->card->brand;
|
236 |
$profile->setCardNickname(Mage::helper('optimal')->processCardNickname($cardName));
|
237 |
|
238 |
-
|
|
|
|
|
239 |
$profile->setCardHolder($cardHolder);
|
240 |
|
241 |
// Set Card Info
|
157 |
$orderData['increment_id'] = 0;
|
158 |
$orderData['customer_email'] = $customerData['email'];
|
159 |
|
160 |
+
|
161 |
+
// Start [Refactor] : Pull the order billing and shipping address rather than the customer default address.
|
162 |
$billingAddressId = $customer->getDefaultBilling();
|
163 |
+
if($billingAddressId) {
|
164 |
$orderData['billing_address'] = Mage::getModel('customer/address')->load($billingAddressId);
|
165 |
} else {
|
166 |
Mage::throwException($this->__("There was a problem adding the credit card. You must create a billing address first."));
|
167 |
}
|
168 |
|
169 |
$shippingAddressId = $customer->getDefaultShipping();
|
170 |
+
if($shippingAddressId) {
|
171 |
$orderData['shipping_address'] = Mage::getModel('customer/address')->load($shippingAddressId);
|
172 |
} else {
|
173 |
$orderData['shipping_address'] = $orderData['billing_address'];
|
174 |
}
|
175 |
+
// End Refactor
|
176 |
|
177 |
$orderData['base_tax_amount'] = 0;
|
178 |
$orderData['base_grand_total'] = 0;
|
238 |
$cardName = $orderStatus->transaction->card->brand;
|
239 |
$profile->setCardNickname(Mage::helper('optimal')->processCardNickname($cardName));
|
240 |
|
241 |
+
// Start [Refactor] : This is pulling the billing first name / last name instead of the name entered when creating the credit card.
|
242 |
+
$cardHolder = $customerData['firstname'] . ' ' . $customerData['lastname'];
|
243 |
+
// End Refactor
|
244 |
$profile->setCardHolder($cardHolder);
|
245 |
|
246 |
// Set Card Info
|
app/code/community/Demac/Optimal/etc/config.xml
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Demac_Optimal>
|
5 |
-
<version>0.3.
|
6 |
</Demac_Optimal>
|
7 |
</modules>
|
8 |
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Demac_Optimal>
|
5 |
+
<version>0.3.4</version>
|
6 |
</Demac_Optimal>
|
7 |
</modules>
|
8 |
|
package.xml
CHANGED
@@ -1,26 +1,24 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>666999</name>
|
4 |
-
<version>0.3.
|
5 |
-
<stability>
|
6 |
-
<license>GPL</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
-
<summary>Securely access and process online payments with the NETBANX payment gateway
|
10 |
-
</summary>
|
11 |
<description>The Optimal Payments NETBANX Hosted Payment Extension allows ecommerce businesses to securely accept and process online payments using Optimal’s NETBANX payment gateway and services. The integration is easy to implement and provides the ultimate in payment processing capabilities, fraud management, and reporting.
|
12 |
<br /> <br />
|
13 |
The Optimal Payments extension uses a Silent Post integration to the merchant’s website. During checkout, payment information is entered on the merchant website and then transmitted securely via Silent Post for processing to the NETBANX payment gateway. The customer remains on the merchant’s website at all times allowing the merchant to manage the customer experience. When the customer clicks on the Pay button, payment data is transmitted directly to NETBANX using a PCI-compliant process without accessing any merchant servers.
|
14 |
<br /> <br />
|
15 |
This integration significantly reduces PCI compliance requirements and liability as all of the credit card information is processed in Optimal Payments Level 1 PCI compliant environment and servers leaving no sensitive customer payment information stored locally on merchant servers.
|
16 |
<br /> <br />
|
17 |
-
Through the Optimal integration merchants also have the option to enable Threatmetrix fraud detection and management services. ThreatMetrix works by collecting relevant data about the customer and the order, and validating this information during the checkout. Fully integrated into the NETBANX payment gateway, enabling the ThreatMetrix option will allow merchants to automatically hold and flag suspicious orders, drastically reducing any fraud occurrences. Depending on the Score returned by ThreatMetrix an order can be held and flagged or altogether denied during the checkout
|
18 |
-
</
|
19 |
-
<notes>Fixed issues related to ThreatMetrix.</notes>
|
20 |
<authors><author><name>Demac Media</name><user>demacmedia</user><email>support@demacmedia.com</email></author></authors>
|
21 |
-
<date>2014-09-
|
22 |
-
<time>
|
23 |
-
<contents><target name="magecommunity"><dir name="Demac"><dir name="Optimal"><dir><dir name="Block"><dir name="Adminhtml"><dir name="Risk"><dir name="Edit"><file name="Form.php" hash="25d4bcb59e33a94799bc9f6cb0509cc3"/><dir name="Tab"><file name="Form.php" hash="3731d284c28ed279eb5e00b41f494810"/></dir><file name="Tabs.php" hash="61a8d2ac9942356db313b423fc3c47c2"/></dir><file name="Edit.php" hash="959e8af1e6aae6d02560c98bcabea5ab"/><file name="Grid.php" hash="e999f01578aac6084520029f86852c09"/></dir><file name="Risk.php" hash="6bf5127ba14f9dd38519c6b62203f1f8"/></dir><dir name="Customer"><dir name="Cards"><file name="Form.php" hash="ce79e221d5caf995a10e47cbb4e51f8b"/><file name="Grid.php" hash="d14eb692082fe1299977e7b3ee75dcf3"/></dir><file name="Cards.php" hash="f99686c2296a850312713f6aadc4d04a"/></dir><dir name="Form"><file name="Creditcard.php" hash="d3642d432409cf55069253680bf9ee34"/></dir><dir name="Info"><file name="Creditcard.php" hash="95d59f0f6bf250685499163b2f3843e5"/></dir><file name="Threat.php" hash="69605e0b8aacc80f47b5ed91e8631248"/></dir><dir name="Helper"><file name="Data.php" hash="
|
24 |
<compatible/>
|
25 |
<dependencies><required><php><min>5.3.0</min><max>5.5.16</max></php></required></dependencies>
|
26 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>666999</name>
|
4 |
+
<version>0.3.4</version>
|
5 |
+
<stability>devel</stability>
|
6 |
+
<license uri="http://opensource.org/licenses/gpl-license.php">GPL</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
+
<summary>Securely access and process online payments with the NETBANX payment gateway.</summary>
|
|
|
10 |
<description>The Optimal Payments NETBANX Hosted Payment Extension allows ecommerce businesses to securely accept and process online payments using Optimal’s NETBANX payment gateway and services. The integration is easy to implement and provides the ultimate in payment processing capabilities, fraud management, and reporting.
|
11 |
<br /> <br />
|
12 |
The Optimal Payments extension uses a Silent Post integration to the merchant’s website. During checkout, payment information is entered on the merchant website and then transmitted securely via Silent Post for processing to the NETBANX payment gateway. The customer remains on the merchant’s website at all times allowing the merchant to manage the customer experience. When the customer clicks on the Pay button, payment data is transmitted directly to NETBANX using a PCI-compliant process without accessing any merchant servers.
|
13 |
<br /> <br />
|
14 |
This integration significantly reduces PCI compliance requirements and liability as all of the credit card information is processed in Optimal Payments Level 1 PCI compliant environment and servers leaving no sensitive customer payment information stored locally on merchant servers.
|
15 |
<br /> <br />
|
16 |
+
Through the Optimal integration merchants also have the option to enable Threatmetrix fraud detection and management services. ThreatMetrix works by collecting relevant data about the customer and the order, and validating this information during the checkout. Fully integrated into the NETBANX payment gateway, enabling the ThreatMetrix option will allow merchants to automatically hold and flag suspicious orders, drastically reducing any fraud occurrences. Depending on the Score returned by ThreatMetrix an order can be held and flagged or altogether denied during the checkout.</description>
|
17 |
+
<notes>Improvements to ThreatMetrix Detection</notes>
|
|
|
18 |
<authors><author><name>Demac Media</name><user>demacmedia</user><email>support@demacmedia.com</email></author></authors>
|
19 |
+
<date>2014-09-08</date>
|
20 |
+
<time>18:29:46</time>
|
21 |
+
<contents><target name="magecommunity"><dir name="Demac"><dir name="Optimal"><dir><dir name="Block"><dir name="Adminhtml"><dir name="Risk"><dir name="Edit"><file name="Form.php" hash="25d4bcb59e33a94799bc9f6cb0509cc3"/><dir name="Tab"><file name="Form.php" hash="3731d284c28ed279eb5e00b41f494810"/></dir><file name="Tabs.php" hash="61a8d2ac9942356db313b423fc3c47c2"/></dir><file name="Edit.php" hash="959e8af1e6aae6d02560c98bcabea5ab"/><file name="Grid.php" hash="e999f01578aac6084520029f86852c09"/></dir><file name="Risk.php" hash="6bf5127ba14f9dd38519c6b62203f1f8"/></dir><dir name="Customer"><dir name="Cards"><file name="Form.php" hash="ce79e221d5caf995a10e47cbb4e51f8b"/><file name="Grid.php" hash="d14eb692082fe1299977e7b3ee75dcf3"/></dir><file name="Cards.php" hash="f99686c2296a850312713f6aadc4d04a"/></dir><dir name="Form"><file name="Creditcard.php" hash="d3642d432409cf55069253680bf9ee34"/></dir><dir name="Info"><file name="Creditcard.php" hash="95d59f0f6bf250685499163b2f3843e5"/></dir><file name="Threat.php" hash="69605e0b8aacc80f47b5ed91e8631248"/></dir><dir name="Helper"><file name="Data.php" hash="0329d97721ecb545681ff03425c76742"/></dir><dir name="Model"><dir name="Client"><file name="Abstract.php" hash="f83275be8d3b248eb145d45c2a926d84"/></dir><dir name="Config"><file name="Mode.php" hash="798d2a9bab2c0fc2749116ac1a3fc926"/><file name="Status.php" hash="767ba25406456aae4a0bd86b11023b45"/><file name="Transaction.php" hash="e83e8427e4b14c4d3cd83058c68f8965"/></dir><dir name="Creditcard"><file name="Client.php" hash="f1014811d23c1cf5efbccf61c3c6c80c"/></dir><file name="Creditcard.php" hash="26e89a35558c0692d5f90afdcad25c12"/><dir name="Hosted"><file name="Client.php" hash="6cfcae2d6ba921df9d3f3afd700661aa"/></dir><dir name="Merchant"><file name="Customer.php" hash="be743a5c7aababb9752bf961570b0c27"/></dir><dir name="Method"><file name="Hosted.php" hash="73d17f28feef44dfd2699f9d05c7ba7d"/></dir><dir name="Mysql4"><dir name="Creditcard"><file name="Collection.php" hash="700985c287355082a3966d4b3f74838f"/></dir><file name="Creditcard.php" hash="a4e5ea4090d2f127edd19de9d2feb343"/><dir name="Merchant"><dir name="Customer"><file name="Collection.php" hash="aa0fbf9c0cc0a3207565443e35ae3779"/></dir><file name="Customer.php" hash="fe991d98537b7b3a07160d5b9b10802d"/></dir><dir name="Profile"><file name="Collection.php" hash="f5cd814fe62d2af8fbcc2214f94bfeb4"/></dir><file name="Profile.php" hash="6944c811248ef955a51357989ca11dd3"/><dir name="Risk"><file name="Collection.php" hash="558dc26690672dc09ae6fbfa8e780302"/></dir><file name="Risk.php" hash="5c77111382678451da4dde209a43b0fa"/></dir><file name="Observer.php" hash="32ded6b8987067943ac349b6bab4ccea"/><dir name="Profile"><file name="Client.php" hash="4358736ced5bdc7d2a7fbbf53e2ff07d"/></dir><file name="Profile.php" hash="798cef09bbc0556545edf1f00bae9bf0"/><dir name="Resource"><dir name="Mysql4"><file name="Setup.php" hash="e936830d9e4f74badc3b7663f60436dc"/></dir></dir><file name="Risk.php" hash="fab5519b0e257b8ef2f66f5f76d49f2b"/><dir name="Sales"><file name="Order.php" hash="32320888ae209b1ea3208da59312da5c"/></dir><dir name="Source"><file name="Cctype.php" hash="dd21379a29444a4c58e33e90ddeb300e"/></dir><dir name="Web"><file name="Client.php" hash="d565e254fc281e7c246cc9cfe8c2f39d"/></dir></dir><dir name="Test"><dir name="Model"><dir name="Hosted"><file name="Client.php" hash="83e69edc0636294a7e6a93e8cd745b33"/></dir><dir name="Method"><file name="Hosted.php" hash="2acc5b7427dc4bb36b8ec8f75987cd1e"/></dir><file name="Observer.php" hash="581a5f9151aaffad292670af5118926f"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ThreatController.php" hash="5db39713fbd0ae13e943a891940bb22c"/></dir><dir name="Frontend"><file name="OptimalController.php" hash="e38a9e3e12fb7a3fec988e0daba4489f"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="964295d91c6f5e1fcbebda18b9ad54b5"/><file name="config.xml" hash="5b41822293f22b16877cd7119083ea04"/><file name="system.xml" hash="cd61f9cdb9b368fca29ab683d5350c93"/></dir><dir name="sql"><dir name="optimal_setup"><file name="install-0.1.1.php" hash="422b6afb2d2320f5d9c59cd5bff0dc3d"/><file name="install-0.2.0.php" hash="71dbb515c55c34f1910463d72f66f9d2"/><file name="install-0.2.1.php" hash="0bd65edba72966cffce19dd3c480863b"/><file name="install-0.2.2.php" hash="33bb51df7561eb747ee07d8e8aa43ce4"/><file name="install-0.2.3.php" hash="abafde589308828b601c306b45f1aa41"/><file name="install-0.2.4.php" hash="abafde589308828b601c306b45f1aa41"/><file name="install-0.2.5.php" hash="9a0bb5235e982cfc1794dd8d0172e26d"/><file name="install-0.2.6.php" hash="0a8eb965fa5af575593d09722b6712b1"/><file name="install-0.2.7.php" hash="0a8eb965fa5af575593d09722b6712b1"/><file name="install-0.2.9.php" hash="0a8eb965fa5af575593d09722b6712b1"/><file name="mysql4-install-0.1.1.php" hash="422b6afb2d2320f5d9c59cd5bff0dc3d"/><file name="mysql4-install-0.2.0.php" hash="71dbb515c55c34f1910463d72f66f9d2"/><file name="mysql4-install-0.2.1.php" hash="0bd65edba72966cffce19dd3c480863b"/><file name="mysql4-install-0.2.2.php" hash="33bb51df7561eb747ee07d8e8aa43ce4"/><file name="mysql4-install-0.2.3.php" hash="abafde589308828b601c306b45f1aa41"/><file name="mysql4-install-0.2.4.php" hash="abafde589308828b601c306b45f1aa41"/><file name="mysql4-install-0.2.5.php" hash="9a0bb5235e982cfc1794dd8d0172e26d"/><file name="mysql4-install-0.2.6.php" hash="0a8eb965fa5af575593d09722b6712b1"/><file name="mysql4-install-0.2.7.php" hash="0a8eb965fa5af575593d09722b6712b1"/><file name="mysql4-install-0.2.9.php" hash="0a8eb965fa5af575593d09722b6712b1"/><file name="mysql4-upgrade-0.1.1-0.2.7.php" hash="0a8eb965fa5af575593d09722b6712b1"/><file name="upgrade-0.1.1-0.2.7.php" hash="0a8eb965fa5af575593d09722b6712b1"/><file name="upgrade-0.2.9-0.3.0.php" hash="989e6c4043fccfa6cdcba0a09938dd07"/><file name="upgrade-0.3.1-0.3.2.php" hash="aea721b40772c92db786b96fbb9c8bda"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="optimal"><dir><dir name="form"><file name="creditcard.phtml" hash="550c80a4e0dc4224946de029f4c3ecf6"/></dir><dir name="info"><file name="creditcard.phtml" hash="642dd94f8c1b1e43fe89226b3a0eb02a"/></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="optimal"><dir><dir name="customer"><dir name="cards"><file name="form.phtml" hash="969544827b5e5765b6bb2bea2f62392a"/><file name="grid.phtml" hash="9a160522aa31ed44eb2f5751f40718c8"/></dir><file name="cards.phtml" hash="ed3f6e56b134674e7d8ddcb6a1deac59"/></dir><dir name="form"><file name="creditcard.phtml" hash="be04e0511fc1686ed7ea81c6e61e89ad"/></dir><dir name="info"><file name="creditcard.phtml" hash="d886bd24ae993548a3663b537e2456df"/></dir></dir><file name="threatmeter.phtml" hash="3dd0ea7621038895aa1dd1e322ba7d99"/></dir></dir><dir name="layout"><file name="optimal.xml" hash="d1154efa9a293770c76b98be4023ff08"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Demac_Optimal.xml" hash="2ebfc5a3a1c5688639c0cc5eb34fded0"/></dir></target></contents>
|
22 |
<compatible/>
|
23 |
<dependencies><required><php><min>5.3.0</min><max>5.5.16</max></php></required></dependencies>
|
24 |
</package>
|