Initiate New Payment


Overview:

The Redirect Integration option for initiating a new payment involves the redirection of the customer to the Eazypay Hosted Payment Pages from the merchant web site. The merchant application needs to call the PaymentService API to get the redirection URL and any POST data, and additionally will need to process notifications or invoke API methods for checking the payment status afterwards.

Card Payments

Card Payments cover payments with cards belonging to the main card schemes - Visa, Mastercard, Diners, Amex.

Due to the complex lifecycle of card transactions there are a number of different payment methods used:

Backend2Backend Integration

To initiate a card deposit the initiatePayment web method should be invoked. The following table contains the fields to be sent in the specificPaymentAccountData xml section for card deposits:

key (value type, account type, required) value
CardNumber
(string,Cards, required)
PAN, e.g. 4111111111111111
CardVerificationCode
(string,Cards, conditional)
CVC, 3 or 4-digit number, e.g. 333
HolderName
(string,Cards, required)
Cardholder name, e.g. John Doe
ExpiryMonth
(string,Cards, required)
Expiration month of the card, e.g. 12
ExpiryYear
(string,Cards, required)
Expiration year of the card, e.g. 2019
Conditional CVC

CVC can be configured to be optional or mandatory based on the payment creation type. By default, PaymentService will treat CVC as mandatory.

Dynamic Billing Descriptor

Card Deposits can also be configured to support Dynamic Descriptors in order to display specific information on the cardholder's statement. Once this has been configured, the key-value PaymentDescription must be provided in the intiatePaymentRequest.specificPaymentData collection up to a length of no more than 25 characters.
Please contact Eazypay Support in order to set this up.

Example initiatePaymentRequest:

  • cURL
  • JSON
  • HTTP
  • PHP
							curl -X POST \
							  https://www.eazypay.eu/api/test/payment \
							  -H 'cache-control: no-cache' \
							  -H 'content-type: application/json' \
							  -d '{
							  "PublicKey": "PUBLICKEY",
							  "PrivateKey": "PRIVATEKEY",
							  "merchantTransactionID": "Uniuqee transaction id",
							  "amount": "12.00",
							  "userID": "userID",
							  "userIP": "127.0.0.1",
							  "userSessionID": "123",
							  "PaymentDescription": "payment description",
							  "CardNumber": "4111111111111111",
							  "CardVerificationCode": "111",
							  "HolderName": "Ciquar Smith",
							  "ExpiryMonth": "01",
							  "ExpiryYear": "2022"
							}'
						

initiatePaymentRequest fields
field (type, required) description
PublicKey
(stringID, required)
Public Key
PrivateKey
(stringID, required)
Private Key
merchantTransactionID
(stringID, required)
Merchant’s transaction ID, corresponding to the customer's order or any customer account-related activity at merchant (e.g. payout)
amount
(stringID, required)
Amount to be charged to the customer credit card or account at provider
Note: the amount to be charged includes the shopFee (for description see the following row)
Required for all payment methods except credit card verifications
userID
(stringID, required)
Customer ID
userIP
(IPAddress)
IP of the customer's browser whcih triggered the payment request
userSessionID
(stringID, required)
The session ID of the customer at the merchant web site
PaymentDescription
(stringID, required)
Payment Description
CardNumber
(string,Cards, required)
PAN, e.g. 4111111111111111
CardVerificationCode
(string,Cards, conditional)
CVC, 3 or 4-digit number, e.g. 333
HolderName
(string,Cards, required)
Cardholder name, e.g. John Doe
ExpiryMonth
(string,Cards, required)
Expiration month of the card, e.g. 12
ExpiryYear
(string,Cards, required)
Expiration year of the card, e.g. 2019
Capture Card Deposit

Every card deposit reaches the AuthorisedByProvider state after successful authorization (funds reserved but not debited yet). To capture the transaction either the automatic capturing in Eazypay PaymentService can be used, or the merchant can invoke the executePaymentAction web method with statuscode = 200 (Capture).

