This guide shows which payments are supported by Netaxept, how they can be added and how that affects both, the payment flow and how to process these payments.
By now you know how the card payment flow works, and how card payments can be processed. This guide shows how alternate payments can be added and how that affects both, the payment flow and how to process these payments.
Here is a list of alternate payment methods that you might want to add:
- Direct bank
- Wallet based payment methods
- Gift cards
Get third party's agreements and credentials
To be able to use Direct bank payments, Invoices or Wallet based payment methods in your webshop, you need to sign an agreement with each particular provider you want to use.
After the chosen service has processed your agreement, they will provide you credentials which you need to enter to Netaxept Admin to activate the payment method in question. It is your responsibility to activate these payment methods in Netaxept Admin so please make sure all information entered is correct.
For Vipps you need to sign up with Vipps to get the merchant serial number. For MobilePay, you don't need any additional agreements. Please note, that Vipps and MobilePay are additional paid payment methods which means that you will be invoiced payment method specific fees in addition to the regular Netaxept monthly and transaction fees.
Please refer to the Swish section to learn about how to activate Swish.
Activate additional payment methods
Here is how to activate additional payment methods in Netaxept Admin:
- Log in to Netaxept Admin with your Netaxept credentials (test or production)
- Find the Agreement tab under Options.
- Choose the correct payment method from the drop down list and click "Add". • Choose the correct currency and enter the third party's credentials. The number of credentials varies between different providers, as does the terminology. • Save your changes by clicking "Add".
Please contact Netaxept Customer Support for your country if you want to activate Gift cards. Nets handles the activation of prepaid cards and can also make the configurations so that you are able to test prepaid cards in the test environment.
Please refer to the Swish section to learn about how to activate Swish.
Get payment details - Query call
The operations you can perform to process payments depend on the payment method chosen by the customer. For example, calls such as Process(AUTH), Process(CAPTURE) and Process(SALE), can't be performed on direct bank payments, since Netaxept triggers the AutoSale for the transaction.
To be sure about what payment method has been used, you must implement the Query call into your payment flow.
In addition to verifying the payment method used by the user, the Query call is useful in the following scenarios:
- If the payment method used by the customer is not known after the Register call and the Terminal phase, use the Query call to find out the payment method and then take further action based on that.
- If you receive an error, use the Query call to get the full information available to do the correct error handling.
- If you are unsure about the status of the transaction, use the Query call to check that the transaction has the correct status and the payment has succeeded. It is recommended to run the Query call before sending goods to the customer to verify that the money has actually been captured.
- If you have saved card details for subsequent payments, run the Query call on the initial transaction to find out the value of the
panHashparameter that needs to be stored on the customer profile for future purchases.
The Query call's response will contain the payment method information.
Query call example - line breaks for readability
https://test.epayment.nets.eu/Netaxept/Query.aspx? merchantId=[MERCHANTID]& token=[TOKEN]& transactionId=6c5e402a4ee445ba9f19411f55c75b91
As shown in this example, one required parameter of the Query call is the
transactionID. In order to get the necessary
transactionID you need to implement callback functionality.
We always suggest implementing callback functionality. Callbacks will send a
transactionId whenever the transaction has a new status. The Query call can be triggered by that event and get detailed information about the payment in question based on the
This is how a Query call's response could look like:
Query call response - example
<PaymentInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <MerchantId>[MERCHANTID]</MerchantId> <QueryFinished>2017-01-24T08:00:38.2923444+01:00</QueryFinished> <TransactionId>6c5e402a4ee445ba9f19411f55c75b91</TransactionId> <AuthenticationInformation/> <AvtaleGiroInformation/> <CardInformation> <ExpiryDate>1901</ExpiryDate> <Issuer>Visa</Issuer> <IssuerCountry>NO</IssuerCountry> <MaskedPAN>492500******0004</MaskedPAN> <PaymentMethod>Visa</PaymentMethod> <IssuerId>3</IssuerId> </CardInformation> <CustomerInformation> <Address1>Test road 1</Address1> <Address2/> <CompanyName>Test company</CompanyName> <CompanyRegistrationNumber/> <CustomerNumber>Cust30048</CustomerNumber> <Country>FI</Country> <Email>firstname.lastname@example.org</Email> <FirstName>Bill</FirstName> <IP>188.8.131.52</IP> <LastName>Buyer</LastName> <PhoneNumber>+35840123456</PhoneNumber> <Postcode>00510</Postcode> <SocialSecurityNumber/> <Town>Helsinki</Town> </CustomerInformation> <ErrorLog/> <History> <TransactionLogLine> <DateTime>2017-01-24T08:35:07.63</DateTime> <Description> This is a test transaction. Do not deliver the product. </Description> <Operation>Register</Operation> <TransactionReconRef>1084073201</TransactionReconRef> </TransactionLogLine> <TransactionLogLine> <BatchNumber>642</BatchNumber> <DateTime>2017-01-24T08:47:28.19</DateTime> <Description>184.108.40.206</Description> <Operation>Auth</Operation> <TransactionReconRef>1084073201</TransactionReconRef> </TransactionLogLine> <TransactionLogLine> <Amount>100</Amount> <BatchNumber>642</BatchNumber> <DateTime>2017-01-24T08:54:53.457</DateTime> <Description>220.127.116.11</Description> <Operation>Capture</Operation> <TransactionReconRef>1084073201</TransactionReconRef> </TransactionLogLine> </History> <OrderInformation> <Amount>100</Amount> <Currency>EUR</Currency> <Fee>0</Fee> <OrderDescription>Test transaction</OrderDescription> <OrderNumber>T12345</OrderNumber> <Timestamp>2017-01-24T08:35:07.63</Timestamp> <Total>100</Total> <RoundingAmount>0</RoundingAmount> </OrderInformation> <SecurityInformation> <CustomerIPCountry>FI</CustomerIPCountry> <IPCountryMatchesIssuingCountry>false</IPCountryMatchesIssuingCountry> </SecurityInformation> <Summary> <AmountCaptured>100</AmountCaptured> <AmountCredited>0</AmountCredited> <Annuled>false</Annuled> <Annulled>false</Annulled> <AuthorizationId>258460</AuthorizationId> <Authorized>true</Authorized> </Summary> <TerminalInformation> <Browser> Chrome-Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36 </Browser> <CustomerEntered>2017-01-24T07:40:44.760</CustomerEntered> <CustomerRedirected>2017-01-24T08:41:26.993</CustomerRedirected> </TerminalInformation> </PaymentInfo>