Introduction to APIs

API General Message Layout and Requirements

API Message Format

About the Response to the User

About Response Time

Back Office Web Access

Currency Amounts and Conversion Instructions

PIN Encryption

Alternatives to Using Card Number in the CardAPI

API User Credentials

CardHolder API’s

Change Card Status – Function 004

Change Card PIN – Function 005

Deposit to Card Number – Function 007

Message Response Lookup – Function 008

View Statement Details by Card Number – Function 010

Validate PIN – Function 012

Set Card PIN – Function 022

Get Card Status – Function 023

Get Card Account Balance – Function 024

Cardholder Fees – Function 030

Adjustment – Function 031

Card Linking – Function 032

Card Inquiry – Function 033

Cash Out – Function 034

Card to Card Transfer – Function 035

Update Cardholder – Function 036

PIN Reset – Function 037

PIN Request – Function PINRequest

View Statement Details by Account Number – Function 039

Unlock Bad PIN Tries – Function 040

Set Condition Check for Existing Cardholder – Function SetCondCheck

Manage MCC Blocks – Function MCCBlock

Set Cardholder Level Limit – Function CardLimit

Get Configurable Card Limits – Function GetCardLimits

OFAC Check – Function 056

View Statement Details by Card Number (V2) – Function 070

3DS Enrolment Control – Function THREEDS

3DS Whitelist Management – Function Manage3DSWhitelist

Card Risk Level API Calls

Update Card Risk Level – Function = UpdateRiskLevel

Get Card Risk Level – Function = GetRiskLevel

Instant Card Issue – Function = InstantCardIssue

Specialized Financial Transactions

Validate Cardholder Verification Data – Function ValidateCVV2

Get Dynamic CVV (CVV3) – Function GetCVV3

General Web APIs

Change Password – ChangePswd

Message Heart Beat – Function 025

Wallet API Functions

Create Wallet for Existing Cardholder – Function CreateCardholderWallet

Create Wallet Multi-Currency Card Purse – Function CreateCardPurse

Retrieve Card Purse Identification from Wallet – Function GetCardPurses

Multi-currency Card Purse to Purse Transfer – Function PurseFundsTransfer

Processing Codes

Statements

Transaction Processing Codes

Response Codes

Card/Account Type Definitions

API Error Codes

FAQs


Card to Card Transfer – Function 035

Function 035 API call transfers the specified amount from one card to another card. If a fee is to be applied, the fee amount must be available on the source card for the transaction to be successful. This call helps avoid doing a withdrawal from one card then deposit to another. This call can also be utilized to load cards from a funding card.

Inputs Description Required Data Type
FunctionID 035 Y
P1 PAN OR ALT ID From Y (16,19) numeric
P2 Amount Y numeric
P3 Currency Code (ISO4217- Alpha) Y (3) varchar
P4 PAN OR ALT ID To Y (16,19) numeric
P5 Terminal Owner N (1,30) varchar
P6 Terminal Location N (1,30) varchar
P7 Terminal City N (1,13) varchar
P8 Terminal State N (2) varchar
P9 Terminal ID N (20) numeric, Right justified zero padded
P10 Country N (2,2) varchar
P11 Description N (1,30) varchar
P12 Settlement Currency Code (ISO4217- Alpha) N (3) varchar
directFee Populate this fee and AE will apply it as an adjustment. Do not use currency conversion with this fee – one-time fee applicable to this transaction N (0,6) numeric
Outputs Description
XML The data will be passed back in a well- formed XML document. The error code processing will be contained in the P1 node that contains two attributes err number and err description. Therefore, if the err number attribute is equal to “000” the document will contain a “TransferInfo” node; otherwise, it will not.
Example: Card-to-Card Transfer Request
https://api.m2fin.com:8443/AuthENGINAPI/AuthENGINAPI?CID=5&CUSR=myuseraccount&CPWD=pas
swor dassignedtome&FUNC=035&MSGID=00001089267447827&P1= PAN or ALT ID
FROM&P2=200&P3=USD&P4= PAN or ALT ID TO
Example: Card-to-Card Transfer Response
<?xml version=”1.0″ ?>
<api func=”035″>
<p1 errnumber=”0000″ errdescription=”” />
<TransferInfo>
<CardNumber>################</CardNumber>
<TransferAmount>200</TransferAmount>
<TransferBaseCurrency>840</TransferBaseCurrency>
<TransferFee>100</TransferFee>
<TransferToCardNumber>################</TransferToCardNumber>
</TransferInfo>
</api>