Oney integration

Logo 3X 4X Oney

Introduction

Oney is an interest-free 3x - 12x and Paylater payment method, for orders amounting between 150 and 2000€.

It involves redirecting the cardholder to Oney to finalize its transaction.

info

Upon receipt of EXECCODE = 0002 in the synchronous response, you must redirect the cardholder to the Oney form by displaying the content of the REDIRECTHTML parameter. (Base64 encoded)

After validating the payment on Oney, the cardholder is redirected to the REDIRECT_URL.

The result of the transaction will also be transmitted by HTTP notification. (See the specifics of the notification)

When successful, an authorization is created and it would have up to 7 days to be captured.

warning

Only two authorization statuses can be observed: 0000 (success) or 0003 (waiting for approval). Without update of 0003 status within 6 days, authorization should be considered as expired (failed).

Compatible operations and options

Country Payment Method
France 3x, 4x, 5x-12x & Paylater
Spain 3x, 4x, 6x, 10x, 12x
Italy 3x, 4x
Belgium 3x
Portugal 3x, 4x

The COMMERCIALCODE field is used to manage these payment options. You will need to contact Oney directly in order to have the corrects codes to use for each country/payment method.

Server to server integration

In this mode, you have to send a POST request containing your order’s parameters over HTTPS to the Dalenys platform.

Authorization

Example

warning

A billing phone number (BILLINGPHONE or BILLINGMOBILEPHONE) and a shipping phone number (SHIPTOPHONE or SHIPTOMOBILEPHONE) must be provided in the authorization request.

Here is a server to server request example:

$> curl --request POST --url "https://secure-test.dalenys.com/front/service/rest/process" \
--data "method=authorization" \
--data "params[AMOUNT]=60000" \
--data "params[BILLINGTITLE]=mr" \
--data "params[BILLINGFIRSTNAME]=John" \
--data "params[BILLINGLASTNAME]=Doe" \
--data "params[BILLINGADDRESS]=285 Fulton Street" \
--data "params[BILLINGPOSTALCODE]=75001" \
--data "params[BILLINGCITY]=Paris" \
--data "params[BILLINGCOUNTRY]=FR" \
--data "params[BILLINGPHONE]=+33111111111" \
--data "params[BILLINGMOBILEPHONE]=+33666666666" \
--data "params[CLIENTUSERAGENT]=Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0" \
--data "params[CLIENTIP]=10.1.1.1" \
--data "params[ORDERID]=1234" \
--data "params[CLIENTIDENT]=johnsnow" \
--data "params[CLIENTEMAIL]=john.snow@example.com" \
--data "params[CART][0][MERCHANTITEMID]=REF-123456" \
--data "params[CART][0][NAME]=Laser printer" \
--data "params[CART][0][PRICE]=20000" \
--data "params[CART][0][QUANTITY]=3" \
--data "params[CART][0][CATEGORY]=electronics" \
--data "params[CART][0][BRAND]=Micropple" \
--data "params[CART][0][DELIVERYTYPE]=storepickup" \
--data "params[CART][0][DELIVERYLABEL]=Micropple store" \
--data "params[CART][0][DELIVERYSPEED]=express" \
--data "params[CART][0][DELIVERYEXPECTEDDATE]=2017-06-20" \
--data "params[CART][0][DELIVERYEXPECTEDDELAY]=2" \
--data "params[CART][0][TOTALAMOUNT]=60000" \
--data "params[DESCRIPTION]=Knows nothing" \
--data "params[HASH]=15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4" \
--data "params[IDENTIFIER]=Demo Shop" \
--data "params[OPERATIONTYPE]=authorization" \
--data "params[PAYMENTOPTION]=facilypay-3x" \
--data "params[SHIPTOCOMPANYNAME]=MyShop.com" \
--data "params[SHIPTOFIRSTNAME]=John" \
--data "params[SHIPTOLASTNAME]=Doe" \
--data "params[SHIPTOADDRESS]=55 rue de la liberté" \
--data "params[SHIPTOPOSTALCODE]=75001" \
--data "params[SHIPTOCITY]=Paris" \
--data "params[SHIPTOCOUNTRY]=FR" \
--data "params[SHIPTOPHONE]=+33111111111" \
--data "params[SHIPTOMOBILEPHONE]=+33666666666" \
--data "params[VERSION]=3.0" \

