SaFi Bank Space : SaFi-Euronet Card Transaction API Guide v1.7

This will serve as a guide for third party users (Euronet) on how they can use our bank's gateway APIs related to card transactions.

Content:

I. Payment Transaction API

II. Withdrawal Transaction API

III. Reversal Transaction API

IV. Balance Inquiry API

V. Account Verification API

VI. Reconciliation Process

VII. Data Elements


I. Payment transaction (apply to POS payment & e-commerce):

  1. To trigger a pre-authorization transaction, user shall call the outbound-auth API: https://api.smallog.tech/euronet-gateway/transaction/card-outbound-auth with the fields shown in sample 1.1.

  2. The user will get response (sample 1.2) synchronously with a status code indicating whether the transaction amount is in authorization withhold in CBS successfully.

Sample 1.1: payment transaction sample request

curl --location --request POST 'https://api.smallog.tech/euronet-gateway/transaction/card-outbound-auth' \
--header 'idempotency-key: 69ed5ef2-3a25-4cb4-9c71-b9d367178149' \
--header 'Content-Type: application/json' \
--data-raw '{
    "data": {
      "mti": "0100",
      "processingCode": "1000",
      "transactionID": "123456789012345",
      "RRN": "000584512380",
      "transactionCode": "DOMESTIC_PAYMENT",
      "categoryCode": "POS",
      "proxyNumber": "123456789",
      "cardVendor": "MASTERCARD",
      "transactionAmount": 100.00,
      "transactionCurrencyCode": "PHP",
      "cardHolderBillingAmount": 0,
      "cardHolderCurrencyCode": "PHP",
      "feeAmount": 0,
      "feeCurrency": "PHP",
      "transmissionDateTime": "string",
      "systemTraceAuditNumber": "string",
      "localTransactionDateTime": "string",
      "merchantCategoryCode": "string",
      "acquirerCountryCode": "string",
      "panEntryMode": "string",
      "networkID": "string",
      "PosDataSF4": "string",
      "PosDataSF5": "string",
      "PosDataSF7": "string",
      "PosDataSF10": "string",
      "acquirerID": "string",
      "retrievalReferenceNumber": "string",
      "authorizationID": "123456",
      "cardAcceptorTerminalID": "string",
      "cardAcceptorMerchantID": "string",
      "cardAcceptorTermName": "string",
      "OrgtransactionID": "string",
      "threeDsAuthTID": "string",
      "DCCIndicator": "string",
      "ECOMindicator": "string",
      "UCAFIndicator": "string",
      "threeDsValidation": "string",
      "PANValidation": "string",
      "expiryDateValidation": "string",
      "pinValidation": "string",
      "CVVValidation": "string",
      "CVV2Validation": "string",
      "EMVValidation": "string",
      "MSTransactionTypeId": "string",
      "MSTransactionRefData": "string"
    },
    "signature": "i13bj12h3iou123ionasdasd"
}'

Sample 1.2: payment transaction sample response:

{
  "transactionId": "123456789012345",
  "RRN": "000584512380",
  "status": "SUCCESS",
  "responseCode": "00",
  "authorizationId": "123456"
}


II. Withdrawal transaction (apply to ATM withdraw):

  1. To trigger a withdrawal transaction, user shall call the transfer API: https://api.smallog.tech/euronet-gateway/transaction/card-transfer with the fields shown in Sample 2.1.

  2. User will get response (sample 2.2) synchronously with a status code indicating whether the transaction amount is accepted in CBS.

Sample 2.1: withdrawal transaction sample request

