Response Codes

This page lists the various response codes sent by the Riverty Payment Methods API. Besides the response code and action code you will also get a field reference that will help you to understand which field caused an error.

For example, you may get a 400.004 error with the action code "AskConsumerToReEnterData" and field reference "customer.mobilePhone" which means that the customer has entered a mobile phone number that was in the incorrect format and needs to provide a correct mobile phone number.

All response codes can also be also be downloaded: Riverty Response Codes.xlsx

Validation Response Codes

Response Code Description Action code
400.000 Unknown error Unavailable
400.001 Request body missing Unavailable
400.002 Value is required Unavailable/ AskConsumerToReEnterData
400.003 Value out of range Unavailable/ AskConsumerToReEnterData
400.004 Value format is incorrect Unavailable/ AskConsumerToReEnterData
400.005 A string value exceeds maximum length of {value} Unavailable/ AskConsumerToReEnterData
400.006 A string value with minimum length {value} is required Unavailable/ AskConsumerToReEnterData
400.007 A decimal value has more than allowed decimal digits Unavailable/ AskConsumerToReEnterData

Business Response Codes

Response Code Description Action code Field reference
400.001 Request body is empty or invalid Unavailable request
400.100 Order number is already used on the client Unavailable order.number
400.101 TotalNetAmount doesn't match with items prices Unavailable order.totalNetAmount
400.102 Order gross amount doesn't match with items prices Unavailable order.totalGrossAmount
400.103 The provided customerNumber differs from the customerNumber specified in the checkout Unavailable customer.customerNumber
400.108 Invalid payment method selected Unavailable payment.type
400.109 A valid contract id is required Unavailable payment.contractId
400.110 Installment profile not found Unavailable payment.installment.profileNo
400.111 Installment profile plans missing Unavailable -
400.112 Monthly installment amount is invalid Unavailable payment.installment.numberOfInstallments
400.113 Number of installments is not allowed for amount Unavailable payment.installment.numberOfInstallments
400.114 Invalid AccountProfileNo Unavailable paymentInfo.account.profileNo
400.115 Reservation not found Unavailable -
400.117 Cannot capture the order because full capture can only be done for the entire reserved amount within the given tolerance level. Unavailable -
400.118 Capture partial cannot capture more than the current reservation balance Unavailable -
400.119 Order items missing Unavailable -
400.120 Cannot capture the order as capture with the specified number is already exists Unavailable -
400.121 Reservation, to which this order is linked to does not have a checkout Unavailable -
400.124 The grand total of gross unit prices must be positive Unavailable orderItems[].grossUnitPrice
400.126 Cannot refund the order because specified capture was not created from reservation, to which this order is linked to Unavailable -
400.127 Cannot refund the order as refund amount is higher than the capture balance amount Unavailable -
400.128 Cannot refund the order because there are no captures related to this order Unavailable -
400.129 Cannot cancel the order, because it is partially or fully captured Unavailable -
400.131 Order not found Unavailable -
400.132 Capture not found Unavailable -
400.133 Refund not found Unavailable -
400.134 Void not found Unavailable -
400.135 Customer not found Unavailable -
400.136 Contract already exists Unavailable -
400.137 When order items are provided then capture number is mandatory Unavailable -
400.138 Shipping details not found Unavailable -
400.139 Valid BankCode is required Unavailable payment.directDebit.bankCode
400.140 Valid BankAccount is required Unavailable payment.directDebit.bankAccount
400.142 Checkout not found Unavailable -
400.144 Validation failed Unavailable -
400.146 Capture amount can't be with opposite sign to Reservation amount Unavailable order.totalGrossAmount
400.147 Void amount can't be with opposite sign to Reservation amount Unavailable cancellationDetails.totalGrossAmount
400.148 Cannot refund a negative invoice Unavailable -
400.150 Installment profile is not valid for amount Unavailable payment.installment.profileNo
400.151 IdempotencyKey is aleady used with different endpoint URL Unavailable -
400.152 DirectDebit is not enabled for client Unavailable -
400.153 A valid order number can include alphanumeric characters, dashes and underscores Unavailable order.number
400.154 totalGrossAmount cannot be negative Unavailable -
400.155 In case of partial request the totalGrossAmount is required Unavailable -
400.156 The country code is not valid for this customer AskConsumerToReEnterData customer.address.countryCode
400.157 The currency code is not valid for this customer Unavailable -
400.158 Reservation is already cancelled, captured, or expired Unavailable -
400.159 Item gross price, net price and VAT amount must be all positive or all negative Unavailable order.items[].grossUnitPrice
400.160 Gross unit price must be equal to Net unit price plus VAT amount Unavailable order.items[].grossUnitPrice
400.161 Item net price can't be bigger than gross price Unavailable order.items[].netUnitPrice
400.162 Item VAT amount can't be bigger than gross price Unavailable order.items[].vatAmount
400.166 The provided currency differs from the currency specified in the checkout Unavailable -
400.167 File format is not supported. We support the following formats: {value} Unavailable -
400.168 Order items must be specified if order amount is increased within the allowed tolerance level Unavailable order.items
400.169 Order items must be specified if order amount has changed Unavailable order.totalGrossAmount
400.170 Full refund is not allowed after partial refund. Unavailable -
400.171 Cannot refund the order as the total refund amount exceeds the maximum allowed amount. Unavailable -
400.172 The maximum Idempotency Key length is 50 characters. Unavailable -
400.173 The Idempotency key may contain alphanumeric characters and hyphens. Unavailable -
400.174 Active campaign not found. Unavailable payment.campaign.campaignNumber
400.175 The merchant id is not valid. Unavailable merchantId
400.176 The merchant id is deactivated. Unavailable merchantId
400.177 Too many operations with zero amount for this order. Unavailable -
400.178 Account number is not supported. AskConsumerToReEnterData bankAccount
400.179 B2B customers not supported for this region. Unavailable -
400.180 Nonce not found. Unavailable nonce
400.181 A valid customer card classification can include only digits from 1 to 5. Unavailable customer.riskData.customerCardClassification
400.182 Virtual bank account not found. Unavailable -
400.183 The checkout is already used by reservation. Unavailable checkoutId
400.184 totalGrossAmount is higher than order amount. Unavailable order.totalGrossAmount
400.185 Both, orderItems and items are used. Please use one or another. Unavailable -

