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


3DS Enrollment Control – Function THREEDS

Function THREEDS is used to control the enrollment of a cardholder for 3DS enabled programs. This function allows for a card to be enrolled and unenrolled with our 3DS provider.

 

The language list (separated by commas) supports either the entire language name such as ENGLISH, FRENCH, SPANISH and GERMAN; or the first letter such as E, F, S and G.

Inputs Description Required Data Type
FunctionID THREEDS Y
P1 PAN or ALT ID Y (16,19) numeric
P2 Action. E to Enroll a card. U to Unenroll a card. Y (1) alpha – E or U
Language Acceptable inputs:
en_US
de_DE
es_ES
fr_FR
it_IT
nb_NO
sv_SE
pl_PL
pt_PT
ENGLISH
GERMAN
SPANISH
FRENCH
ITALIAN
NORWEGIAN
SWEDISH
POLISH
PORTUGUESE
Y varchar
MOBILE Country codes should follow the format of 001 or +1, no leading 0’s when using symbolic form. N alpha
SQ
SA
3DS Security question:
SQ – Security Question
SA – Security Answer
*Please see 3DS note on formatting below
N varchar
Outputs Description
P1 Error Code Y
P2 Error Text Y
Example: 3DS Enroll/Unenroll Card Request
https://api.m2fin.com:8443/AuthENGINAPI/AuthENGINAPI?CUSR=MyUserAccount&CPWD=MyPassword&MSGID=c9f1ce03-0582-4aa8-827f-bf7730bac848&FUNC=THREEDS&P1=123456******1111&P2=E&P3=en_US&MOBILE=0037128111111
Example: 3DS Enrollment Tries Response
P1=0000&P2=Card Enrolled
P1=0000&P2=Card Un-Enrolled
P1=0000&P2=Card Already Enrolled
P1=0000&P2=Card Not Enrolled
3DS Question Formatting:
URL Safe Base64 Encoded Question:
What was the color of your first car?
becomes
V2hhdCB3YXMgdGhlIGNvbG9yIG9mIHlvdXIgZmlyc3QgY2FyPw
3DS Answer Formatting:
All uppercased, SHA256 hashed, URL Safe Base64 Answer:
Blue
becomes
MjRhODY2ZjQ5NDBmMWIwMDA4M2E3MWJhNGRmNzMyM2JhYzE0ODZmMjhkYzgxZDUwMGJiYzRiYjAyYzZlMGUxNg