Parameters

  • AMOUNT integer

    The transaction amount in the smallest money decimal (e.g. cents for euro).

    Example: 1000

  • APIKEYID string (36)

    ID used to authenticate a transaction using APIKEY.

    Example: a688b3a1-d227-4cdd-9454-5d7cfcc74ef9

  • BILLINGADDRESS string(1-200)

    The billing address. Be careful not to integrate any line breaks.

    Example: 285 Fulton Street

  • BILLINGCITY string(1-32)

    The billing city.

    Example: New York

  • BILLINGCOUNTRY string(2)

    The country code (ISO_3166-1_alpha-2).

    Example: US

  • BILLINGFIRSTNAME string(1-32)

    The first name part of the billing address.

    Example: John

  • BILLINGLASTNAME string(1-32)

    The last name part of the billing address.

    Example: Doe

  • BILLINGMOBILEPHONE string(1-15)

    Billing mobile phone number in international format (Example +33XXXXXXXXX). At least one of the billing phone number must be provided. Please send either BILLINGPHONE or BILLINGMOBILEPHONE. The phone number location provided must correspond to the country in which the payment is made (Example provide a Spanish phone number when using Oney Spain). The phone number must be prefixed with international area code starting with a +.

    Example: +33666666666

  • BILLINGPHONE string(1-15)

    Billing phone number in international format (Example +33XXXXXXXXX). At least one of the billing phone number must be provided. Please send either BILLINGPHONE or BILLINGMOBILEPHONE. The phone number location provided must correspond to the country in which the payment is made (Example provide a Spanish phone number when using Oney Spain). The phone number must be prefixed with international area code starting with a +.

    Example: +33111111111

  • BILLINGPOSTALCODE string(1-9)

    The billing postal code.

    Example: 10007

  • BILLINGTITLE mr, miss, mrs

    The title used for the billing address name.

    Example: mr

  • CART[X][BRAND] string(1-100)

    Article brand.

    Example: Micropple

  • CART[X][CATEGORY] computersandsoftware, electronics, appliances, homeandgarden, fashion, healthandbeauty, jewellery, sport, leisureandhobbies, carsandmotorbikes, furniture, kidsandbaby, videogamesandconsoles, toysandgames, pets, foodanddrink, giftandflowers, entertainment, travel, auctionsandgroupbuying, servicesforindividuals, servicesforprofessionals

    Article category.

    Example: electronics

  • CART[X][DELIVERYEXPECTEDDATE] date(YYYY-MM-DD)

    Delivery Date.

    Example: 2017-06-20

  • CART[X][DELIVERYEXPECTEDDELAY] int (1-3)

    Number of days for delivery; must be greater than 0.

    Example: 2

  • CART[X][DELIVERYLABEL] string(1-100)

    Delivery method name or description.

    Example: Micropple store

  • CART[X][DELIVERYSPEED] standard,express

    Speed of the delivery method. (Specify EXPRESS if under 48h).

    Example: express

  • CART[X][DELIVERYTYPE] storepickup, networkpickup, travelpickup, billingaddress, carrier, edelivery

    Delivery method:

    storepickup: collection of the goods in the merchant store
    networkpickup: collection in a third party point (like ups, alveol, etc.)
    travelpickup: collection in an airport, train station or travel agency
    billingaddress: carrier such as La Poste, Colissimo, UPS, DHL…or any private carrier using billing address
    carrier: carrier such as La Poste, Colissimo, UPS, DHL…or any private carrier using shipto address
    edelivery: electronic ticket issuance, download, etc.

    Example: storepickup

  • CART[X][DISCOUNT] float

    Applied discount in percentage. The decimal separator is the dot symbol.

    Example: 10.5

  • CART[X][FEES] integer

    Marketplace fees in cents.

    Example: 2000

  • CART[X][MERCHANTITEMID] string(1-256)

    Item ID in the merchant system.

    Example: REF-123456

  • CART[X][NAME] string(1-256)

    Item name.

    Example: Laser printer

  • CART[X][PRICE] int

    Unit price in cents, including potential taxes and discounts.

    Example: 20000

  • CART[X][QUANTITY] number(3)

    Quantity of this item.

    Example: 3

  • CART[X][SUBMERCHANTEXTERNALID] string(1-64)

    Submerchant account identifier in the marketplace. This field allow a special value “OPERATOR” when the item is sold by the marketplace itself (and not a sub-merchant).

    Example: shop1.com

  • CART[X][TAX] float

    Applied taxes in percentage. The decimal separator is the dot symbol.

    Example: 19.5

  • CART[X][TOTALAMOUNT] integer

    Total amount based on PRICE, QUANTITY. Also FEES when applied.

    Example: 60000

  • CLIENTEMAIL string(1-100)

    The user’s email (character « + » is not allowed).

    Example: john.snow@example.com

  • CLIENTIDENT string(1-128)

    Unique identifier of the user in your application (e.g. a login or a primary key).

    Example: johnsnow

  • CLIENTIP ipv4

    The user’s public IP address.

    Example: 10.1.1.1

  • CLIENTUSERAGENT string(1-255)

    The HTTP user agent.

    Example: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0

  • COMMERCIALCODE string

    A control of the value will be done on Dalenys side to match ONEY format based on the max lenght 5. OPC compatible with payment 3x, 4x, 6x and Paylater.

    Example: 3X001, PNF4P etc...

  • DESCRIPTION string(1-510)

    A short description of the operation, can be used to trigger fraud actions. Don’t hesitate to ask your Payment Manager for some advice on this topic.

    Example: Knows nothing

  • EXTRADATA string(1-255)

    Free field (Dalenys will send you back the content of the EXTRADATA you specified ahead).

    Example: referrer=myshop.com;order=premium

  • HASH string(64)

    The transaction’s hash as described in the dedicated section.

    Example: 15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4

  • IDENTIFIER string(1-32)

    Your processing account technical identifier.

    Example: Demo Shop

  • METADATA string(1-255)

    Additional transactional data. Contact your account manager for more informations.

    Example: @METADATA-MYWEBSITE

  • OPERATIONTYPE authorization

    The action you want to process.

    Example: payment

  • ORDERID string(1-40)

    Unique ID associated to an order in the merchant’s database (as specified in your initial POST request)

    Example: 1234

  • PAYMENTOPTION facilypay-3x, facilypay-3xsansfrais, facilypay-4x, facilypay-4xsansfrais

    Specific options for certain payment methods.

    Example: facilypay-3x

  • SHIPTOADDRESS string(1-200)

    The shipping address.

    Example: 55 rue de la liberté

  • SHIPTOCITY string(1-32)

    The shipping city.

    Example: New York

  • SHIPTOCOMPANYNAME string(1-50)

    Name of the company.

    Example: MyShop.com

  • SHIPTOCOUNTRY string(2)

    The country code (ISO_3166-1_alpha-2 format)

    Example: US

  • SHIPTOFIRSTNAME string(1-15)

    Holder’s first name in the shipping address.

    Example: John

  • SHIPTOLASTNAME string(1-30)

    Holder’s last name in the shipping address.

    Example: Doe

  • SHIPTOMOBILEPHONE string(1-15)

    Shipping mobile phone number in international format (Example +33XXXXXXXXX). At least one of the shipping phone number must be provided. Please send either SHIPTOPHONE or SHIPTOMOBILEPHONE. The phone number location provided must correspond to the country in which the payment is made (Example provide a Spanish phone number when using Oney Spain). The phone number must be prefixed with international area code starting with a +.

    Example: +33666666666

  • SHIPTOPHONE string(1-15)

    Shipping phone number in international format (Example +33XXXXXXXXX). At least one of the shipping phone number must be provided. Please send either SHIPTOPHONE or SHIPTOMOBILEPHONE. The phone number location provided must correspond to the country in which the payment is made (Example provide a Spanish phone number when using Oney Spain). The phone number must be prefixed with international area code starting with a +.

    Example: +33111111111

  • SHIPTOPOSTALCODE string(1-9)

    The shipping postal code.

    Example: 10007

  • SHIPTOTITLE mr, miss, mrs

    Holder’s title in the shipping address.

    Example: mr

  • VERSION 3.0

    The API protocol version.

    Example: 3.0