curl --location --request POST 'https://api.smallog.tech/euronet-gateway/transaction/card-transfer' \
--header 'idempotency-key: 69ed5ef2-3a25-4cb4-9c71-b9d367178149' \
--header 'Content-Type: application/json' \
--data-raw '{
    "data": {
      "mti": "0100",
      "processingCode": "0100",
      "transactionID": "123456789012345",
      "RRN": "000584512380",
      "transactionCode": "EXTERNAL_ATM_WITHDRAWAL",
      "categoryCode": "ATM",
      "proxyNumber": "123456789",
      "cardVendor": "MASTERCARD",
      "transactionAmount": 100.00,
      "transactionCurrencyCode": "PHP",
      "cardHolderBillingAmount": 0,
      "cardHolderCurrencyCode": "PHP",
      "feeAmount": 0,
      "feeCurrency": "PHP",
      "transmissionDateTime": "string",
      "systemTraceAuditNumber": "string",
      "localTransactionDateTime": "string",
      "merchantCategoryCode": "string",
      "acquirerCountryCode": "string",
      "panEntryMode": "string",
      "networkID": "string",
      "PosDataSF4": "string",
      "PosDataSF5": "string",
      "PosDataSF7": "string",
      "PosDataSF10": "string",
      "acquirerID": "string",
      "retrievalReferenceNumber": "string",
      "authorizationID": "123456",
      "cardAcceptorTerminalID": "string",
      "cardAcceptorMerchantID": "string",
      "cardAcceptorTermName": "string",
      "OrgtransactionID": "string",
      "threeDsAuthTID": "string",
      "DCCIndicator": "string",
      "ECOMindicator": "string",
      "UCAFIndicator": "string",
      "threeDsValidation": "string",
      "PANValidation": "string",
      "expiryDateValidation": "string",
      "pinValidation": "string",
      "CVVValidation": "string",
      "CVV2Validation": "string",
      "EMVValidation": "string",
      "MSTransactionTypeId": "string",
      "MSTransactionRefData": "string"
    },
    "signature": "i13bj12h3iou123ionasdasd"
}'

Sample 2.2: withdrawal transaction sample response:

{
  "transactionId": "123456789012345",
  "RRN": "000584512380",
  "status": "SUCCESS",
  "responseCode": "00", 
  "authorizationId": "123456"
}


III. Reversal / Partial-reversal transaction API

  1. To trigger a reversal transaction, user shall call the card-reverse API: https://api.smallog.tech/euronet-gateway/transaction/card-reverse with the request fields shown in Sample 3.1.

  2. User will get response synchronously as shown in sample 3.2.

Sample 3.1: reversal transaction sample request

curl --location --request POST 'https://api.smallog.tech/euronet-gateway/transaction/card-reversal' \
--header 'idempotency-key: 69ed5ef2-3a25-4cb4-9c71-b9d367178149' \
--header 'Content-Type: application/json' \
--data-raw '{
    "data": {
      "mti": "0100",
      "processingCode": "0100",
      "transactionID": "123456789012345",
      "RRN": "000584512380",
      "transactionCode": "DOMESTIC_PAYMENT",
      "categoryCode": "POS",
      "proxyNumber": "123456789",
      "cardVendor": "MASTERCARD",
      "transactionAmount": 100.00,
      "replacementAmount": 50.00,
      "transactionCurrencyCode": "PHP",
      "cardHolderBillingAmount": 0,
      "cardHolderReplacementAmount": 0,
      "cardHolderCurrencyCode": "PHP",
      "feeAmount": 0,
      "feeCurrency": "PHP",
      "transmissionDateTime": "string",
      "systemTraceAuditNumber": "string",
      "localTransactionDateTime": "string",
      "merchantCategoryCode": "string",
      "acquirerCountryCode": "string",
      "panEntryMode": "string",
      "networkID": "string",
      "PosDataSF4": "string",
      "PosDataSF5": "string",
      "PosDataSF7": "string",
      "PosDataSF10": "string",
      "acquirerID": "string",
      "retrievalReferenceNumber": "string",
      "authorizationID": "123456",
      "cardAcceptorTerminalID": "string",
      "cardAcceptorMerchantID": "string",
      "cardAcceptorTermName": "string",
      "OrgtransactionID": "string",
      "threeDsAuthTID": "string",
      "originalTransactionID": "string",
      "originalDataElements": "string",
      "DCCIndicator": "string",
      "ECOMindicator": "string",
      "UCAFIndicator": "string",
      "threeDsValidation": "string",
      "PANValidation": "string",
      "expiryDateValidation": "string",
      "pinValidation": "string",
      "CVVValidation": "string",
      "CVV2Validation": "string",
      "EMVValidation": "string",
      "MSTransactionTypeId": "string",
      "MSTransactionRefData": "string"
    },
    "signature": "i13bj12h3iou123ionasdasd"
}'

