Response information

Details about the responses you may receive from transactions and API methods.

When troubleshooting technical problems, please also refer to our Debugging errors page for additional guidance

Response query string parameters

These response query string parameters parameters are applicable to Smart Checkout only

After the completion of a payment from a Smart Checkout payment order, the customer is redirected back to your website, and the below query string parameters are appended to the Redirect (Success/Failure) URL.

ParameterDescription
EventIdCode corresponding to the outcome of the payment. See Event ID codes below for full details.
ECIECI code. See Electronic Commerce Indicator below for full details
tSpecifies the Viva transaction ID generated during checkout. The variable name is configurable and can be updated from the Source Code dialog box in viva banking app
sSpecifies the payment order code. The variable name is configurable and can be updated from the Source Code dialog box in viva banking app
langThe language code in which the payment order is created. Consists of two-letter ISO 639-1 language code combined with two-letter ISO 3166-1 alpha-2 country code

Event ID codes

During a payment attempt, any of the following EventId codes can be appended to the Redirect (Success/Failure) URL as query string parameters.

EventId Reason Explanation Type
0 Undefined Undefined System
2061 3DS flow incomplete Browser closed before authentication finished User
2062 3DS validation failed Wrong password or two-factor auth code entered User
2108 Payments Policy Acquiring Restriction Payments Policy Acquiring Restriction System
10001 Refer to card issuer The issuing bank prevented the transaction Issuer
10003 Invalid merchant number Security violation (source is not correct issuer) Issuer
10004 Pick up card The card has been designated as lost or stolen Issuer
10005 Do not honor The issuing bank declined the transaction without an explanation Issuer
10006 General error The card issuer has declined the transaction as there is a problem with the card number Issuer
10007 Pick up card, special condition (fraud account) This usually means the customer’s bank has stopped the transaction because the card has been marked as fraudulent Issuer
10012 Invalid transaction The bank has declined the transaction because of an invalid format or field. This indicates the card details were incorrect Issuer
10013 Invalid amount The card issuer has declined the transaction because of an invalid format or field System
10014 Invalid card number The card issuer has declined the transaction as the credit card number is incorrectly entered or does not exist User
10015 Invalid issuer The card issuer doesn't exist System
10030 Format error The card issuer does not recognise the transaction details being entered. This is due to a format error System
10039 No credit account The issuer has declined the transaction as the card number used is not a credit account Issuer
10041 Lost card The card issuer has declined the transaction as the card has been reported lost Issuer
10043 Stolen card The card has been designated as lost or stolen User
10046 Closed Account The transaction has been refused as the account is closed Issuer
10051 Insufficient funds The card has insufficient funds to cover the cost of the transaction Issuer
10052 No checking account The issuer has declined the transaction as the credit card number is associated to a checking account that does not exist Issuer
10053 No savings account The issuer has declined the transaction as the credit card number is associated to a savings account that does not exist Issuer
10054 Expired card The payment gateway declined the transaction because the expiration date is expired or does not match User
10057 Function not permitted to cardholder The card issuer has declined the transaction as the credit card cannot be used for this type of transaction Issuer
10058 Function not permitted to terminal The card issuer has declined the transaction as the credit card cannot be used for this type of transaction Issuer
10059 Suspected Fraud The issuing bank has declined the transaction as a result of suspected fraud Issuer
10061 Withdrawal limit exceeded Exceeds withdrawal amount limit Issuer
10062 Restricted card The customer's bank has declined their card Issuer
10063 Issuer response security violation Flag raised due to security validation problem Issuer
10065 Soft decline The issuer requests Strong Customer Authentication. The merchant should retry the transaction after successfully authenticating customer with 3DS first Issuer
10070 Call issuer Contact card issuer Issuer
10075 PIN entry tries exceeded Allowable number of PIN tries exceeded User
10076 Invalid / non-existent "to account" specified An invalid or non-existent "to" account has been specified System
10077 Invalid / non-existent "from account" specified An invalid or non-existent "from" account has been specified Issuer
10079 Life Cycle Issuer response: 'Life Cycle' issue Issuer
10080 No financial impact This is usually returned when a reversal is sent for an authorization message that was already declined Issuer
10083 Fraud/Security Issuer response: 'Fraud/Security' issue Issuer
10084 Invalid Authorization Life Cycle Issuer response: 'Invalid Authorization Life Cycle' issue Issuer
10088 Cryptographic failure Issuer response: 'Cryptographic failure' issue Issuer
10089 Unacceptable PIN - Transaction Declined - Retry The entered PIN code was incorrect Issuer
10093 Transaction cannot be completed; violation of law The issuing bank has recognised (or has been informed of) a legal violation on the part of the credit card user, and assets have been frozen Issuer
10096 System malfunction A temporary error occurred during the transaction System
10200 Generic error A temporary error occurred during the transaction System
10210 Invalid CVV The CVV2 code entered is incorrect Issuer
10211 Negative Online CAM, dCVV, iCVV, CVV, or CAVV results or Offline PIN Authentication Issuer response: 'Negative Online CAM, dCVV, iCVV, CVV, or CAVV results or Offline PIN Authentication' issue Issuer
10212 Blocked Card Transaction from new cardholder, and card not properly unblocked Issuer
10213 Revocation of authorization order The cardholder has revoked authorisation for future payments to a particular merchant Issuer
10214 Verification Data Failed Issuer response: 'Verification Data Failed' issue Issuer
10215 Policy The transaction has been refused due to a policy reason Issuer
10216 Invalid/nonexistent account specified (general The issuing bank of the credit card could not find an account for the card Issuer
10301 Soft decline The issuer requests Strong Customer Authentication. The merchant should retry the transaction after successfully authenticating customer with 3DS first Issuer

Electronic Commerce Indicator

The Electronic Commerce Indicator (ECI) is a code appended to the Redirect (Success/Failure) URL as a query string parameter in addition to Event ID (above). The following values are possible:

ECI code Meaning
0 Unspecified
1 Authenticated
2 No 3DS
3 Attempt or not enrolled

Transaction feedback parameters

When receiving information about a transaction via the call of an API method, certain transaction feedback parameters are returned in the response. In particular, the StatusId parameter is used to return information relating to payment success or failure, while the TransactionTypeId parameter is used to return information about the type of the transaction.

StatusId parameter

The result of a transaction is identified by the StatusId parameter in the response body. It applies to the following:

This parameter can have any one of the values outlined in the table below:

StatusId Description
F The transaction has been completed successfully (PAYMENT SUCCESSFUL)
A The transaction is in progress (PAYMENT PENDING)
C The transaction has been captured (the C status refers to the original pre-auth transaction which has now been captured; the capture will be a separate transaction with status F)
E The transaction was not completed successfully (PAYMENT UNSUCCESSFUL)
R The transaction has been fully or partially refunded
X The transaction was cancelled by the merchant
M The cardholder has disputed the transaction with the issuing Bank
MA Dispute Awaiting Response
MI Dispute in Progress
ML A disputed transaction has been refunded (Dispute Lost)
MW Dispute Won
MS Suspected Dispute

TransactionTypeId parameter

The transaction type is identified by the TransactionTypeId parameter returned in the response body. It applies to the following:

TransactionTypeId Description
0 Card capture
1 Card pre-auth
4 Card refund 1 - including MobilePay Online
5 Card charge - including MobilePay Online
6 Card charge (installments)
7 Card void
8 Card Original Credit (refund, betting MCC only) 1
9 Viva Wallet charge
11 Viva Wallet refund
13 Card refund claimed
15 Dias
16 Cash
17 Cash refund
18 Card refund (installments) 1
19 Card payout
20 Alipay charge
21 Alipay refund
22 Card manual cash disbursement
23 iDEAL charge
24 iDEAL refund
25 P24 charge
26 P24 refund
27 BLIK charge
28 BLIK refund
29 PayU charge
30 PayU refund
31 Card withdrawal
36 Sofort charge
37 Sofort refund
38 EPS charge
39 EPS refund
40 WeChat Pay charge
41 WeChat Pay refund
42 BitPay charge
48 PayPal charge
49 PayPal refund
50 Trustly charge
51 Trustly refund
52 Klarna charge
53 Klarna refund
54 MB WAY charge
55 MB WAY refund
56 Multibanco charge
57 Multibanco refund
58 Payconiq charge
59 Payconiq refund
60 IRIS charge
61 IRIS refund
62 Pay By Bank charge
63 Pay By Bank refund
64 BANCOMAT Pay charge
65 BANCOMAT Pay refund
66 tbi bank charge
67 tbi bank refund
68 Pay on Delivery charge
69 Card Verification
70 Swish charge
71 Swish refund
74 Bluecode charge
75 Bluecode refund
78 Satispay charge
79 Satispay refund
80 Klarna pre-auth
81 Klarna capture

1 Transactions which reverse previous payments will always have a negative amount.

HTTP response codes

Viva uses conventional HTTP response codes to indicate the success or failure of an API request. In general, codes in the 200 range indicate success, while 400 codes indicate a client-side error, and 500 codes indicate an error with Viva’s servers. You may occasionally refer to the HTTP response code to determine whether the API call has been completed successfully.

Response codeMeaningMessage
200OKThe request has succeeded. The meaning of the success depends on the HTTP method:
  • GET
    The resource has been fetched and is transmitted in the message body.
  • PUT or POST
    The resource describing the result of the action is transmitted in the message body.
400Bad requestThe server could not understand the request due to invalid syntax
401UnauthorizedAlthough the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response
403ForbiddenThe client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the client's identity is known to the server
404Not foundThe server cannot find requested resource. In the browser, this means the URL is not recognized. In an API, this can also mean that the endpoint is valid but the resource itself does not exist
405Method not allowedThe request method is known by the server but has been disabled and cannot be used
406Not acceptableYou requested a format that isn't JSON
409ConflictThis response is sent when a request conflicts with the current state of the server
410GoneThis response is sent when the requested content has been permanently deleted from server, with no forwarding address
429Too many requestsThe user has sent too many requests in a given amount of time ('rate limiting')
500, 502, 504Server errorSomething went wrong at our end. Try again later
503Service unavailableWe're temporarily offline for maintenance. Try again later

POS Entry Mode Enumeration

MASTERCARD

Entry Mode Value
'01' PAN manual entry
'02' PAN auto-entry via magnetic stripe
'03' PAN auto-entry via bar code reader
'04' PAN auto-entry via OCR (Optical character reader)
'05' PAN auto-entry via chip
'06' PAN auto-entry via chip, contactless mapping service applied
'07' PAN auto-entry via contactless M/Chip
'09' PAN entry via electronic commerce, including remote chip
'10' Credential on File
'79' Chip card at a chip capable terminal was unable to process transaction using data on the chip or magnetic strip–PAN entry via manual entry
'80' Chip card at chip-capable terminal was unable to process transactions using data on the chip–terminal defaulted to magnetic stripe-read PAN
'81' PAN entry via electronic commerce, including chip
'82' PAN auto entry via Server (issuer, acquirer, or third-party vendor system)
'90' PAN auto entry via magnetic stripe-full track data has been read without alteration or truncation
'91' PAN entry via contactless magnetic stripe
'95' Visa only. Chip card with unreliable Card Verification Value (CVV) data

VISA

Entry Mode Value
'01' Key entry
'02' PAN auto-entry via magnetic stripe
'03' Bar code read (Visa only)
'04' PAN auto-entry via OCR (Optical character reader)
'05' PAN auto-entry via chip
'07' Proximity payment originating using VSDC chip data rules
'90' Entire content of magnetic stripe was transmitted in authorization request (CVV)
'91' Proximity payment originating using magnetic strip data rules
'95' Initiated by chip card: CVV data may be unreliable

DISCOVER

Entry Mode Value
'01' Key entry
'02' PAN auto-entry via magnetic stripe
'03' Bar code read
'04' PAN auto-entry via OCR (Optical character reader)
'05' Integrated circuit reader
'07' Electronic commerce
'08' Card present, magstripe defective and cannot be read
'81' Radio frequency identification indicator
'82' Mobile commerce (mCommerce)
'90' Voice authorization
'91' Voice response unit (VRU)
'92' Batch authorization
'93' Batch authorization cash access
'94' Biometrics

JCB

Entry Mode Value
'01' Key entry
'02' PAN auto-entry via magnetic stripe
'05' PAN auto-entry via chip
'81' PAN entry via electronic commerce, including chip
'97' JCB chip fallback (Asia-Pacific region region only)

Get Support

If you would like to integrate with Viva, or if you have any queries about our products and solutions, please see our Contact & Support page to see how we can help!