marcopolo Online payment
Sign up

Mastercard

Intro

Mastercard is one of the largest card brands in the world processing transactions in 210 countries. Established in 1966 by a group of US banks as Interbank Card Association payment instrument, it got its current name 13 years later, in 1979.

Mastercard Credit

Mastercard Credit is the main card brand in the Mastercard family.

Mastercard Debit

Debit Mastercard is accepted at millions of businesses online. Its acceptance network is as global as the one of Mastercard Credit Card.

Mastercard SecureCode

Mastercard SecureCode is a private code for Mastercard account that gives consumers an additional layer of online shopping security, similar to Visa's 3D Secure service.

Overview

Payment group:
Payment product id:
3
Key benefits
  • Real time authorisation
  • Secure payments
  • Fast settlement cycle
  • International acceptance

Countries & currencies

Supported countries

Supported currencies

  • Albanian lek (ALL)
  • Algerian dinar (DZD)
  • Angolan kwanza (AOA)
  • Argentine peso (ARS)
  • Armenian dram (AMD)
  • Aruban florin (AWG)
  • Australian dollar (AUD)
  • Azerbaijani manat (AZN)
  • Bahamian dollar (BSD)
  • Bahraini dinar (BHD)
  • Bangladeshi taka (BDT)
  • Barbados dollar (BBD)
  • Belarusian ruble (BYN)
  • Belize dollar (BZD)
  • Bermudian dollar (BMD)
  • Bhutanese ngultrum (BTN)
  • Boliviano (BOB)
  • Bosnia and Herzegovina convertible mark (BAM)
  • Botswana pula (BWP)
  • Brazilian real (BRL)
  • Brunei dollar (BND)
  • Bulgarian lev (BGN)
  • Burundian franc (BIF)
  • Cambodian riel (KHR)
  • Canadian dollar (CAD)
  • Cape Verde escudo (CVE)
  • Cayman Islands dollar (KYD)
  • CFA franc BCEAO (XOF)
  • CFA franc BEAC (XAF)
  • CFP franc (franc Pacifique) (XPF)
  • Chilean peso (CLP)
  • Chinese yuan (CNY)
  • Colombian peso (COP)
  • Comoro franc (KMF)
  • Congolese franc (CDF)
  • Costa Rican colon (CRC)
  • Croatian kuna (HRK)
  • Czech koruna (CZK)
  • Danish krone (DKK)
  • Djiboutian franc (DJF)
  • Dominican peso (DOP)
  • East Caribbean dollar (XCD)
  • Egyptian pound (EGP)
  • Eritrean nakfa (ERN)
  • Ethiopian birr (ETB)
  • Euro (EUR)
  • Falkland Islands pound (FKP)
  • Fiji dollar (FJD)
  • Gambian dalasi (GMD)
  • Georgian lari (GEL)
  • Ghanaian cedi (GHS)
  • Gibraltar pound (GIP)
  • Guatemalan quetzal (GTQ)
  • Guinean franc (GNF)
  • Guyanese dollar (GYD)
  • Haitian gourde (HTG)
  • Honduran lempira (HNL)
  • Hong Kong dollar (HKD)
  • Hungarian forint (HUF)
  • Icelandic króna (ISK)
  • Indian rupee (INR)
  • Indonesian rupiah (IDR)
  • Iraqi dinar (IQD)
  • Israeli new shekel (ILS)
  • Jamaican dollar (JMD)
  • Japanese yen (JPY)
  • Jordanian dinar (JOD)
  • Kazakhstani tenge (KZT)
  • Kenyan shilling (KES)
  • Kuwaiti dinar (KWD)
  • Kyrgyzstani som (KGS)
  • Lao kip (LAK)
  • Lebanese pound (LBP)
  • Lesotho loti (LSL)
  • Liberian dollar (LRD)
  • Libyan dinar (LYD)
  • Macanese pataca (MOP)
  • Macedonian denar (MKD)
  • Malagasy ariary (MGA)
  • Malawian kwacha (MWK)
  • Malaysian ringgit (MYR)
  • Maldivian rufiyaa (MVR)
  • Mauritanian ouguiya (MRO)
  • Mauritian rupee (MUR)
  • Mexican peso (MXN)
  • Moldovan leu (MDL)
  • Mongolian tugrik (MNT)
  • Moroccan dirham (MAD)
  • Mozambican metical (MZN)
  • Myanmar kyat (MMK)
  • Namibian dollar (NAD)
  • Nepalese rupee (NPR)
  • Netherlands Antillean guilder (ANG)
  • New Taiwan dollar (TWD)
  • New Zealand dollar (NZD)
  • Nicaraguan córdoba (NIO)
  • Nigerian naira (NGN)
  • Norwegian krone (NOK)
  • Omani rial (OMR)
  • Pakistani rupee (PKR)
  • Panamanian balboa (PAB)
  • Papua New Guinean kina (PGK)
  • Paraguayan guaraní (PYG)
  • Peruvian nuevo sol (PEN)
  • Philippine peso (PHP)
  • Polish zloty (PLN)
  • Pound sterling (GBP)
  • Qatari riyal (QAR)
  • Romanian new leu (RON)
  • Russian ruble (RUB)
  • Rwandan franc (RWF)
  • Saint Helena pound (SHP)
  • Salvadoran Colon (SVC)
  • Samoan tala (WST)
  • São Tomé and Príncipe dobra (STD)
  • Saudi riyal (SAR)
  • Serbian dinar (RSD)
  • Seychelles rupee (SCR)
  • Sierra Leonean leone (SLL)
  • Singapore dollar (SGD)
  • Solomon Islands dollar (SBD)
  • Somali shilling (SOS)
  • South African rand (ZAR)
  • South Korean won (KRW)
  • Sri Lankan rupee (LKR)
  • Surinamese dollar (SRD)
  • Swazi lilangeni (SZL)
  • Swedish krona/kronor (SEK)
  • Swiss franc (CHF)
  • Tajikistani somoni (TJS)
  • Tanzanian shilling (TZS)
  • Thai baht (THB)
  • Tongan paÊ»anga (TOP)
  • Trinidad and Tobago dollar (TTD)
  • Tunisian dinar (TND)
  • Turkish lira (TRY)
  • Turkmenistani manat (TMT)
  • Ugandan shilling (UGX)
  • Ukrainian hryvnia (UAH)
  • United Arab Emirates dirham (AED)
  • United States dollar (USD)
  • Uruguayan peso (UYU)
  • Uzbekistan som (UZS)
  • Vanuatu vatu (VUV)
  • Venezuelan bolívar (VEF)
  • Vietnamese dong (VND)
  • Yemeni rial (YER)
  • Zambian kwacha (ZMW)
  • Zimbabwe dollar (ZWD)