Request result

Here is the request result from the platform:
  • DESCRIPTOR string

    The transaction label sent to the bank network. The transaction will display with this label on the user’s bank statement.

    Example: myshop.com

  • EXECCODE string(4)

    The operation result code. (See the complete list of execution code)

    Example: 0000

  • MESSAGE string(no length limit)

    The operation result description linked to EXECCODE.

    Example: The transaction has been accepted

  • OPERATIONTYPE authorization

    The action you want to process.

    Example: payment

  • REDIRECTHTML string(no length limit)

    HTML content to display to the user to continue the processing. The string is base64 encoded.

    Example:

  • TRANSACTIONID string(1-32)

    Unique Dalenys transaction ID. Make sure to store this ID in your database.

    Example: A1123456

Notification result parameters

Please see the dedicated section about notification and redirection

Here is the request result from the platform:
  • AMOUNT integer

    The transaction amount in the smallest money decimal (e.g. cents for euro).

    Example: 1000

  • CLIENTEMAIL email(5-255)

    The user’s email.

    Example: john.snow@example.com

  • CLIENTIDENT string(1-255)

    Unique identifier of the user in your application (e.g. a login or a primary key).

    Example: john.snow

  • CURRENCY string(3)

    Currency code (ISO 4217 format).

    Example: EUR

  • DESCRIPTOR string

    The transaction label sent to the bank network. The transaction will display with this label on the user’s bank statement.

    Example: myshop.com

  • EXECCODE string(4)

    The operation result code. (See the complete list of execution code)

    Example: 0000

  • EXTRADATA string(1-255)

    Free field (Dalenys will send you back the content of the EXTRADATA you specified ahead).

    Example: referrer=myshop.com;order=premium

  • HASH string(64)

    The transaction’s hash as described in the dedicated section.

    Example: 15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4

  • IDENTIFIER string(1-32)

    Your processing account technical identifier.

    Example: YOUR_IDENTIFIER

  • LANGUAGE fr, en, de, es, it, nl, zh, ru, pt, sk

    Configure the hosted form display language.

    Example: en

  • MESSAGE string(no length limit)

    The operation result description linked to EXECCODE.

    Example: The transaction has been accepted

  • OPERATIONTYPE authorization

    The action you want to process.

    Example: payment

  • ORDERID string(1-40)

    Unique ID associated to an order in the merchant’s database (as specified in your initial POST request)

    Example: 1234

  • TRANSACTIONID string(1-32)

    Unique Dalenys transaction ID. Make sure to store this ID in your database.

    Example: A1123456

  • VERSION 3.0

    The API protocol version.

    Example: 3.0