Sample 3.2: reversal transaction sample response:

{
  "transactionId": "123456789012345",
  "RRN": "000584512380",
  "status": "SUCCESS",
  "responseCode": "00", 
  "authorizationId": "123456"
}


IV. Balance Inquiry:

  1. To trigger a balance inquiry transaction, user shall call the get-balance API: https://api.smallog.tech/euronet-gateway/cards/get-balance with the request fields shown in Sample 4.1.

  2. User will get response synchronously as shown in sample 4.2.

Sample 4.1: balance inquiry sample request

curl --location --request POST 'https://api.smallog.tech/euronet-gateway/cards/get-balance' \
--header 'idempotency-key: 69ed5ef2-3a25-4cb4-9c71-b9d367178149' \
--header 'Content-Type: application/json' \
--data-raw '{
    "data": {
      "mti": "0100",
      "processingCode": "0100",
      "transactionID": "123456789012345",
      "RRN": "000584512380",
      "transactionCode": "INTERNATIONAL_BALANCE_INQUIRY",
      "categoryCode": "POS",
      "proxyNumber": "123456789",
      "cardVendor": "MASTERCARD",
      "transactionAmount": 100.00,
      "transactionCurrencyCode": "PHP",
      "cardHolderBillingAmount": 0,
      "cardHolderCurrencyCode": "PHP",
      "feeAmount": 0,
      "feeCurrency": "PHP",
      "transmissionDateTime": "string",
      "systemTraceAuditNumber": "string",
      "localTransactionDateTime": "string",
      "merchantCategoryCode": "string",
      "acquirerCountryCode": "string",
      "panEntryMode": "string",
      "networkID": "string",
      "PosDataSF4": "string",
      "PosDataSF5": "string",
      "PosDataSF7": "string",
      "PosDataSF10": "string",
      "acquirerID": "string",
      "retrievalReferenceNumber": "string",
      "authorizationID": "123456",
      "cardAcceptorTerminalID": "string",
      "cardAcceptorMerchantID": "string",
      "cardAcceptorTermName": "string",
      "OrgtransactionID": "string",
      "threeDsAuthTID": "string",
      "DCCIndicator": "string",
      "ECOMindicator": "string",
      "UCAFIndicator": "string",
      "threeDsValidation": "string",
      "PANValidation": "string",
      "expiryDateValidation": "string",
      "pinValidation": "string",
      "CVVValidation": "string",
      "CVV2Validation": "string",
      "EMVValidation": "string",
      "MSTransactionTypeId": "string",
      "MSTransactionRefData": "string"
    },
    "signature": "i13bj12h3iou123ionasdasd"
}'

Sample 4.2: balance inquiry sample response

{
  "transactionId": "123456789012345",
  "RRN": "000584512380",
  "status": "SUCCESS",
  "responseCode": "00", 
  "authorizationId": "123456"
  "balanceAmount": 0,
  "balanceCurrency": "PHP",
  "feeAmount": 0,
  "feeCurrency": "PHP"
}

V. Account Verification

  1. Account verification service in CBS includes:

    1. card status verification

    2. customer verification

    3. customer account status verification

    4. balance checking

  2. To trigger an account verification service, user shall call the verify API: https://api.smallog.tech/euronet-gateway/cards/verify with the request fields shown in Sample 4.1.

  3. User will get response synchronously as shown in sample 4.2.