Integration

  • When using the Multi-Network Card Routing feature, you need to notify your customers accordingly. Depending on the integration mode, differences apply. Read our dedicated chapters below for instructions as to your obligations and options. Find detailed information in our dedicated guides about brand detection/preselection and brand ordering.
  • eftpos supports only direct sales operations. Therefore, we strongly recommend sending cardPaymentMethodSpecificInput.authorizationMode=SALE in all your CreateHostedCheckout/CreatePayment requests. Our platform will convert "FINAL_AUTHORIZATION" to "SALE" to ensure Multi-Network Cards are processed as eftpos transactions.

We offer this payment methods for the following integration modes. Learn in our dedicated guides about their individual differences:

Find a high level overview in the "Process flows" chapter.

Depending on the integration mode, differences apply:

Hosted Checkout Page

Add the following properties to a standard CreateHostedCheckout request:


{
	"HostedCheckoutSpecificInput": {
		"ReturnUrl": "https://yourReturnUrl.com"
	},
	"Order": {
		"AmountOfMoney": {
			"Amount": 100,
			"CurrencyCode": "AUD"
		}
	}
}
Properties Remarks

hostedCheckoutSpecificInput.returnURL

The URL we redirect your customers to after the payment has been finalised.

order.amountOfMoney
     amount
     currencyCode

amount: The gross amount you want to charge for this order.
currencyCode: The ISO 4217 currency code for this amount.

To allow our platform to route a Multi-Network Card transaction via eftpos, remove productpaymentId and add property groupCards=true in your request. Find detailed information in our dedicated guides about brand detection/preselection and brand ordering.

Find detailed information about this object and its properties in our CreateHostedCheckoutAPI.

Hosted Tokenization Page

Add the following properties to a standard CreatePayment request (including mandatory 3-D Secure properties) after you have tokenised the card:


{
	"CardPaymentMethodSpecificInput": {
		"Token": "tokenId",
		"ThreeDSecure": {
			"RedirectionData": {
				"ReturnUrl": "https://yourRedirectionUrl.com"
				}
			}
		},
		"Order": {
			"AmountOfMoney": {
				"Amount": 100,
				"CurrencyCode": "AUD"
			},
			"Customer": {
				"Device": {
                                "AcceptHeader": 
"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3", "Locale": "en_EN", "TimezoneOffsetUtcMinutes": -180, "UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36", "Browserdata": { "ColorDepth": 24, "JavaScriptEnabled": false, "ScreenHeight": "1080", "ScreenWidth": "1920" } } } } }
Properties Remarks

cardPaymentMethodSpecificInput.token

Token: The tokenised credit card credentials you have received by tokenising the credentials/getting the token. Learn more in our dedicated Hosted Tokenization Page guide.