Capture

Authorizations have to be captured by a server to server request.

info

You can only capture a succeeded authorization transaction and an authorization can only be captured once.

warning

A capture must be triggered within 7 days of an authorization, otherwise capture success is no longer guaranteed.

Example

Here is a server to server request example:

$> curl --request POST --url "https://secure-test.dalenys.com/front/service/rest/process" \
--data "method=capture" \
--data "params[IDENTIFIER]=Demo Shop" \
--data "params[OPERATIONTYPE]=capture" \
--data "params[TRANSACTIONID]=A1123456" \
--data "params[ORDERID]=1234" \
--data "params[DESCRIPTION]=Knows nothing" \
--data "params[VERSION]=3.0" \
--data "params[HASH]=15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4" \

Parameters

  • DESCRIPTION string(1-510)

    A short description of the operation, can be used to trigger fraud actions. Don’t hesitate to ask your Payment Manager for some advice on this topic.

    Example: Knows nothing

  • EXTRADATA string(1-255)

    Free field (Dalenys will send you back the content of the EXTRADATA you specified ahead).

    Example: referrer=myshop.com;order=premium

  • FEES integer

    Marketplace fees in cents.

    Example: 2000

  • HASH string(64)

    The transaction’s hash as described in the dedicated section.

    Example: 15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4

  • IDENTIFIER string(1-32)

    Your processing account technical identifier.

    Example: Demo Shop

  • OPERATIONTYPE capture

    The action you want to process.

    Example: payment

  • ORDERID string(1-40)

    Unique ID associated to an order in the merchant’s database (as specified in your initial POST request)

    Example: 1234

  • TRANSACTIONID string(1-32)

    The authorization’s TRANSACTIONID you want to capture.

    Example: A1123456

  • VERSION 3.0

    The API protocol version.

    Example: 3.0

