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
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 | 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 |
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 | Order status is not suitable for order management operation | 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: | 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 | - |
[
{
"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"
}
]
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 unavailable. Please choose another payment method. |
200.902 | Sorry, your payment could not be completed using the selected payment method. Please choose another payment method. |
200.903 | Sorry, your payment could not be completed using the selected payment method. This is most often due to an order amount that is too high or too many unpaid purchases. Please check one of these issues and try again. |
200.908 | The IBAN number is invalid, please check the IBAN and try again. |
200.909 | The IBAN number is incorrect, please use a different IBAN and try again. |
200.910 | Strong identification is needed |
200.912 | We are sorry, there seems to be an outstanding balance from a previous purchase on which the direct debit charge failed. Please make sure to settle the open balance before attempting another purchase with Riverty. |
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. |
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.
{
"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"
}
]
}