Smart Routing
Smart Routing is a feature of the Netvale payment gateway that directs transactions to specific payment processors/mids based on defined rules.
Clients/Accounts can be associated with multiple sites, each of which can have multiple routing rules based on Currency, Country, Card Type, and BIN. Each routing rule includes configurations for Primary Mid, Retry Mid, Cascading details, Amount Limit config, etc.
Please reach out to the Netvalve Admin to enable Smart Routing configurations. For further information, please refer to the page below.
Integration steps
We require the addition of a new parameter (siteId
) in the following APIs.
e.g. "siteId": "0b81bdb1-d33b-48aa-8c48-a38f5cffd558"
Contact Netvalve Admin/Support to get siteId
and add that in your configuration same as midId
and netvalveMidId
Note:- To process transactions using smart routing, you need to send the siteId
parameter. Do not include the parameters midId
or netvalveMidId
in the API request. If either midId
or netvalveMidId
is included in the request, the transaction will be processed using the provided midId
or netvalveMidId
, and smart routing will not be utilized.
Sale / Authorization API:- added
siteId
instead ofmidId
/netvalveMidId
POST {{paymentApiUrl}}/sale AND POST {{paymentApiUrl}}/authorize Request json :- { "amount": 100.00, "cardExpireMonth": "XX", "cardExpireYear": "XXXX", "cardHolderName": {{cardHolderName}}, "cardSecurityCode": "XXX", "cardNumber": {{cardNumber}}, "clientOrderId": {{clientOrderId}}, "currency": {{currency}}, "customerAddress": {{customerAddress}}, "customerCity": {{customerCity}}, "customerCountryCode": {{customerCountryCode}}, "customerEmail": {{customerEmail}}, "customerIp": "123.123.123.123", "customerName": {{customerEmail}}, "customerFirstName": {{customerFirstName}}, "customerLastName": {{customerLastName}}, "customerPhone": {{customerPhone}}, "customerState": {{customerState}}, "customerZipCode": {{customerZipCode}}, "siteId": "0b81bdb1-d33b-48aa-8c48-a38f5cffd558" } There is no change in response json
Hosted payment page to create order API:- added
siteId
instead ofmidId
/netvalveMidId
POST {{hppApiUrl}}/hpp/order Request Json :- { "siteId": "0b81bdb1-d33b-48aa-8c48-a38f5cffd558", "amount": 0, "currency": "string", "netvalveMidId": "string", "clientOrderId": "string", "orderDesc": "string", "successUrl": "string", "cancelUrl": "string", "failedUrl": "string", "slimMode": true, "isBillingAndShippingDetailsSame": true, "customerDetails": { "customerIp": "string", "customerEmail": "string", "customerName": "string", "customerLastName": "string", "customerAddress": "string", "customerZipCode": "string", "customerCity": "string", "customerState": "string", "customerCountryCode": "st", "customerPhone": "string" }, "billingDetails": { "billingAddress": "string", "billingZipCode": "string", "billingCity": "string", "billingState": "string", "billingCountryCode": "st" }, "shippingDetails": { "shippingAddress": "string", "shippingZipCode": "string", "shippingCity": "string", "shippingState": "string", "shippingCountryCode": "st" }, "additionalParameters": { "property1": "string", "property2": "string" } } There is no change in response json
3DS Standalone API
3DS initialization:- added
siteId
instead ofmidId
/netvalveMidId
POST {{paymentApiUrl}}/3ds/initialization request json :- { "siteId": "0b81bdb1-d33b-48aa-8c48-a38f5cffd558" "cardNumber": "string", "cardExpireMonth": "string", "cardExpireYear": "stri", "cardHolderName": "string", "amount": 0, "currency": "string", "merchantRedirectUrl": "string" } There is no change in response json
3DS authentication:- Removed
midId
/netvalveMidId
3DS result:- Removed
midId
/netvalveMidId
Swagger API documentation is also updated in the Netvale documentation link below