We will define how to reuse a MYMOID payment order throughout this section. We have assumed that the people reading this documentation have consulted the Payment documentation. The contents that we are going to deal with are the following:

  1. Introduction
  2. Reissue a PaymentOrder
  3. Storing a payment method to reissue it later


1.- Introduction


To be able to reissue a payment order, it must be in PAID status, otherwise we will not be able to reissue it. In reissuing a payment order, in reality what we are doing is to create a new payment order and pay it at that time with the payment method used with the original payment order.


2.- Reissue a PaymentOrder


The principal advantage of this functions consists in being able to reuse a payment method without the need to enter it again. In this way, clients do not have to provide their card data, which means an advantage both from the safety point of view as well as for comfort. To do so, we will start from a previously paid payment order. Below we will create a new payment order with the parameters reference, concept and amount and we will pay it by using the payment method used in the initial payment order.


The request to make is the following:

 

POST                {urlServidorMymoid}/pay/order/reissue/{paymentOrderId}

 

The paymentOrderId parameter of the url is the identifier of the payment order in the paid status from which we want to reuse the payment method. The body of the request will be the following:

 
{
  "reference":"reference of the new payment order",
  "concept":"concept of the new payment order",
  "amount": 1
}

 

The response by the API will have the following format:

 

 

 

{
  "status": true,
  "code": 0,
  "data": {
    "paymentOrderId": "c9b2dd940ed9614d5424e12a59c2d31167975fffc85c3dbca9ccd3386bd29bfd",
    "shortCode": "RGLL3P",
    "currencyCode": "EUR",
    "amount": 100,
    "merchantId": "282682dd6b19c81ee7d6b3322505ebe20e03467c0a6dac129c2206e5202ba375",
    "reference": "reference of the new payment order",
    "concept": "concept of the new payment order",
    "status": "PAID",
    "currentStatus": {},
    "expirationCard": "01/20",
    "pan": "xxxxxxxxxxxx0003",
    "creationDate": 1454504239000
  }
}

 

 

 

 The details of the payment method received in the response (pan and expiration Card) make reference to the payment method that was used to pay the original payment order, as we have previously described.


3.- Storing a payment method to reissue it later


One of the most interesting possibilities of this function is the ability to store a payment method without the need to make any charge on it. To do so, the procedure will be the same as the one described in section 6 of the Payment documentation. We will create a payment order for an amount of 0 Euros, we will load its associated payment form and we will enter into it the payment method as section 8 of the previously mentioned documentation indicates. In this case, no charge will be made on the payment method entered, it will simply validate that its information is correct, as such the form will not show the amount of the payment order. Another of the differences that we will find is that the form button will put Valid card instead of Accept as we described in section 9 of the Payment documentation. Below we can see what the payment form will look like:



If the payment method is valid, the payment order will appear as paid and we can reissue it as many times as we want according to what was described in the previous section.