Skip to main content
Partner logo
Riverty Invoice
The complete Buy Now Pay Later ecosystem for ecommerce which keeps your brand in the lead while offering an array of services to build loyal customers.
Source: https://docs.riverty.com/bnpl

Features

Integration type

Redirection
Tokenization

No

Payment Flow

1-step payment flow : Capture
2-step payment flow : Authorization + Capture
3-step payment flow : Pending Authorization + Authorization + Capture

How to test?

info

You can make a test by using the following birthdate scenarios below

TestCases

ScenarioCondition
Session SuccessBirthdate over 18 years old
Session RefusedBirthdate under 18 years old

PartialActions

info

To make partial actions such as Capture, Void, or Refund, you should send data about the items to be captured, voided, or refunded.

Code Examples

Request

curl --location --request POST 'https://api.preprod.upstreampay.com/${ENTITY_ID}/transactions/{{TRANSACTION_ID}}/capture' --header 'x-api-key: ${API_KEY}' --header 'Authorization: Bearer ${ACCESS_TOKEN}' --header 'Content-Type: application/json' --data-raw '{"amount":150.0,"order":{"shipments":[{"item_lines":[{"type_code":"product","sku_reference":"0a4b243e-f607-45cf-878c-e6c46aed9648","name":"Lits superposés 3 niveaux LIGNE EVEREST","price":860.0,"quantity":1,"amount":860.0,"tax_lines":[{"type_code":"vat","subtype_code":"standard","rate":8.1,"amount":64.44}]},{"type_code":"shipping_fees","sku_reference":"shipping_fees","name":"shipping fees","price":79.0,"quantity":1,"amount":79.0,"tax_lines":[{"type_code":"vat","subtype_code":"standard","rate":8.1,"amount":5.92}]}]}]}}'

Response

{
"id": "568082dc-48df-4bec-b87c-fff3dd0e69d8",
"status": {
"action": "CAPTURE",
"state": "SUCCESS",
"description": "Successful operation"
},
"amount": 150,
"logs": {
"CAPTURED_AMOUNT": "150.0",
"REMAINING_AUTHORIZED_AMOUNT": "200.0000",
"TOTAL_CAPTURED_AMOUNT": "150.0000"
}
}

Data Mapping & Mandatory Fields

Below is the mapping between your Create Session request and the fields expected by this payment method.

Purse Session fieldMandatory
amountYes
order.redirectionYes
order.amountNo
order.net_amountYes
order.referenceYes
order.tax_amountNo
order.tax_lines_rateNo
order.currency_codeYes
customer.referenceNo
customer.company_nameNo
customer.type_codeYes
customer.gender_codeNo
customer.last_nameYes
customer.first_nameYes
customer.birthdateYes
customer.ipYes
customer.billing_address.gender_codeNo
customer.billing_address.first_nameYes
customer.billing_address.last_nameYes
customer.billing_address.address_linesNo
customer.billing_address.cityNo
customer.billing_address.postal_codeNo
customer.billing_address.country_codeNo
customer.billing_address.emailYes
customer.billing_address.phoneYes
customer.billing_address.mobile_phoneNo
customer.additional_attributes.national_identifierNo
shipments.amountNo
shipments.delivery_type_codeNo
shipments.shipping_address.first_nameYes
shipments.shipping_address.last_nameYes
shipments.shipping_address.address_linesNo
shipments.shipping_address.cityNo
shipments.shipping_address.postal_codeNo
shipments.shipping_address.country_codeNo
shipments.shipping_address.emailYes
shipments.shipping_address.phoneNo
shipments.shipping_address.mobile_phoneNo
shipments.item_lines.type_codeNo
shipments.item_lines.sku_referenceNo
shipments.item_lines.nameYes
shipments.item_lines.priceYes
shipments.item_lines.quantityYes
shipments.item_lines.amountNo
shipments.item_lines.image_uriNo
shipments.item_lines.product_uriNo
shipments.item_lines.tax_lines.amountNo
shipments.item_lines.tax_lines.rateNo

Payment Labels

LabelMethodPayment type
rivertyinvoiceprimary

Actions

Status