Request result

Here is the request result from the platform:
  • DESCRIPTOR string

    The transaction label sent to the bank network. The transaction will display with this label on the user’s bank statement.

    Example: myshop.com

  • EXECCODE string(4)

    The operation result code. (See the complete list of execution code)

    Example: 0000

  • MESSAGE string(no length limit)

    The operation result description linked to EXECCODE.

    Example: The transaction has been accepted

  • OPERATIONTYPE capture

    The action you want to process.

    Example: payment

  • TRANSACTIONID string(1-32)

    Unique Dalenys transaction ID. Make sure to store this ID in your database.

    Example: A1123456

Notification result parameters

Here is the request result from the platform:
  • AMOUNT integer

    The transaction amount in the smallest money decimal (e.g. cents for euro).

    Example: 1000

  • CLIENTEMAIL email(5-255)

    The user’s email.

    Example: john.snow@example.com

  • CLIENTIDENT string(1-255)

    Unique identifier of the user in your application (e.g. a login or a primary key).

    Example: john.snow

  • CURRENCY string(3)

    Currency code (ISO 4217 format).

    Example: EUR

  • DESCRIPTOR string

    The transaction label sent to the bank network. The transaction will display with this label on the user’s bank statement.

    Example: myshop.com

  • EXECCODE string(4)

    The operation result code. (See the complete list of execution code)

    Example: 0000

  • EXTRADATA string(1-255)

    Free field (Dalenys will send you back the content of the EXTRADATA you specified ahead).

    Example: referrer=myshop.com;order=premium

  • HASH string(64)

    The transaction’s hash as described in the dedicated section.

    Example: 15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4

  • IDENTIFIER string(1-32)

    Your processing account technical identifier.

    Example: YOUR_IDENTIFIER

  • LANGUAGE fr, en, de, es, it, nl, zh, ru, pt, sk

    Configure the hosted form display language.

    Example: en

  • MESSAGE string(no length limit)

    The operation result description linked to EXECCODE.

    Example: The transaction has been accepted

  • OPERATIONTYPE capture

    The action you want to process.

    Example: payment

  • ORDERID string(1-40)

    Unique ID associated to an order in the merchant’s database (as specified in your initial POST request)

    Example: 1234

  • TRANSACTIONID string(1-32)

    Unique Dalenys transaction ID. Make sure to store this ID in your database.

    Example: A1123456

  • VERSION 3.0

    The API protocol version.

    Example: 3.0

Refund

Refunds can either be processed through server-to-server request or Dalenys Dashboard.

