Last update 6/09/2018

3. Maintenance operations

Maintenance operations are operations performed on already authorised or paid orders, in other words on transactions already existing in our system.

To perform certain maintenance operations, they have to be enabled for your account (sometimes the availability depends on your subscription), your acquirer must allow the operation, and the operation must be possible for the payment method concerned.

3.1 File specifics

3.1.1 OHF Header

The TRANSACTION_CODE for maintenance operations is MTR.

The OPERATION code for the maintenance operation is provided at a file and/or individual transaction level. The operation code at the transaction level will overwrite the operation code at the file level for maintenance operations. This means you can send one file containing different operations, e.g. partial and last data captures, refunds, etc.

The possible values for maintenance operations (field 10) are:

  • DEL: delete authorisation, leaving the transaction open for further potential maintenance operations.
  • DES: delete authorisation, closing the transaction after this operation.
  • SAL: partial data capture (payment), leaving the transaction open for another potential data capture.
  • SAS: (last) partial or full data capture (payment), closing the transaction for further data captures.
  • RFD: partial refund (on a paid order), leaving the transaction open for another potential refund.
  • RFS: (last) partial or full refund (on a paid order), closing the transaction after this refund.

In general you will perform the operations REN, DEL, DES, SAL, SAS on orders in status 5-Authorised and the operations RFD, RFS on orders in status 9-Payment requested.

3.1.2 Transaction level

The fields required at a transaction level for a manual authorisation after the initial authorisation (via our system) was refused (order in status 2-Authorisation refused) are:

  • Amount (field 1 in the file layout)
  • Currency (field 2)
  • Our system’s PAYID (field 9)
  • Operation code (field 10)
  • Authorisation code (field 11)
  • Authorisation mode (field 12)
  • Authorisation date (field 13).

Example

Mike has a PSPID called MilkyMike. He wants to submit his files automatically from an application at his end. To do this, he has created an API user, called MikeAPI, in his account, with A78H29U41 as the password. His login header would be:

OHL;MilkyMike;A78H29U41;;MikeAPI;

1. Authorisation

Mike has a file called AutoMay, containing 1 transaction: an authorisation request for 75 EUR. His file information header would be:

OHF;AutoMay;ATR;RES;1;

This is the file he submits:

OHL;MilkyMike;A78H29U41;;MikeAPI;

OHF;AutoMay;ATR;RES;1;

7500;EUR;;5399999999999999;11/10;Order0001;;Jane Doe;;RES;;;;;;;;;;;;;;;;;;485;

OTF;

After the full upload process, the file is assigned FileID 1543 and the transaction is assigned the following reference from our system (PAYID): 1348645

In the account back office, there is now a PAYID 1348645 with a historic record in status 5-Authorised.

2. Partial data capture

Mike wants to capture data for a part of the authorised amount, leaving the transaction open for a final data capture for the rest of the amount later (operation code: SAL). He wants to capture an amount of 25 EUR for PAYID 1348645. His file is called DataCap1May. His file information header would be:

OHF;DataCap1May;MTR;SAL;1;

This is the file he submits:

OHL;MilkyMike;A78H29U41;;MikeAPI;

OHF;DataCap1May;MTR;SAL;1;

2500;EUR;;;;;;;1348645;SAL;

OTF;

After the full upload process, the file is assigned FileID 1571. In the account back office, PAYID 1348645 now has 2 historic records: /0 in status 5-Authorised for an amount of 75 EUR and /1 in status 9-Payment requested for an amount of 25 EUR. The order status is still 5-Authorised because the submitted data capture was partial.

3. Final data capture

Mike wants to make a LAST data capture for the rest of the authorised amount (operation code: SAS), i.e. a data capture for an amount of 50 EUR for PAYID 1348645. His file is called DataCap2May. His file information header would be:

OHF;DataCap2May;MTR;SAS;1;

This is the file he submits:

OHL;MilkyMike;A78H29U41;;MikeAPI;

OHF;DataCap2May;MTR;SAS;1;

5000;EUR;;;;;;;1348645;SAS;

OTF;

After the full upload process, the file is assigned FileID 1610. In the account back office, PAYID 1348645 now has 3 historic records: /0 in status 5-Authorized for an amount of 75 EUR, /1 in status 9-Payment requested for an amount of 25 EUR and /2 in status 9-Payment requested for an amount of 50 EUR. The order status is now 9- Payment requested because the submitted data capture was the LAST one (closing the transaction).

4. Refund

Mike wants to refund (operation code: RFS) the customer for the full amount, a refund for an amount of 75 EUR for PAYID 1348645. His file is called RefundMay. His file information header would be:

OHF;RefundMay;MTR;RFS;1;

This is the file he submits:

OHL;MilkyMike;A78H29U41;;MikeAPI;

OHF;RefundMay;MTR;RFS;1;

7500;EUR;;;;;;;1348645;RFS;

OTF;

After the full upload process, the file is assigned FileID 1671. In the account back office, PAYID 1348645 now has 4 historic records: /0 in status 5-Authorized for an amount of 75 EUR, /1 in status 9-Payment requested for an amount of 25 EUR, /2 in status 9-Payment requested for an amount of 50 EUR and 3/ in status 8-Refund for an amount of 75 EUR. The order status is now 8- Refund because the submitted refund was the LAST one (closing the transaction).

As a leading global digital payment service provider, Ingenico Payment Services provides a seamless response to the complexity of payments, whatever the channel: online, mobile and point-of-sale. Offering innovative e-commerce, multi-channel, financial, and marketing solutions, it helps merchants to manage, collect and secure their payments, prevent fraud and increase their revenues through higher conversions. Ingenico Payment Services is part of the Ingenico Group, the global leader in seamless payment.

This website uses cookies to be able to give you the best user experience. If you don't want to accept these cookies, we allow you to change the cookie settings. Click 'Accept' to allow all cookies from this website.

Cookie settings

Introduction

Functional

Functional cookies are required for the website to operate correctly. These cookies cannot be disabled.

Optimized

Optimization cookies allow us to analyze site usage so we can measure and improve our website.
This is the default level.

Personalized

Personalization cookies are used for social media and advanced personalization. They allow us to show you information related to your company.


Example functionality allowed

  • Store country preference
  • Store language preference

Example functionality not allowed

  • Saving personal data
  • Anonymous tracking via Google Analytics
  • Tracking for remarketing purposes

Example functionality allowed

  • Store country preference
  • Store language preference
  • Anonymous tracking via Google Analytics

Example functionality not allowed

  • Saving personal data
  • Tracking for remarketing purposes

Example functionality allowed

  • Store country preference
  • Store language preference
  • Anonymous tracking via Google Analytics
  • Serve content relevant to your interests
  • Serve ads relevant to your interests
  • Tracking for remarketing purposes

Example functionality not allowed

  • Saving personal data