cardPaymentMethodSpecificInput.threeDSecure 
     redirectionData.returnURL
     skipAuthentication

returnURL: The URL we redirect your customers to after the payment has been finalised.
skipAuthentication: Indicate whether to roll out 3-D Secure for this order.

order.amountOfMoney
     amount
     currencyCode

amount: The gross amount you want to charge for this order.
currencyCode: The ISO 4217 currency code for this amount.

customer.device
     acceptHeader
     locale
     timezoneOffsetUtcMinutes
     userAgent
     browserdata
          colorDepth
          javaScriptEnabled
          screenHeight
          screenWidth

Minimum properties to comply with SCA for 3-D Secure authentication.

Check our dedicated guide to learn how to request 3-D Secure correctly and our API reference for more information about the properties.

Add paymentProductFilters.exclude to your request to preselect the available brands in the Hosted Tokenization Page iframe, enabling/disabling the Multi-Network Card transaction respectively. To allow our platform to route a Multi-Network Card transaction via eftpos, remove productpaymentId and add property groupCards=true in your request. Find detailed information in our dedicated guides about brand detection/preselection and brand ordering.

Find detailed information about this object and its properties in our HostedTokenizationAPI/ CreatePaymentAPI.

Server-to-server

Add the following properties to a standard CreatePayment request (including mandatory 3-D Secure properties):

{
	"CardPaymentMethodSpecificInput": {
		"PaymentProductId": XXX,
		"SkipAuthentication": false,
		"Card": {
			"CardholderName": "John Doe",
			"CardNumber": "0000000000000000",
			"Cvv": 123,
			"ExpiryDate": 1236
		},
		"ThreeDSecure": {
			"RedirectionData": {
				"ReturnUrl": "https://yourRedirectionUrl.com"
			}
		}
	},
	"Order": {
		"AmountOfMoney": {
			"Amount": 100,
			"CurrencyCode": "AUD"
		},
		"Customer": {
			"Device": {
				"AcceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3",
				"Locale": "en_EN",
				"TimezoneOffsetUtcMinutes": -180,
				"UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36",
				"Browserdata": {
					"ColorDepth": 24,
					"JavaScriptEnabled": false,
					"ScreenHeight": "1080",
					"ScreenWidth": "1920"
				}
			}
		}
	}
}
Properties Remarks

cardPaymentMethodSpecificInput.paymentProductId

cardPaymentMethodSpecificInput.card
     cardholderName
     cardNumber
     cvv
     expiryDate

cardPaymentMethodSpecificInput.ThreeDSecure
     redirectionData.returnURL
     skipAuthentication

paymentProductId: The numeric identifier of the payment method on our platform. Find this id in the "Overview" chapter.


cardPaymentMethodSpecificInput.card: The credentials of the card used for the payment.
Make sure to fulfill the necessary PCI DSS requirements for sending sensitive data.

returnURL: The URL we redirect your customers to after the payment has been finalised.
skipAuthentication: Indicate whether to roll out 3-D Secure for this order.

order.amountOfMoney
     amount
     currencyCode

amount: The gross amount you want to charge for this order.
currencyCode: The ISO 4217 currency code for this amount.

customer.device
     acceptHeader
     locale
     timezoneOffsetUtcMinutes
     userAgent
     browserdata
          colorDepth
          javaScriptEnabled
          screenHeight
          screenWidth

Minimum properties to comply with SCA for 3-D Secure authentication.

Check our dedicated guide to learn how to request 3-D Secure correctly and our API reference for more information about the properties.

Find detailed information about this object and its properties in our CreatePaymentAPI.

Process flows

We offer this payment method for all our integration modes. Regardless of the mode you choose, the flow follows some basic steps as described below. Learn in our dedicated guides about the individual differences:

  1. Your customers finalise an order in your shop and select this payment method.
  2. You send a CreateHostedCheckout/CreatePayment request to our platform. Depending on your integration mode, differences apply. Check out the “Integration” chapter to find examples for each mode.
  3. Our platform sends you a response with instructions for the next steps of the flow.
  4. Your customers provide their credit card number and are redirected to their issuer for 3-D Secure authentication.
  5. Our system receives the 3-D authentication result from the issuer.
  6. We process the transaction and receive the result from the acquirer.
  7. We redirect your customer to your returnUrl
  8. You request the transaction result from our platform via GetPaymentDetails /GetHostedCheckout or receive the result via webhooks.
  9. If the transaction was successful, you can deliver the goods / service.

Testing

Refer to our Test cases for test data and detailed instructions.

Make sure to use the right endpoint and switch back to the live URL as soon as you have finished your tests.

Was this page helpful?

Do you have any comments?

Thank you for your response.