Page tree
Skip to end of metadata
Go to start of metadata

Content


Presentation

In Widget mode, Payline offers to manage the installments, first you call doWebPayment service and read the result with getWebPaymentDetails service.


Step 1: Initialize the web payment request

This step is realized with the doWebPayment web service.

Element

Description

Required

Type

Example

payment.mode

Method of payment: cash, deferred, installment, recurring.

yes

AN3

NX : installment


recurring.firstAmount

The amount of the first amount to be realized. It must be done in the smallest currency unit.

No4

N12

pour un montant de 100 €, vous devez mettre la valeur 10000.

recurring.amount

The first installment amount. It must be done in the smallest currency unit.

yes4

N12

pour un montant de 5 €, vous devez mettre la valeur 500.

recurring.billingCycle

The code for the frequency of payments.


yes4

N2

40 : monthly
60 : quarterly

see list

recurring.billingLeft

Number of installment

no4

N3

3

recurring.billingDay

Day on which the installments must be processed.

no

AN2

Format : dd de [01 à 30]

recurring.startDate

The date of the first due date. If this field is not filled in, Monext assigns the current date to it.


no4

AN10

Format : dd/mm/yyyy

<impl:payment>
  <obj:amount>150000</obj:amount>
  <obj:currency>978</obj:currency>
  <obj:action>100</obj:action>
  <obj:mode>NX</obj:mode>
  <obj:contractNumber>1234567</obj:contractNumber>
  <obj:differedActionDate />
</impl:payment>
….
<impl:recurring>
   <obj:firstAmount>50000</obj:firstAmount>
   <obj:amount>50000</obj:amount>
   <obj:billingCycle>40</obj:billingCycle>
   <obj:billingLeft>3</obj:billingLeft>
   <obj:billingDay>05</obj:billingDay>
   <obj:startDate></obj:startDate>
</impl:recurring>

Step 2: Read the details of the transaction

This step is performed with the getWebPaymentDetails web service.

For each installment (billingRecord):

Element

Comment

Format

Example

billingRecord.date

The due date

AN10

Format : dd/mm/yyyy

billingRecord.amount

The amount of the due date in the smallest currency unit .

N12


billingRecord.status

The status of a installment:

0: due date to come.
1: installment accepted.
2: installment refused.

AN1


billingRecord.result.code

The return code for processing the due date:

00000 : Transaction approved
01xxx : Transaction refused
02302 : Transaction invalid

N5

check the list

billingRecord.result.shortMessage

Short message of the result of the transaction

AN50


billingRecord.result.longMessage

Transaction result message

AN255


billingRecord.transaction.Id

Unique identifier of the Payline transaction

AN50


billingRecord.transaction.isPossibleFraud

This indicator is calculated according to the criteria defined by the merchant


AN1

1 = There is a risk of fraud

0 = No risk of fraud detected

billingRecord.transaction.isDuplicated

This indicator is returned by Payline in the case of a duplicate transaction

AN1

1 = There is a risk of fraud

0 = No risk of fraud detected

billingRecord.transaction.date

Date and time of the Payline transaction

AN16

Format :dd/mm/yyyy HH24:MI

billingRecord.authorization.number

Authorization number issued by the acquiring authorization server. This field is completed if the authorization request is granted *

N6

123456

billingRecord.authorization.date

Date and time of authorization

AN16

Format :dd/mm/yyyy HH24:MI


Here is an example of the response from the web service getWebPaymentDetails

<billingRecordList>

<billingRecord xmlns="http://obj.ws.payline.experian.com">
      <date>10/09/2013</date>
      <amount>50000</amount>
      <status>1</status>
      <result>
            <code>00000</code>
            <shortMessage>Transaction approved</shortMessage>
            <longMessage>Transaction approved</longMessage>
      </result>
      <transaction>
            <id>10910171316416</id>
            <date>10/09/2013 17:13</date>
            <isDuplicated/>
            <isPossibleFraud/>
      </transaction>
      <authorization>
            <number>A55A</number>
            <date/>
      </authorization>
</billingRecord>

<billingRecord xmlns="http://obj.ws.payline.experian.com">
      <date>05/10/2013</date>
      <amount>50000</amount>
      <status>0</status>
</billingRecord>

<billingRecord xmlns="http://obj.ws.payline.experian.com">
      <date>05/11/2013</date>
      <amount>50000</amount>
      <status>0</status>
</billingRecord>

</billingRecordList>

Read the installment detail result

Following the notification of a due date, you must collect the result of the transaction by calling the getPaymentRecord  web service with the identifier of the payment file received as a parameter of the notification URL.

<impl:getPaymentRecordRequest>
  <impl:contractNumber>7891234</impl:contractNumber>
  <impl:paymentRecordId>185321</impl:paymentRecordId>
</impl:getPaymentRecordRequest>

Deactivate a payment record

To deactivate a payment record, you must make a call to the disablePaymentRecord web service.

<impl:disablePaymentRecordRequest>
     <impl:contractNumber>7891234</impl:contractNumber>
     <impl:paymentRecordId>185531</impl:paymentRecordId>
</impl:disablePaymentRecordRequest>

Modify an installment

Changing a By clicking on the "Modify" link from an installment, you have access to this screen:can be done on the backoffice.

To do this, go to the "Recurring payment" / "Management of payment files" tab, find your payment file with its number.

In the details of the payment file, you can see your upcoming installments:

By clicking on the "Edit" link from an installment, you have access to this screen:

You can change the amount and / or the due date from this screen.


The timetable display


The function in Widget mode is:

Payline.Underscore.forEach( Payline.Api.getRecurringDetails().schedules, function(key, value) { console.log(value + " " + key) } );


The format of the schedule:

{
  "schedules": {
    "24/05/2018": "5,00 EUR",
    "31/05/2018": "5,00 EUR",
    "07/06/2018": "5,00 EUR",
    "14/06/2018": "5,00 EUR",
    "21/06/2018": "5,00 EUR",
    "28/06/2018": "5,00 EUR",
    "05/07/2018": "5,00 EUR",
    "12/07/2018": "5,00 EUR",
    "19/07/2018": "5,00 EUR",
    "26/07/2018": "5,00 EUR",
    "02/08/2018": "5,00 EUR",
    "09/08/2018": "5,00 EUR",
    "16/08/2018": "5,00 EUR",
    "23/08/2018": "5,00 EUR",
    "30/08/2018": "5,00 EUR",
    "06/09/2018": "5,00 EUR",
    "13/09/2018": "5,00 EUR",
    "20/09/2018": "5,00 EUR",
    "27/09/2018": "5,00 EUR",
    "04/10/2018": "5,00 EUR"
  },
  "type": "NX",
  "billingNumber": 20,
  "firstAmount": "5,00 EUR",
  "billingCycle": "Hebdomadaire",
  "amount": "5,00 EUR"
}

The payment page display summarizes the schedule information:

The payment receipt contains the information of the payment schedule: