RegisterCard: linking a card number to a wallet for one-click payment or rebill

This functionality is used for "Rebill" or "One Click" payment. Do not forget to make sure to send a confirmation Email to the customer each time you rebill his card, to avoid payment repudiation and chargeback. Also always double-check that a customer can stop rebill on his card on your website. Customers that cannot cancel a rebill will go to the bank or the police, pretend they never went to your website, and get a refund of the 180 days passed transactions, causing trouble to scale your business. With a risk of bad reputation of your website and also a risk for our brand "Lemonway".
This functionality requires an authorization of 1 euro that is never validated. Some issuers might temporary display the euro on statements, but the euro will never be debited from the card.

Version

Description

1.0


1.2

Output: EXTRA data

How it works

"RegisterCard" makes a link between a wallet and a card. Your customers won't have to enter their fastidious card details again (16 digits of the card, CVV, expiration date, card type). Less hasle for your customers.

Important: make sure the login on your website is secured enough to avoid phishing. Someone else could log on your website, pretend to be a customer that did memorize its card on your website, and use someone else card to pay on your website.


The flow is as follow:

  1. Your WHITE BRAND application sends the Wallet ID and the card data
  2. Lemonway answers

Request

XML

<RegisterCard xmlns="Service_mb">
  <wlLogin>string</wlLogin>
  <wlPass>string</wlPass>
  <language>string</language>
  <version>string</version>
  <walletIp>string</walletIp>
  <walletUa>string</walletUa>
  <wallet>string</wallet>
  <cardType>string</cardType>
  <cardNumber>string</cardNumber>
  <cardCode>string</cardCode>
  <cardDate>string</cardDate>
  <specialConfig>string</specialConfig>
</RegisterCard>

JSON

{   
    "wlLogin":"string",
    "wlPass":"string",
    "language":"string",
    "version":"string",
    "walletIp":"string",
    "walletUa":"string",
    "wallet":"string",
    "cardType":"string",
    "cardNumber":"string",
    "cardCode":"string",
    "cardDate":"string",
    "specialConfig":"string"
}

Item

Description

Mandatory

Format

Example

wallet

Wallet ID

Yes

[0 : 256] char

33612345678 ou taxi67

cardType

Card Type

Yes

[1 :1] char

0: CB
1: Visa
2: Mastercard

cardNumber

Card number

Yes

[13 :19] char

4972000011112222

cardCode

CVV code on the back of the card

Yes

[3 : 4] char

123

cardDate

Card expiration date

Yes

[7] char

06/2013

specialConfig

Leave empty

No

[0 :max] char


Answer

XML

<?xml version="1.0" encoding="utf-8"?>
<CARD>
	<ID>String</ID>
	<EXTRA> <!--since version 1.2 -->
		<IS3DS>string</IS3DS>
		<CTRY>string</CTRY>
		<AUTH>string</AUTH>
		<NUM>string</NUM>
		<EXP>string</EXP>
	</EXTRA>
</CARD>
  

JSON

{  
    "CARD":{  
        "ID":"String",
        "EXTRA":{  
            "IS3DS":"string",
            "CTRY":"string",
            "AUTH":"string",
            "NUM":"string",
            "EXP":"string"
        }
    }
}

Version

Item

Description

Example

>= 1.0

ID

Memorized card token for further use (rebill)

255

>= 1.2

EXTRA

Extra data


>= 1.2

EXTRA.IS3DS

Indicates if the transaction was 3D Secure:
Always 0 in this case

0

>= 1.2

EXTRA.CTRY

Card issuing country

FRA

>= 1.2

EXTRA.AUTH

Authorization number

43245

>= 1.2

EXTRA.NUM

Card number

4646XXXXXXXX78

>= 1.2

EXTRA.EXP

Expiration date MM/YYYY

03/2016