Merchant responsibility for Authorisation Reversals (Cancellations)

In case the merchant is not intending to capture the authorised card deposit and therefore no longer requires the amount to be held, the payment must be cancelled to return the amount to the customer’s card. This should be performed as soon as possible after the merchant is aware that it is not required to hold the amount any longer. The cancellation/reversal request will be sent immediately to the issuer and the funds will be available to the cardholder as soon as it is processed.
With this, merchants can ensure that cardholders are not negatively impacted by extended authorization holds against their accounts and that the money can be used for other purchases.

Example for capturing a card deposit:

  • cURL
  • JSON
  • HTTP
  • PHP
							curl -X POST \
							  https://www.eazypay.eu/api/test/capture-payment \
							  -H 'cache-control: no-cache' \
							  -H 'content-type: application/json' \
							  -d '{
								"PublicKey": "PUBLICKEY",
								"PrivateKey": "PRIVATEKEY",
								"paymentID": "PAYMENTID"
								}'
						

Refund Card Deposit

Every card deposit reaches the AuthorisedByProvider state after successful authorization (funds reserved but not debited yet). To capture the transaction either the automatic capturing in Eazypay PaymentService can be used, or the merchant can invoke the executePaymentAction web method with statuscode = 200 (Refund).

Merchant responsibility for Authorisation Reversals (Cancellations)

In case the merchant is not intending to capture the authorised card deposit and therefore no longer requires the amount to be held, the payment must be cancelled to return the amount to the customer’s card. This should be performed as soon as possible after the merchant is aware that it is not required to hold the amount any longer. The cancellation/reversal request will be sent immediately to the issuer and the funds will be available to the cardholder as soon as it is processed.
With this, merchants can ensure that cardholders are not negatively impacted by extended authorization holds against their accounts and that the money can be used for other purchases.

Example for refund a card deposit:

  • cURL
  • JSON
  • HTTP
  • PHP
							curl -X POST \
							  https://www.eazypay.eu/api/test/refund-payment \
							  -H 'cache-control: no-cache' \
							  -H 'content-type: application/json' \
							  -d '{
								"PublicKey": "PUBLICKEY",
								"PrivateKey": "PRIVATEKEY",
								"paymentID": "PAYMENTID"
							}'
						

Cancel Card Deposit

Every card deposit reaches the AuthorisedByProvider state after successful authorization (funds reserved but not debited yet). To capture the transaction either the automatic capturing in Eazypay PaymentService can be used, or the merchant can invoke the executePaymentAction web method with statuscode = 200 (Cancel).

Merchant responsibility for Authorisation Reversals (Cancellations)

In case the merchant is not intending to capture the authorised card deposit and therefore no longer requires the amount to be held, the payment must be cancelled to return the amount to the customer’s card. This should be performed as soon as possible after the merchant is aware that it is not required to hold the amount any longer. The cancellation/reversal request will be sent immediately to the issuer and the funds will be available to the cardholder as soon as it is processed.
With this, merchants can ensure that cardholders are not negatively impacted by extended authorization holds against their accounts and that the money can be used for other purchases.

Example for cancel a card deposit:

  • cURL
  • JSON
  • HTTP
  • PHP
							curl -X POST \
							  https://www.eazypay.eu/api/test/cancel-payment \
							  -H 'cache-control: no-cache' \
							  -H 'content-type: application/json' \
							  -d '{
								"PublicKey": "PUBLICKEY",
								"PrivateKey": "PRIVATEKEY",
								"paymentID": "PAYMENTID"
							}'
						

Ready to get started?

Get in touch or create an account.

Get an offer

Do have an up-and-running business and want an offer?

Do you have an established and sound business with a large payment volume? Then we’ll make you a customized solution.

Please contact us for a special offer.

Use our Contact Sale

Developers

Start integrating EazyPay products and tools?

Whether you’re a startup or a global enterprise, learn how to integrate with EazyPay to accept payments and manage your business online.

Please contact us for acccepting online payment

Use our Online Form Mail Us