Voyado integration
Our integration with Voyado allows Walley to check if a user is a member of the loyalty program of the merchant. If the customer is not already a member of the loyalty program, Walley will ask the customer if they would like to enroll as part of the checkout journey. If so, Walley will automatically enroll the customer to the membership program after completing the purchase, all without leaving the checkout experience.
During the checkout session​
When the customer identifies in Walley Checkout, a request to Voyado will be made to check if the customer is already a member based on national registration number, email address or mobile phone number. If the customer is not already a member Walley Checkout will prompt to apply for membership.
If the customer choses to apply, or if the customer is already a member, a walleyCheckoutCrmUpdated
JS event will be sent. When this event is received the merchant will have to acquire checkout information to know the status of the membership.
If the customer is not yet a member, the data returned from the API looks like this:
{
"customer": {
...
"voyadoMembership": {
"applyForMembership": true
}
}
},
applyForMembership
is set to true if the customer wants to apply for membership and false if not.
If the customer is already a member, the member number and the Voyado contact ID will be returned instead:
{
"customer": {
...
"voyadoMembership": {
"contactId": "9b43c86e-227b-4149-b0ee-de7f4846be26",
"memberNumber": "123456789"
}
}
}
After the payment is completed​
If the customer chose to apply for membership Walley will automatically register the customer with Voyado:
{
"firstName": "First name",
"lastName": "Last name",
"street": "Address 1",
"zipCode": "12345",
"city": "City",
"email": "test@walleypay.se",
"mobilePhone": "+46701234567",
"countryCode": "SE",
"socialSecurityNumber": "510731-2323",
"preferences": {
"acceptsEmail": true,
"acceptsPostal": false,
"acceptsSms": false
}
}
Note that Walley Checkout will also provide Voyado with the following properties:
Property | Required | Explanation |
---|---|---|
Source | Yes | Always set to the string "Walley". |
StoreExternalId | No | Set to a value of your chosing to indicate which store in Voyado the customer registered in. Note that this store must be setup in Voyado and can be configured in our settings or as the externalStoreId parameter when initializing the checkout |
Consent | No | If a customer chooses to be a member then we can create a consent and send them to Voyado. Contact Walley Merchant Services to set this up. |
When acquiring checkout information, and the status
property is PurchaseCompleted
, the data.customer.voyadoMembership
object will be returned containing contactId
and memberNumber
. If these two value are null or missing there was an error registering the membership in Voyado.
There will be three scenarios that can occur for the checkout session regarding the membership:
- Customer chose to apply for membership and a membership was successfully registered with Voyado.
- Customer chose to apply for membership and a membership could not be registered with Voyado.
- Customer chose not to apply for membership.
For scenario 2, it is recommended to create the membership manually so that the customer does not lose their points, bonus levels or similar.
- Scenario 1. Successfully registered the membership
- Scenario 2. Failed to register the membership
- Scenario 3. Customer chose not to apply for membership
{
"data": {
"customer": {
"voyadoMembership": {
"contactId": "9b43c86e-227b-4149-b0ee-de7f4846be26",
"memberNumber": "123456789"
}
}
}
}
{
"data": {
"customer": {
"voyadoMembership": {
"applyForMembership": true
}
}
}
}
{
"data": {
"customer": {
"voyadoMembership": {
"applyForMembership": false
}
}
}
}