Example

Here is a server to server request example:

$> curl --request POST --url "https://secure-test.dalenys.com/front/service/rest/process" \
--data "method=refund" \
--data "params[IDENTIFIER]=Demo Shop" \
--data "params[OPERATIONTYPE]=refund" \
--data "params[TRANSACTIONID]=A1123456" \
--data "params[ORDERID]=1234" \
--data "params[DESCRIPTION]=Knows nothing" \
--data "params[VERSION]=3.0" \
--data "params[HASH]=15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4" \

Parameters

  • AMOUNT integer

    The amount to refund. When not specified, refund 100% of the initial transaction resting amount. Could not be higher than the resting amount.

    Example: 1000

  • DESCRIPTION string(1-510)

    A short description of the operation, can be used to trigger fraud actions. Don’t hesitate to ask your Payment Manager for some advice on this topic.

    Example: Knows nothing

  • EXTRADATA string(1-255)

    Free field (Dalenys will send you back the content of the EXTRADATA you specified ahead).

    Example: referrer=myshop.com;order=premium

  • FEES integer

    Marketplace fees in cents.

    Example: 2000

  • HASH string(64)

    The transaction’s hash as described in the dedicated section.

    Example: 15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4

  • IDENTIFIER string(1-32)

    Your processing account technical identifier.

    Example: Demo Shop

  • OPERATIONTYPE refund

    The action you want to process.

    Example: payment

  • ORDERID string(1-40)

    Unique ID associated to an order in the merchant’s database (as specified in your initial POST request)

    Example: 1234

  • TRANSACTIONID string(1-32)

    The capture’s TRANSACTIONID you want to refund.

    Example: A1123456

  • VERSION 3.0

    The API protocol version.

    Example: 3.0

Request result

Here is the request result from the platform:
  • DESCRIPTOR string

    The transaction label sent to the bank network. The transaction will display with this label on the user’s bank statement.

    Example: myshop.com

  • EXECCODE string(4)

    The operation result code. (See the complete list of execution code)

    Example: 0000

  • MESSAGE string(no length limit)

    The operation result description linked to EXECCODE.

    Example: The transaction has been accepted

  • OPERATIONTYPE refund

    The action you want to process.

    Example: payment

  • TRANSACTIONID string(1-32)

    Unique Dalenys transaction ID. Make sure to store this ID in your database.

    Example: A1123456

Notification result parameters

Here is the request result from the platform:
  • AMOUNT integer

    The transaction amount in the smallest money decimal (e.g. cents for euro).

    Example: 1000

  • CLIENTEMAIL email(5-255)

    The user’s email.

    Example: john.snow@example.com

  • CLIENTIDENT string(1-255)

    Unique identifier of the user in your application (e.g. a login or a primary key).

    Example: john.snow

  • CURRENCY string(3)

    Currency code (ISO 4217 format).

    Example: EUR

  • DESCRIPTOR string

    The transaction label sent to the bank network. The transaction will display with this label on the user’s bank statement.

    Example: myshop.com

  • EXECCODE string(4)

    The operation result code. (See the complete list of execution code)

    Example: 0000

  • EXTERNALENTITYID int (1-10)

    Merchant account’s reference

    Example:

  • EXTERNALREFERENCE int (9)

    Transaction’s reference (string left padded with 0 of 9 digits)

    Example: 19

  • EXTRADATA string(1-255)

    Free field (Dalenys will send you back the content of the EXTRADATA you specified ahead).

    Example: referrer=myshop.com;order=premium

  • HASH string(64)

    The transaction’s hash as described in the dedicated section.

    Example: 15477dcb8687adf90fa51e418f3c1a2d025f40b177a978c2734514734633b3c4

  • IDENTIFIER string(1-32)

    Your processing account technical identifier.

    Example: YOUR_IDENTIFIER

  • LANGUAGE fr, en, de, es, it, nl, zh, ru, pt, sk

    Configure the hosted form display language.

    Example: en

  • MESSAGE string(no length limit)

    The operation result description linked to EXECCODE.

    Example: The transaction has been accepted

  • OPERATIONTYPE refund

    The action you want to process.

    Example: payment

  • ORDERID string(1-40)

    Unique ID associated to an order in the merchant’s database (as specified in your initial POST request)

    Example: 1234

  • TRANSACTIONID string(1-32)

    Unique Dalenys transaction ID. Make sure to store this ID in your database.

    Example: A1123456

  • VERSION 3.0

    The API protocol version.

    Example: 3.0