Example Response Message:

[
  {
    "type": "BusinessError",
    "code": "400.004",
    "message": "Value format is incorrect.",
    "customerFacingMessage": "Die Telefonnummer ist leider nicht korrekt. Bitte prüfen Sie, ob die von Ihnen genannte Telefonnummer mit einer '0' oder einem '+' beginnt",
    "actionCode": "AskConsumerToReEnterData",
    "fieldReference": "customer.mobilePhone"
  }
]

Risk Check Response Codes

As part of the risk assessment the consumer's input is validated against internal and external data sources. Although the input might be well-formatted, the input could be still incorrect (e.g. postal Code has the correct format but does not exist).

Code Description
200.001 Sorry, the age you entered does not meet the minimum requirement (18 years), please choose a different payment method or reenter your date of birth
200.002 Sorry, B2B purchases are not allowed for this merchant. Please choose another payment method
200.003 Sorry, the payment method is currently not available. Please choose another payment method
200.004 Pick-Up-point can not be used as billing address
200.005 Address of the Pick-Up-point is invalid, please doublecheck and correct it
200.006 Billing and delivery address must be the same
200.101 This billing address is invalid, please double check and correct it
200.102 This delivery address is invalid, please double check and correct it
200.103 The billing address was corrected, please verify (not sent for DACH and Benelux)
200.104 The delivery address was corrected, please verify (not sent for DACH and Benelux)
200.105 Sorry, the payment method is currently not available. Please choose another payment method (not sent for DACH and Benelux)
200.900 Sorry, the payment method is currently not available. Please choose another payment method
200.901 Sorry, the payment method is currently not available. Please choose another payment method
200.902 Sorry, the payment method is currently not available. Please choose another payment method
200.903 Sorry, the payment method is currently not available. Please choose another payment method
200.909 Account number from this country is not supported for this Riverty merchant
200.910 Strong identification needed

Testing the response codes by triggers

It is possible to test several response codes by using below mentioned triggers.

First Name Triggers These triggers are used instead of the customer's first name. These triggers are available for sandbox and test environments of all countries. The exact error message depends on the Risk Engine (different by country).

Field Triggering Value API Returns
customer.firstName Reject The call is rejected.
customer.firstName Accepted The call is accepted.
customer.firstName 1000 (any positive integer) The call is accepted if the Total Gross Amount is below this number. The call is rejected if the Total Gross Amount is above this number.
customer.firstName NotOfficial The call is rejected due to incorrect billing address.
customer.firstName Underage The call is rejected because the customer is too young to make this purchase.
customer.firstName FixedAddress DK/SE/NO/FI: The call is accepted, but the API says the customer's address is different from what you provided, and returns the corrected address. DE/AT/CH: The call rejected because the provided address is incorrect or malformed, and the API returns the address that it believes to be correct for this customer. NB: Use this trigger to test the handling of address lookup in your webshop.

Address Triggers These triggers are used instead of the billing address and/or delivery address if it is different. These triggers are available for sandbox and test environments of Germany, Austria and Switzerland.

Field Triggering Value API Returns
customer.address.street PackstationNotAllowed The call is rejected because the customer provided the address of a package pickup station / automated package locker, and this is not allowed.
deliveryCustomer.address.street ShipToBilling The call is rejected because the customer is not allowed to ship the package to an address different from their billing address (as decided by the Risk Engine).
customer.address.street deliveryCustomer.address.street AddressCorrection The call is rejected because the provided address is incorrect or malformed, and the API returns the address that it believes to be correct for this customer. NB: Use this trigger to test the handling of address lookup in your webshop. When this situation happens, you can (for example) take the address provided by the API, display it to the customer and ask them to confirm it is correct, then repeat the call to the API with the correct address.
customer.address.street deliveryCustomer.address.street InvalidAddress The call is rejected, because the provided address could not be verified by Riverty's systems as matching this customer.

Consumer Facing Response Messages

These are the human-readable, descriptive messages returned by the Payment Methods API for common business errors. They are usually due to missing mandatory information, or information provided in the incorrect format. When integrating Riverty in your checkout page, please make sure the contents of these messages are displayed to the consumer. Consumer facing response codes can be provided in various languages, but an example is given in English. A full list of consumer facing respones codes can be found in the download at the top of this page.

Example Response Message:

{
  "outcome": "Rejected",
  "riskCheckMessages": [
    {
      "type": "BusinessError",
      "code": "200.901",
      "message": "Negative Customer Score",
      "customerFacingMessage": "Die Zahlungsmethode ist leider derzeit nicht verfügbar. Bitte eine andere Zahlungsmethode auswählen.",
      "actionCode": "OfferSecurePaymentMethods"
    }
  ]
}