Overview
Mastercard Funding Transactions are transactions used to transfer funds to another account, wallet, person, or financial destination instead of purchasing goods or services.
Typical use cases include:
wallet funding
money transfers
account funding
gaming wallet top-ups
cryptocurrency account funding
securities / investment account funding
Paynetics supports Mastercard Funding Transactions through the existing Acquiring API integration for approved merchants and MCCs under the Mastercard Funding program. No new endpoint integration is required. Partners should continue using the standard Paynetics Acquiring API endpoint and request structure already implemented for card transactions. For Mastercard Funding Transactions, several existing API fields become mandatory as part of the transaction request. The standard Paynetics response structure and response codes remain unchanged.
MCCs in scope
The objective of this integration is to:
Replace standard purchase transactions with Mastercard Funding transactions for specific MCCs as per Mastercard's requirements.
Comply with Mastercard mandates, including submission of mandatory fields.
Mastercard Funding Transactions are supported only for approved Merchant categories and use cases. The following MCCs are currently in scope for Mastercard Funding processing:
MCC | Description |
|---|---|
4829 | Money Transfer |
6051 | Cryptocurrency / Quasi Cash |
6211 | Securities / Brokers / Dealers |
6538 | Funding Transactions for MoneySend |
6540 | Non-Financial Institutions - Stored Value / Wallet |
7994 | Video Game Arcades |
7995 | Gambling Transactions |
9406 | Government-Owned Lottery |
6012 | Financial institutions providing merchandise and services, including banks, credit unions, and loan servicing companies |
NOTE: The applicable MCC and use case are subject to Paynetics review and Mastercard approval requirements. Mastercard Funding scope is not determined solely by MCC, the determination is made by:
merchant business model,
use case,
transaction flows,
Mastercard rules,
Paynetics Underwriting/CardOps assessment.
Therefore a merchant can fall under the mandate even if its MCC is not explicitly listed in the partner guide. Wallet merchants, merchants using the payment page, or merchant using the API can potentially fall under the mandate.
Recipient currency
The supported Settlement currencies are EUR , USD, GBP, RON. There are no specific restrictions for processing currencies.
Country coverage
Standard restrictions and rules apply. In addition, Mastercard Funding Transactions are currently not supported for cards issued in:
United States (US)
Canada (CA)
Australia (AU)
If a partner attempts to process a Mastercard Funding Transaction for cards issued in these countries, Paynetics will return the standard response:
Response Code | Description |
|---|---|
operation_not_supported | Operation not supported |
No new response codes are introduced.
Money flow
The same as purchase transaction
Merchant Onboarding
Merchants must be approved and registered with Mastercard by Paynetics before processing Mastercard Funding Transactions. Mastercard Funding support is limited to approved MCCs and use cases.
Fees set-up
This transaction type will have different Interchange fees depending on the business case. The interchange fees for Mastercard Funding are in general higher than the ones for standard purchase transactions.
Reporting and reconciliation
No changes in the current reporting and reconciliation.
Profit share
No changes
Important Notes
No new API fields are introduced.
Existing Acquiring API integrations remain unchanged.
Existing authentication and endpoint configuration remain unchanged.
Existing response format and error handling remain unchanged.
The mandatory fields listed above must be included for Mastercard Funding Transactions.
Mastercard Funding Transactions for US, Canada, and Australia are currently not supported.
Merchants must be approved and registered with Mastercard by Paynetics before processing Mastercard Funding Transactions.
Mastercard Funding support is limited to approved MCCs and use cases.
Technical integration
Once you have integrated the solution, you will run a set of tests validated by Paynetics and you will be ready to move to production.
Executing MC funding
To execute Mastercard Funding use the
POST /v1/purchaseendpoint of the Acquiring API. Access to the Acquiring API swagger is private. It will be provided to you upon request.
Mastercard Funding Transactions Initiation:
Partners can submit transaction requests with the necessary MC funding-specific fields.
The API will validate all required fields to ensure accurate classification and processing. Paynetics will reject MC funding transactions with missing fields according to the requirements below.
Mandatory Fields for Mastercard Funding Transactions
The following fields already exist in the Paynetics API and must be submitted for Mastercard Funding Transactions along with the standard purchase fields.
Paynetics API field | Format | Notes |
|---|---|---|
aft.sender_account_number | 1–34 chars: latin letters, digits, #, +, space, should be a partner internal identificator (not IBAN or PAN) | Account being funded |
aft.account_owner_country | Exactly 3 capital letters (ISO alpha-3) | Country of account owner |
aft.recipient_name | Each 1–35 any chars. Full name must contain first and last name separated by space. |
Fields validations:
When receiving a request Paynetics will checks for the required fields and any field format validations and will reject the transactions if a required field for MC funding is missing or the validation does not pass.
Example request
{
"amount": 1,
"card_number": "string",
"cardholder_name": "string",
"currency": "string",
"cvv2": "123",
"card_expiration_month": "01",
"card_expiration_year": "string",
"eci": "05",
"cavv": "stringstringstringstringstri",
"directory_transaction_id": "stringstringstringstringstringstring",
"version": 2
}"aft": {
"sender_account_number": "efa213eab69d46c4a690",
"account_owner_country": "BGR",
"recipient_name": "John Doe"
},
"reference": "string"
}
}Example response
{
"code": 0,
"data": {
"card_number": "555555XXXXXX4444",
"processing_code": "000000",
"amount": 12.00,
"system_trace_number": "748868",
"local_time": "114556",
"local_date": "0325",
"authorization_code": "007680",
"response_code": "00",
"card_acceptor_identification_code": "",
"currency": "978",
"transaction": "9533fd25-04de-4d9b-b32a-122625b1083f",
"external_transaction_id": "032511455501007488680123608411748868",
"rrn": "608411748868",
"card": "34c593b2-1fc0-4eab-a7d4-84f03379d390",
"original_network_response_code": "00"
}
}
}Example unsupported country
{
"result": {
"code": "operation_not_supported",
"description": "Operation not supported"
}
}
}