Sample 4.1: account verification sample request

curl --location --request POST 'https://api.smallog.tech/euronet-gateway/cards/verify' \
--header 'idempotency-key: 69ed5ef2-3a25-4cb4-9c71-b9d367178149' \
--header 'Content-Type: application/json' \
--data-raw '{
    "data": {
      "mti": "0100",
      "processingCode": "0100",
      "transactionID": "123456789012345",
      "RRN": "000584512380",
      "transactionCode": "DOMESTIC_PAYMENT",
      "categoryCode": "POS",
      "proxyNumber": "123456789",
      "cardVendor": "MASTERCARD",
      "transactionAmount": 100.00,
      "transactionCurrencyCode": "PHP",
      "cardHolderBillingAmount": 0,
      "cardHolderCurrencyCode": "PHP",
      "feeAmount": 0,
      "feeCurrency": "PHP",
      "transmissionDateTime": "string",
      "systemTraceAuditNumber": "string",
      "localTransactionDateTime": "string",
      "merchantCategoryCode": "string",
      "acquirerCountryCode": "string",
      "panEntryMode": "string",
      "networkID": "string",
      "PosDataSF4": "string",
      "PosDataSF5": "string",
      "PosDataSF7": "string",
      "PosDataSF10": "string",
      "acquirerID": "string",
      "retrievalReferenceNumber": "string",
      "authorizationID": "123456",
      "cardAcceptorTerminalID": "string",
      "cardAcceptorMerchantID": "string",
      "cardAcceptorTermName": "string",
      "OrgtransactionID": "string",
      "threeDsAuthTID": "string",
      "DCCIndicator": "string",
      "ECOMindicator": "string",
      "UCAFIndicator": "string",
      "threeDsValidation": "string",
      "PANValidation": "string",
      "expiryDateValidation": "string",
      "pinValidation": "string",
      "CVVValidation": "string",
      "CVV2Validation": "string",
      "EMVValidation": "string",
      "MSTransactionTypeId": "string",
      "MSTransactionRefData": "string"
    },
    "signature": "i13bj12h3iou123ionasdasd"
}'

Sample 4.2: account verification sample response

{
  "transactionId": "123456789012345",
  "RRN": "000584512380",
  "status": "SUCCESS",
  "responseCode": "00",
  "authorizationId": "123456"
}

VI. Reconciliation Process

Euronet and AIG shall conduct reconciliation on T+1 basis, and the reconciliation source are the four types of reports:

Report Name

Description

Reconciled Report

contains transactions to be settled with no issue

Unreconciled Report

contains exception transactions which need to be settled or reversed

the report shall contain “originalDataElement” and “originalTransactionID” for transactions to be reverse to customer

Refund Report

contains transactions to release the blocked amount

the report shall contain “originalDataElement” and “originalTransactionID” for transactions to be reverse to customer

Amount Difference Report

contains transactions which settlement amount is to be adjusted

Procedure to conduct a reconciliation process:

  1. Euronet will upload the reports into the AIG’s FTP folder with specific report folder

  2. AIG will consume the uploaded report with a cloud function

  3. Transactions extracted from report are to be fed in specific Kafka topic

  4. CBS will consume the transactions in Kafka topic and proceed accordingly

Example:


VII. Data Elements

Name

Data Type

Max

WDL

ECOM

POS

Money Send

Description

mti

string

4

M

M

M

M

Message Type Identifier

proxyNumber

string

20

M

M

M

M

unique identifier for a card

processingCode

string

6

M

M

M

M

Refer to processing codes section

transactionAmount

int

20

M

M

M

M

Transaction amount is the value dispensed / entered at transaction origination. The decimal value is decided from the Currency code. ISO 4217. This denotes the original currency or acquirer currency, need not be PHD(home currency).

When Reversal:

In case transaction is in local currency only this field will be present. So Original debit posting to be reversed or say this amount to be reversed.

cardHolderBillingAmount

int

