Partial / Split Shipment

Last changes: 01-26-2024

Partial / Split Shipment

The following section will describe the procedure and how to use/integrate partial/split shipment payment use case. 

  

When a cardholder is in session, the merchant initiates a card registration transaction with a payment authorization and indicates in the payment request that it is a partial/split shipment case which means that the purchased goods or services will be delivered in multiple shipments (Partial/Split shipment). The cardholder will have to perform authentication for the full amount of the purchase, and the authorization amount will be equal to the amount of the first shipment. 

The merchant would then capture the authorized amount for the first shipment and not the total amount of the order which was authenticated by the cardholder.  

For all subsequent shipments the merchant can use one or more Merchant Initiated Transactions (MIT) to authorize further payments until the total amount which was initially authenticated by the customer (Order amount that was authenticated =500€. 1st shipment =250 €, 2nd shipment = 200€, 3rd shipment =50€). If an MIT transaction had a total amount exceeding the initial authentication amount, it would not be processed, and an error is returned to the merchant. 

3RI payment can only be triggered within 90 days from the initial CIT transaction. The CIT transaction must be captured before attempting MIT Authorization. After 90 days, any authorization/capture will be declined, and the merchant will receive an appropriate error message. 

Create Deal for 3RI

The first step in creating partial/split shipment is to create a deal. The deal collects related merchant-initiated transactions within one authenticated amount. In other words, it allows "binding" the transactions together, to facilitate later 3RI MITs using the Initial CIT as a Reference. 

Create Deal - Request

Path:

PUT {baseURL}/deal

Header:

Content-Type: application/json
Accept-Language: en-US
X-Auth-Token: eyJhbGciOiJSUzI1NiI{abbreviated}RW5kVG9rZW4=

{ 
    "partnerReference": "DEV-3RI-PSS-Create-Deal-001", 
    "programCode": "COMPANY123", 
    "merchantAccno": "MERCHANT-DE-1111", 
    "merchantAccnoType": "00", 
    "dealAuthenticationAmount": 500, 
    "dealTypeCode": "3RIPSS", 
    "localDate": "2019-12-31", 
    "localTime": "235959" 
} 

Create Deal - Response

Status Code:

200 (OK)

Header:

Content-Type: application/json
Accept-Language: en-US

{ 
    "partnerReference": "DEV-3RI-PSS-Create-Deal-001", 
    "programCode": "COMPANY123", 
    "merchantAccno": "MERCHANT-DE-1111", 
    "dealReference": "RjFfNtRcReI1rTm1NzA3r", 
    "dealAuthenticationAmount": 500.00, 
    "dealTotalAmount": 0.00, 
    "dealCurrCode": "EUR", 
    "dealTypeCode": "3RIPSS", 
    "isClosed": False, 
    "localDate": "2019-12-31", 
    "localTime": "235959", 
    "sysDate": "2019-12-31", 
    "sysTime": "235959", 
    "responseCode": "0000", 
    "responseDescription": "Successful execution." 
} 

Optional - Get Deal Data

You can call the “1.158 Get Deal Data” API to view / verify its information. 

Get Deal Data - Request

Path:

GET {baseURL}/deal/RjFfNtRcReI1rTm1NzA3r?partnerReference=DEV-3RI-PSS-Get-Deal-Data-001&localDate=2019-12-31&localTime=235959

Header:

Content-Type: application/json
Accept-Language: en-US
X-Auth-Token: eyJhbGciOiJSUzI1NiI{abbreviated}RW5kVG9rZW4=


Get Deal Data - Response

Status Code:

200 (OK)

Header:

Content-Type: application/json
Accept-Language: en-US

{
  "merchantAccno": "MERCHANT-DE-1111",
  "dealReference": "RjFfNtRcReI1rTm1NzA3r",
  "dealAuthenticationAmount": 500.00,
  "dealTotalAmount": 0.00,
  "dealCurrCode": "EUR",
  "dealTypeCode": "3RIPSS",
  "isClosed": false,
  "dealRelatedTransactions": [],
  "partnerReference": "DEV-3RI-PSS-Get-Deal-Data-001",
  "localDate": "2019-12-31",
  "localTime": "235959",
  "sysDate": "2019-12-31",
  "sysTime": "235959",
  "responseCode": "0000",
  "responseDescription": "Successful execution.",
  "additionalInformation": {
    "requestId": "aff2728481a181dc36daedc14055b516"
  }
}