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

Retrieve Card Purse Identification from Wallet – Function GetCardPurses

Retrieves purse account identification for an existing multi-currency Card. The multi-currency Card must have previously been assigned to a Wallet using the CardAPI function CreateCardholderWallet, and purses other than the default created and assigned using the CreateCardPurse function.

The Cardholder identification is passed to this function as either the PAN or the Cardholder ID alternate identifier (ALTID FLAG = H).

The Cardholder ID assigned to each of the purse accounts will be returned in the response along with the three- character alphanumeric currency code for each account. Every multi-currency card has a default purse associated with the Card as an account established under the Card’s Program/Binclient. Additional purses (established via the CreateCardPurse function) are 9-bin accounts setup under the Binclient defined for their specific currency type.

The identifiers returned for each purse may be used for subsequent CardAPI transactions such as inquiries, loads or purse transfers.

Inputs Description Required Data Type
FunctionID GetCardPurses Y
P1 PAN OR ALT ID ’H’ Y (12…24) Alphanumeric
Output 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: errnumber
and errdescription.
Therefore, if the errnumber
attribute is equal to “000”
the document will contain a
“cardinfo” node; otherwise,
it
will not.
Y
Example: CreateCardPurses Request
https://api.m2fin.com:9000/AuthENGINAPI/AuthENGINAPI?CID=5&CUSR=myuserid&CPWD=mypassword&FUNC=GetCardPurses&MSGID=00005539228226466&P1=H301420041023
Example: CreateCardPurses Response
<?xml version=”1.0”?>
<api func=”GetCardPurses”>
<p1 errnumber=”000″ errdescription=”” />
<cardinfo id=”cardholderid”>
<purses>
<purse>
<id>identifier</id><currency>XXX</currency>
</purse>
</purses>
</cardinfo>
</api>
<?xml version=”1.0”?>
<api func=”GetCardPurses”>
<p1 errnumber=”000″ errdescription=”” />
<cardinfo id=”301420041023″>
<purses>
<purse>
<id>301420041023</id><currency>GBP</currency>