20

M

M

M

M

Cardholder amount is transaction amounted converted to local currency amount, (PHD)

When Reversal:

In case transaction is international transaction this field will be present along with above field (absent in case of domestic transaction). So Original debit posting to be reversed or say this amount to be reversed.

replacementAmount

int

20

O

O

O

O

When Partial-Reversal:

This field needs to be checked in reversal transaction. If present this is partial reversal domestic transaction. This original transaction needs to be reversed and amount present in this field needs to be debited.

cardHolderReplacementAmount

int

20

O

O

O

O

When Partial-Reversal:

This field needs to be checked in reversal transaction. If present this is partial reversal international transaction. This original transaction needs to be reversed and amount present in this field needs to be debited.

transmissionDateTime

string

36

M

M

M

M

Transmission Date and Time to be sent in ISO 8601 format, eg: 2022-01-25T04:01:52Z, in SGT format

systemTraceAuditNumber

string

6

M

M

M

M

Number to trace in euronet system

localTransactionDateTime

string

36

M

M

M

M

Local Transaction Date and Time at the acquirer side to be sent in MMDDhhmmss.
(Time zone is not known) ISO 8601 format, eg: 2022-01-25T04:01:52Z

merchantCategoryCode

string

4

M

M

M

M

Merchant Category Code

acquirerCountryCode

string

3

C

C

C

C

Acquirer bank country code to be passed in numeric code in ISO 4217. This field will tell where the txn is performed. Currently not used in MC platform

panEntryMode

string

3

M

M

M

M

PAN entry mode, see complete list below

networkID

string

3

M

M

M

M

“MCN” Mastercard Network

PosDataSF4

string

1

M

M

M

M

POS Cardholder Presence indicates whether the cardholder is
present at the point of service and explains the condition if the cardholder is not
present.

PosDataSF5

string

1

M

M

M

M

POS Card Presence indicates if the card is present at the point
of service.

PosDataSF7

string

1

M

M

M

M

POS Transaction Status indicates the purpose or status of the request.

PosDataSF10

string

1

M

M

M

M

Cardholder-Activated Terminal Level indicates the type of cardholder activated terminal used by the cardholder to initiate the transaction

acquirerID

string

11

M

M

M

M

Unique id for Acquirer bank

retrievalReferenceNumber

string

12

M

M

M

M

Retrieval reference number can be used to trace the transaction from acquirer, scheme and euronet. Generated by acquirer, unique for that particular txn. Can be duplicated across different acquirers.

authorizationID

string

6

M

M

M

M

Authorization ID, to be generated by EN and sent this request.

cardAcceptorTerminalID

string

16

M

C

M

M

Merchant Terminal ID/ ATM ID

cardAcceptorMerchantID

string

16

M

M

M

M

Merchant ID/ For ATM what will this be?

cardAcceptorTermName

string

40

M

M

M

M

Merchant name and description/ ATM Name and location.
Refers to DE43 in MC specs.
Use last three characters of this field to identify DCC.
If PH or PHL then local,
if not PH or PHL, then can be fx or dcc.
If transactionCurrencyCode is 608, then DCC. else fx.

transactionCurrencyCode

string

3

M

M

M

M

Transaction currency represents the currency in which transaction was performed. Format: ISO 4217, for example USD, need not be home currency.

cardHolderCurrencyCode

string

3

M

M

M

M

Cardholder currency represents the currency of issuer ISO 4217, home currency

transactionID

string

15

M

M

M

M

Unique ID for all transaction requests across MC EN and AIG,

OrgtransactionID

string

15

O

C

C

O

This field will be used in follow up transactions like incremental auth, reversals and advice of the original transactions.

threeDsAuthTID

string

36

O

C

O

O

The Directory Server Transaction ID is generated by the EMV 3DS Mastercard
Directory Server during the authentication transaction. Transaction ID during authorization in order to link authentication and authorization data.

DCCIndicator*

string

1

C

C