Specific details

Spanish accounts

Accounts related to oney.es are subject to specific rules:

  • parameter PAYMENTOPTION must be valued with “facilypay-3xsansfrais” only
  • parameters BILLINGPHONE and SHIPTOPHONE must respect this specific pattern: “+348 or +349 followed by 8 digits”
  • parameters BILLINGMOBILEPHONE and SHIPTOMOBILEPHONE must respect this specific pattern: “+346 or +347 followed by 8 digits”

Technical validation reports

Oney France - English version to download.

Oney France - French version to download.

Spanish version to download.

MCC 3000-3300 + 4511

Merchants whose activity corresponds to the MCC above are subject to special rules:

  • Merchant must send additional parameters and subparameters dedicated to travel (Please find the list bellow) in their authorization request.
  • Merchant must proceed one capture per passenger (per PNR ticket);
  • Each capture must contain additional parameters as below;

Parameters

The parameters dedicated to travel are grouped into 3 categories:

Optional header parameters about the trip owner
  • TRAVELPASSENGERDOB date(YYYY-MM-DD)

    Traveler date of birth.

    Example: 1976-07-06

  • TRAVELPASSENGERFIRSTNAME string(1-50)

    Traveler first name.

    Example: John

  • TRAVELPASSENGERLASTNAME string(1-50)

    Traveler last name.

    Example: Doe

TRAVELLEGS[X] nested parameters each occurrence of which designates a journey of the trip
  • TRAVELLEGS[X][departuredate]

    Example:

  • TRAVELLEGS[X][destinationlocationcode]

    Example:

  • TRAVELLEGS[X][exchangeable]

    Example:

  • TRAVELLEGS[X][insurance]

    Example:

  • TRAVELLEGS[X][meantransport]

    Example:

  • TRAVELLEGS[X][originlocationcode]

    Example:

  • TRAVELLEGS[X][passengercount]

    Example:

  • TRAVELLEGS[X][rank]

    Example:

  • TRAVELLEGS[X][serviceclass]

    Example:

TRAVELSTAYS[X] nested parameters each occurrence of which designates a lodging during the trip
  • TRAVELSTAYS[X][arrivaldate]

    Example:

  • TRAVELSTAYS[X][departuredate]

    Example:

  • TRAVELSTAYS[X][insurance]

    Example:

  • TRAVELSTAYS[X][location]

    Example:

  • TRAVELSTAYS[X][passengercount]

    Example:

  • TRAVELSTAYS[X][roomcount]

    Example:

  • TRAVELSTAYS[X][type]

    Example:

  • TRAVELSTAYS[X][vehiclerent]

    Example:

Example

Let us assume that a family of 4 people (2 adults and 2 children) plans to make this travel:

  • Outward journey: Paris > New York / - Return : San Francisco > Paris
  • Hotel booking in New York
  • A trip from New York to San Francisco by bus
  • Rental of apartment in San Francisco

The request will therefore contain :

  • 3 occurrences of the TRAVELLEGS[X] nested parameters
  • 2 occurences of the TRAVELSTAYS[X] nested parameters

As follows :