PSP statusStateCodeDescription
SESSION_DATA_NOT_OKSUCCESSBAD_REQUESTSession data doesn't meet the partner's requirements
SUCCESSSUCCESSSUCCEEDEDSuccessful operation
PendingWAITINGWAITING_PARTNER_RESPONSETransaction awaiting response to authorization request
ABORTEDERRORABORTED_BY_CUSTOMERTransaction aborted
ExpiredERRORABORTED_BY_CUSTOMERTransaction expired
RejectedERRORFAILEDAuthorize checkout Outcome
NotEvaluatedERRORREJECTED_BY_RISK_CHECKSAuthorize checkout Outcome
AcceptedSUCCESSSUCCEEDEDSuccessful operation
ERRORERRORFAILEDFailed operation
400.000ERRORBAD_REQUESTUnknown error
400.001ERRORBAD_REQUESTRequest body missing
400.002ERRORBAD_REQUESTValue is required
400.003ERRORBAD_REQUESTValue out of range
400.004ERRORBAD_REQUESTValue format is incorrect
400.005ERRORBAD_REQUESTA string value exceeds maximum length of {value}
400.006ERRORBAD_REQUESTA string value with minimum length {value} is required
400.007ERRORBAD_REQUESTA decimal value has more than allowed decimal digits
400.100ERRORBAD_REQUESTOrder number is already used on the client
400.101ERRORBAD_REQUESTTotalNetAmount doesn't match with items prices
400.102ERRORBAD_REQUESTOrder gross amount doesn't match with items prices
400.103ERRORBAD_REQUESTThe provided customerNumber differs from the customerNumber specified in the checkout
400.108ERRORBAD_REQUESTInvalid payment method selected
400.109ERRORBAD_REQUESTA valid contract id is required
400.110ERRORBAD_REQUESTInstallment profile not found
400.111ERRORBAD_REQUESTInstallment profile plans missing
400.112ERRORBAD_REQUESTMonthly installment amount is invalid
400.113ERRORBAD_REQUESTNumber of installments is not allowed for amount
400.114ERRORBAD_REQUESTInvalid AccountProfileNo
400.115ERRORBAD_REQUESTReservation not found
400.117ERRORBAD_REQUESTCannot capture the order because full capture can only be done for the entire reserved amount within the given tolerance level.
400.118ERRORBAD_REQUESTCapture partial cannot capture more than the current reservation balance
400.119ERRORBAD_REQUESTOrder items missing
400.120ERRORBAD_REQUESTCannot capture the order as capture with the specified number is already exists
400.121ERRORBAD_REQUESTReservation, to which this order is linked to does not have a checkout
400.122ERRORBAD_REQUESTCannot create refund as invoice number already exists
400.124ERRORBAD_REQUESTThe grand total of gross unit prices must be positive
400.126ERRORBAD_REQUESTCannot refund the order because specified capture was not created from reservation, to which this order is linked to
400.127ERRORBAD_REQUESTCannot refund the order as refund amount is higher than the capture balance amount
400.128ERRORBAD_REQUESTCannot refund the order because there are no captures related to this order
400.129ERRORBAD_REQUESTCannot cancel the order, because it is partially or fully captured
400.131ERRORBAD_REQUESTOrder not found
400.132ERRORBAD_REQUESTCapture not found
400.133ERRORBAD_REQUESTRefund not found
400.134ERRORBAD_REQUESTVoid not found
400.135ERRORBAD_REQUESTCustomer not found
400.136ERRORBAD_REQUESTContract already exists
400.137ERRORBAD_REQUESTWhen order items are provided then capture number is mandatory
400.138ERRORBAD_REQUESTShipping details not found
400.139ERRORBAD_REQUESTValid BankCode is required
400.140ERRORBAD_REQUESTValid BankAccount is required
400.142ERRORBAD_REQUESTCheckout not found
400.144ERRORBAD_REQUESTValidation failed
400.146ERRORBAD_REQUESTCapture amount can't be with opposite sign to Reservation amount
400.147ERRORBAD_REQUESTVoid amount can't be with opposite sign to Reservation amount
400.148ERRORBAD_REQUESTCannot refund a negative invoice
400.150ERRORBAD_REQUESTInstallment profile is not valid for amount
400.151ERRORBAD_REQUESTIdempotencyKey is aleady used with different endpoint URL
400.152ERRORBAD_REQUESTDirectDebit is not enabled for client
400.153ERRORBAD_REQUESTA valid order number can include alphanumeric characters, dashes and underscores
400.154ERRORBAD_REQUESTtotalGrossAmount cannot be negative
400.155ERRORBAD_REQUESTIn case of partial request the totalGrossAmount is required
400.156ERRORBAD_REQUESTThe country code is not valid for this customer
400.157ERRORBAD_REQUESTThe currency code is not valid for this customer
400.158ERRORBAD_REQUESTReservation is already cancelled, captured, or expired
400.159ERRORBAD_REQUESTItem gross price, net price and VAT amount must be all positive or all negative
400.160ERRORBAD_REQUESTGross unit price must be equal to Net unit price plus VAT amount
400.161ERRORBAD_REQUESTItem net price can't be bigger than gross price
400.162ERRORBAD_REQUESTItem VAT amount can't be bigger than gross price
400.166ERRORBAD_REQUESTThe provided currency differs from the currency specified in the checkout
400.167ERRORBAD_REQUESTFile format is not supported. We support the following formats: {value}
400.168ERRORBAD_REQUESTOrder items must be specified if order amount is increased within the allowed tolerance level
400.169ERRORBAD_REQUESTOrder items must be specified if order amount has changed
400.170ERRORBAD_REQUESTFull refund is not allowed after partial refund.
400.171ERRORBAD_REQUESTCannot refund the order as the total refund amount exceeds the maximum allowed amount.
400.172ERRORBAD_REQUESTThe maximum Idempotency Key length is 50 characters.
400.173ERRORBAD_REQUESTThe Idempotency key may contain alphanumeric characters and hyphens.
400.174ERRORBAD_REQUESTActive campaign not found.
400.175ERRORBAD_REQUESTThe merchant id is not valid.
400.176ERRORBAD_REQUESTThe merchant id is deactivated.
400.177ERRORBAD_REQUESTToo many operations with zero amount for this order.
400.178ERRORBAD_REQUESTAccount number is not supported.
400.179ERRORBAD_REQUESTB2B customers not supported for this region.
400.180ERRORBAD_REQUESTNonce not found.
400.181ERRORBAD_REQUESTA valid customer card classification can include only digits from 1 to 5.
400.182ERRORBAD_REQUESTVirtual bank account not found.
400.183ERRORBAD_REQUESTThe checkout is already used by reservation.
400.184ERRORBAD_REQUESTtotalGrossAmount is higher than order amount.
400.185ERRORBAD_REQUESTBoth, orderItems and items are used. Please use one or another.
400.186ERRORBAD_REQUESTOperation is rejected as reservation is in pending state.
200.001ERRORREJECTED_BY_RISK_CHECKSSorry, 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.002ERRORREJECTED_BY_RISK_CHECKSSorry, B2B purchases are not allowed for this merchant. Please choose another payment method
200.003ERRORREJECTED_BY_RISK_CHECKSSorry, the payment method is currently not available. Please choose another payment method
200.004ERRORREJECTED_BY_RISK_CHECKSPick-Up-point can not be used as billing address
200.005ERRORREJECTED_BY_RISK_CHECKSAddress of the Pick-Up-point is invalid, please doublecheck and correct it
200.006ERRORREJECTED_BY_RISK_CHECKSBilling and delivery address must be the same
200.101ERRORREJECTED_BY_RISK_CHECKSThis billing address is invalid, please double check and correct it
200.102ERRORREJECTED_BY_RISK_CHECKSThis delivery address is invalid, please double check and correct it
200.103ERRORREJECTED_BY_RISK_CHECKSThe billing address was corrected, please verify (not sent for DACH and Benelux)
200.104ERRORREJECTED_BY_RISK_CHECKSThe delivery address was corrected, please verify (not sent for DACH and Benelux)
200.105ERRORREJECTED_BY_RISK_CHECKSSorry, the payment method is currently not available. Please choose another payment method (not sent for DACH and Benelux)
200.900ERRORREJECTED_BY_RISK_CHECKSSorry, the payment method is currently not available. Please choose another payment method
200.901ERRORREJECTED_BY_RISK_CHECKSSorry, the payment method is currently not available. Please choose another payment method
200.902ERRORREJECTED_BY_RISK_CHECKSSorry, the payment method is currently not available. Please choose another payment method
200.903ERRORREJECTED_BY_RISK_CHECKSSorry, the payment method is currently not available. Please choose another payment method
200.909ERRORREJECTED_BY_RISK_CHECKSAccount number from this country is not supported for this Riverty merchant
200.910ERRORREJECTED_BY_RISK_CHECKSStrong identification needed