C

O

Only populated for DCC Txn

ECOMindicator

string

2

O

C

O

O

Ecommerce Indicator.
This field will represent if its Ecommerce Transaction or Tokenized Payment transaction.

UCAFIndicator

string

1

O

C

O

O

UCAF Collection Values represeting security of Ecommerce Transaction

threeDsValidation

string

1

O

C

O

O

This will be populated when Switch validates IAV successfully

PANValidation

string

1

M

M

M

M

PANValidation.

P – Performed ;N – Not-performed

expiryDateValidation

string

1

M

M

M

M

Expiry date validation,

P – Performed ;N – Not-performed

pinValidation

string

1

M

O

C

O

Pin validation check. Only present if transaction is PIN base transaction. Like For ATM txns.

P – Performed ;N – Not-performed

CVVValidation

string

1

M

O

M

O

CVV Validation. Only present if transaction is Card base transaction. CVV is present in the physical card mag data.

P – Performed ;N – Not-performed

CVV2Validation

string

1

O

C

O

O

CVV2 Validation. Only present if transaction is Non-Card base transaction

P – Performed ;N – Not-performed

EMVValidation

string

1

M

O

M

O

EMV Validation. Only present if transaction is EMV Card base transaction

P – Performed ;N – Not-performed

MSTransactionTypeId

String

3

O

O

O

C

Transaction Type Identifier used to identify type / mode of funding

Valid Values
C07 = MoneySend Person-to-Person
C52 = MoneySend Account-to-Account Transfers
C53 = MoneySend Agent Cash Out
C54 = MoneySend Credit Card Bill Payment
C55 = MoneySend Business Disbursement
C56 = MoneySend Government/Nonprofit Disbursement
C57 = MoneySend Acquirer Merchant Settlement
C58 = MoneySend Cash2ATM
C59 = MoneySend Cash2Card
C65 = MoneySend Business to Business Transfer

MSTransactionRefData

String

358

O

O

O

C

Additional transaction reference Data containing Sender Data

Will be forwarded as received from MC.

RRN

String

M

M

M

M

cardVendor

String

M

M

M

M

  • MASTERCARD

  • BANCNET

  • SAFI

feeAmount

int

O

O

O

O

feeCurrency

String

C

C

C

C

transactionCode

String

M

M

M

M

  • DOMESTIC_PAYMENT

  • INTERNATIONAL_PAYMENT

  • DOMESTIC_VOID_PAYMENT

  • INTERNATIONAL_VOID_PAYMENT

  • SAFI_ATM_WITHDRAWAL

  • EXTERNAL_ATM_WITHDRAWAL

  • INTERNATIONAL_ATM_WITHDRAWAL

  • SAFI_ATM_TRANSFER

  • EXTERNAL_ATM_TRANSFER

  • INTERNATIONAL_BALANCE_INQUIRY

  • EXTERNAL_BALANCE_INQUIRY

categoryCode

String

M

M

M

M

  • ATM

  • POS

  • ECOMM

PAN Entry Mode

Value

Description

00

PAN entry mode unknown

01

PAN manual entry

02

PAN auto-entry via magnetic stripe—track data is not required.

OR

The acquirer is not qualified to submit magnetic stripe transactions, so Mastercard replaced value 90 or 91 with value 02.

03

PAN auto-entry via bar code reader

04

PAN auto-entry via optical character reader (OCR)

05

PAN auto-entry via chip

07

PAN auto-entry via contactless M/Chip

09

PAN/Token entry via electronic commerce containing DSRP cryptogram in DE 55 (Integrated Circuit Card [ICC] System-Related Data).

10

Credential on File

79

A hybrid terminal with an online connection to the acquirer failed in sending a chip fallback transaction (in which DE 22, subfield 1 = 80) to the issuer.

or

A hybrid terminal with no online connection to the acquirer failed to read the chip card. The merchant is prompted to read the magnetic stripe from the card, the magstripe is successfully read and indicates a service code 2XX (or 6XX if card is domestic).