$> curl --request POST --url "https://secure-test.dalenys.com/front/service/rest/process" \
--data "method=" \
--data "params[TRAVELPASSENGERLASTNAME]=Doe" \
--data "params[TRAVELPASSENGERFIRSTNAME]=John" \
--data "params[TRAVELPASSENGERDOB]=1976-07-06" \
--data "params[TRAVELLEGS][0][RANK]=1" \
--data "params[TRAVELLEGS][0][DEPARTUREDATE]=2018-12-01" \
--data "params[TRAVELLEGS][0][ORIGINLOCATIONCODE]=CDG" \
--data "params[TRAVELLEGS][0][DESTINATIONLOCATIONCODE]=JFK" \
--data "params[TRAVELLEGS][0][SERVICECLASS]=First class" \
--data "params[TRAVELLEGS][0][EXCHANGEABLE]=true" \
--data "params[TRAVELLEGS][0][INSURANCE]=true" \
--data "params[TRAVELLEGS][0][MEANTRANSPORT]=plane" \
--data "params[TRAVELLEGS][0][PASSENGERCOUNT]=4" \
--data "params[TRAVELSTAYS][0][LOCATION]=Hotel Central of New York" \
--data "params[TRAVELSTAYS][0][ARRIVALDATE]=2018-12-01" \
--data "params[TRAVELSTAYS][0][DEPARTUREDATE]=2018-12-06" \
--data "params[TRAVELSTAYS][0][VEHICLERENT]=true" \
--data "params[TRAVELSTAYS][0][INSURANCE]=true" \
--data "params[TRAVELSTAYS][0][TYPE]=hotel" \
--data "params[TRAVELSTAYS][0][PASSENGERCOUNT]=4" \
--data "params[TRAVELSTAYS][0][ROOMCOUNT]=2" \
--data "params[TRAVELLEGS][1][RANK]=2" \
--data "params[TRAVELLEGS][1][DEPARTUREDATE]=2018-12-06" \
--data "params[TRAVELLEGS][1][ORIGINLOCATIONCODE]=NYC" \
--data "params[TRAVELLEGS][1][DESTINATIONLOCATIONCODE]=SFO" \
--data "params[TRAVELLEGS][1][SERVICECLASS]=First class" \
--data "params[TRAVELLEGS][1][EXCHANGEABLE]=true" \
--data "params[TRAVELLEGS][1][INSURANCE]=true" \
--data "params[TRAVELLEGS][1][MEANTRANSPORT]=bus" \
--data "params[TRAVELLEGS][1][PASSENGERCOUNT]=4" \
--data "params[TRAVELSTAYS][1][LOCATION]=Air Bnb - The big palm tree - San Francisco" \
--data "params[TRAVELSTAYS][1][ARRIVALDATE]=2018-12-07" \
--data "params[TRAVELSTAYS][1][DEPARTUREDATE]=2018-12-12" \
--data "params[TRAVELSTAYS][1][VEHICLERENT]=" \
--data "params[TRAVELSTAYS][1][INSURANCE]=" \
--data "params[TRAVELSTAYS][1][TYPE]=rental" \
--data "params[TRAVELSTAYS][1][PASSENGERCOUNT]=4" \
--data "params[TRAVELLEGS][2][RANK]=3" \
--data "params[TRAVELLEGS][2][DEPARTUREDATE]=2018-12-12" \
--data "params[TRAVELLEGS][2][ORIGINLOCATIONCODE]=SFO" \
--data "params[TRAVELLEGS][2][DESTINATIONLOCATIONCODE]=CDG" \
--data "params[TRAVELLEGS][2][SERVICECLASS]=First class" \
--data "params[TRAVELLEGS][2][EXCHANGEABLE]=true" \
--data "params[TRAVELLEGS][2][INSURANCE]=true" \
--data "params[TRAVELLEGS][2][MEANTRANSPORT]=plane" \
--data "params[TRAVELLEGS][2][PASSENGERCOUNT]=4" \

Sandbox test card numbers

The Oney test card numbers (PANs) used to trigger specific execution codes, depending on your country in the sandbox environment, are regularly updated by Oney. Please contact Oney to get the test card numbers up to date.