To complete the transaction in both cases, a voice transaction takes place during which the merchant communicates the PAN and the expiry date originating from the magstripe track 2 data to the acquirer. The acquirer then sends an online transaction to the issuer in which the value of DE 22, subfield 1 = 79 and in which DE 61 subfield 11 indicate that the terminal is chip capable.

Refer to the M/Chip Requirements for additional information.

80

Chip card at chip-capable terminal was unable to process transaction using data on the chip; therefore, the terminal defaulted to the magnetic stripe-read PAN.

The full track data has been read from the data encoded on the card and transmitted within the Authorization Request/0100 in DE 45 (Track 1 Data) or DE 35 (Track 2 Data) without alteration or truncation.

To use this value, the acquirer must be qualified to use value 90.

81

PAN/Token entry via electronic commerce with optional Identity Check-AAV or DSRP cryptogram in UCAF.

82

PAN Auto Entry via Server (issuer, acquirer, or third party vendor system).

90

PAN auto-entry via magnetic stripe—the full track data has been read from the data encoded on the card and transmitted within the authorization request in DE 35 (Track 2 Data) or DE 45 (Track 1 Data) without alteration or truncation.

91

PAN auto-entry via contactless magnetic stripe—the full track data has been transmitted by the acquirer within the authorization request in DE 35 (Track 2 Data) or DE 45 (Track 1 Data) and forwarded to the issuer without alteration or truncation.

95

Visa only. Chip card with unreliable Card Verification Value (CVV) data.

Response Code

Response Code

Exception Code

HTTP Status code

Message

Description

00

200

Success

transaction successful

01

InvalidRequestException

400

request is not valid. please check the request

request validation error

02

InvalidAccountException

400

account not found or not valid

account not found

03

AccountBlockedException

400

transaction cannot proceed because the account is ${accountStatus}

account status either FREEZE/BLOCKED

04

InsufficientBalanceException

400

not enough balance

balance not enough

05

CardNotFoundException

400

card with proxy number ${proxyNumber} is not found

not found card

06

CardBlockedException

400

card with proxy number ${proxyNumber} is ${cardStatus}

card status either LOCKED/PERMANENT_BLOCKED

07

CardLimitExceededException

400

transaction amount is exceed the limit

card transaction limit exceeded

08

TransactionNotPermittedException

400

transaction is not permitted by card holder

the incoming transaction is not permitted by card holder. eg. international transaction

09

FraudRejectionException

400

rejected by fraud system

rejected by fraud system

10

PostingTimeoutException

408

time out, please try again

timeout during posting

11

UnhandledException

500

unhandled error

unhandled error

Attachments:

1664351752520.png (image/png)
1664351752520.png (image/png)
image-20220929-081037.png (image/png)
image-20220929-081114.png (image/png)
image-20220929-082526.png (image/png)
image-20220929-082550.png (image/png)
image-20221014-014037.png (image/png)
image-20221014-014142.png (image/png)
image-20221123-102844.png (image/png)
image-20221213-091925.png (image/png)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~drawio~633132a714c6b4b2210d0808~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
Untitled Diagram-1671637427851.drawio (application/vnd.jgraph.mxfile)
Untitled Diagram-1671637427851.drawio.png (image/png)
~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
Untitled Diagram-1671637427851.drawio (application/vnd.jgraph.mxfile)
Untitled Diagram-1671637427851.drawio.png (image/png)
~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
Untitled Diagram-1671637427851.drawio (application/vnd.jgraph.mxfile)
Untitled Diagram-1671637427851.drawio.png (image/png)
~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
~Untitled Diagram-1671637427851.drawio.tmp (application/vnd.jgraph.mxfile)
Untitled Diagram-1671637427851.drawio (application/vnd.jgraph.mxfile)
Untitled Diagram-1671637427851.drawio.png (image/png)
image-20230202-061500.png (image/png)