Payment modifications

This section describes the possible modification actions. You can submit modifications through your merchant account through the Adyen Customer Area (CA). If you are processing more than a handful of payments on a daily basis, we recommend automating this process; to do this, we make available a web service that accepts the modification requests from your system.

To submit modification messages, you need to provide valid authentication credentials:

  • The username format is ws@Company.[YourCompanyAccount].
  • To set the corresponding password, go to the Customer Area, then select Settings > Users.

Adyen replies to modification requests with an appropriate response message, for example, capture-receivedcancel-received, or refund-received. This message means that the request is being processed. The modification requests are verified by Adyen backend systems before sending to the payment methods. If the data provided in the request differs from auth request, you are notified to correct the data and submit the request again.

For Point-of-Sale payments, modifications are specific to the library integrations. For more information, see our detailed library integration guides.

Capture

You can capture payments only for payment methods that support distinct authorisations and captures.

After the payment is authorised, you can capture it to complete the transaction and collect the payment.

Request

To capture an authorised payment, you send a modification request to the capture action, where you pass the fields described below.

See CaptureModificationRequest for more information on fields.

Response

If the message you send with the call is syntactically valid, you receive a capture-received response.

Capture final result

In most cases, we send the final result of a capture with a notification message whose eventCode value is CAPTURE.

The  pspReference in this notification is the same as the  pspReference in the capture modification response.

The success field in the response indicates if the capture was successful or not:

  • true: the capture was successful.
  • false: the capture failed. In this case, the notification message includes a reason field with a short description of the problem.

Offline capture

Some payment methods handle the capture process offline. Sometimes, we may receive a failure. In such a scenario, we send a notification message whose eventCode value is CAPTURE_FAILED.

The pspReference of this notification is the same as the pspReference in the capture modification response.

The success field in the response is set to true.

Capture delay

To define a capture delay, go to the Customer Area, then select Settings > Merchant Setting > Capture Delay.

The Customer Area offers an option to configure an automated capture process to automatically capture payments after a specified number of days, ranging from no delay, i.e. immediate capture, up to 7 days.

Code examples

The following code examples show payment capture modification requests and responses in JSON, FORM, and SOAP.

Request:

{
    "merchantAccount" : "TestMerchant",

    "modificationAmount" : {
        "value" : 500,
        "currency" : "EUR"
    },
    
    "originalReference" : "8313547924770610",
    "reference" : "YourModificationReference"
}

Response:

{
    "pspReference" : "8413547924770610",
    "response" : "[capture-received]"
}

Request:

 <?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"     xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:capture xmlns:ns1="http://payment.services.adyen.com">
      <ns1:modificationRequest>
        <merchantAccount xmlns="http://payment.services.adyen.com">TestMerchant</merchantAccount>
        <modificationAmount xmlns="http://payment.services.adyen.com">
          <currency xmlns="http://common.services.adyen.com">EUR</currency>
          <value xmlns="http://common.services.adyen.com">500</value>
        </modificationAmount>
        <originalReference xmlns="http://payment.services.adyen.com">8313547924770610</originalReference>
        <reference xmlns="http://payment.services.adyen.com">YourModificationReference</reference>
      </ns1:modificationRequest>
    </ns1:capture>
  </soap:Body>
</soap:Envelope>

Response:

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:captureResponse xmlns:ns1="http://payment.services.adyen.com"> 
      <ns1:captureResult> 
        <pspReference xmlns="http://payment.services.adyen.com">8413547924770610</pspReference>
        <response xmlns="http://payment.services.adyen.com">[capture-received]</authCode>
      </ns1:captureResult> 
    </ns1:captureResponse> 
  </soap:Body> 
</soap:Envelope>

Request:

merchantAccount=TestMerchant&originalReference=8313547924770610&reference=YourModificationReference&modificationAmount.currency=EUR&modificationAmount.value=500 

Response:

pspReference=8413547924770610&response=%5Bcapture-received%5D

For more information on fields used in these requests and responses, refer to ModificationRequest and ModificationResult.

Cancel

You can cancel payments after authorisation only for payment methods that support distinct authorisations and captures. We send the result of a cancellation with a notification message whose eventCode value is CANCELLATION.

The pspReference of this notification is the same as the pspReference in the cancel modification response.

The success field in the response indicates if the cancellation was successful or not:

  • true: the cancellation was successful;
  • false: the cancellation failed. In this case, the notification message includes a reason field with a short description of the problem.

See CancelModificationRequest for more information on fields.

Code examples

The following code examples show payment cancellation modification requests and responses in JSON, FORM, and SOAP.

Request:

{
    "merchantAccount" : "TestMerchant",
    "originalReference" : "8313547924770610",
    "reference" : "YourModificationReference"
}

Response:

{
    "pspReference" : "8412534564722331",
    "response" : "[cancel-received]"
}

Request:

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"     xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:cancel xmlns:ns1="http://payment.services.adyen.com">
      <ns1:modificationRequest>
        <merchantAccount xmlns="http://payment.services.adyen.com">TestMerchant</merchantAccount>
        <originalReference xmlns="http://payment.services.adyen.com">8313547924770610</originalReference>
        <reference xmlns="http://payment.services.adyen.com">YourModificationReference</reference>
      </ns1:modificationRequest>
    </ns1:cancel>
  </soap:Body>
</soap:Envelope>

Response:

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:cancelResponse xmlns:ns1="http://payment.services.adyen.com"> 
      <ns1:cancelResult> 
        <pspReference xmlns="http://payment.services.adyen.com">8412534564722331</pspReference>
        <response xmlns="http://payment.services.adyen.com">[cancel-received]</authCode>
      </ns1:cancelResult> 
    </ns1:cancelResponse> 
  </soap:Body> 
</soap:Envelope>

Request:

merchantAccount=TestMerchant&reference=YourModificationReference&originalReference=8313547924770610

Response:

pspReference=8412534564722331&response=%5Bcancel-received%5D

For more information on fields used in these requests and responses, refer to ModificationRequest and ModificationResult.

Refund

You may need to issue a refund when you cancel a payment and return the partially or fully charged amount to the shopper.

When sending the refund request through API, you receive the [refund-received] response. We send out the notification with the result of the refund as soon as it processes.

We send the final result of a refund with a notification message whose eventCode value is REFUND. The pspReference of this notification is the same as the pspReference in the refund modification response.

The success field in the response indicates if the refund was successful or not:

  • true: the refund was successful;
  • false: the refund failed. In this case, the notification message includes a reason field with a short description of the problem.

See RefundModificationRequest for more information on fields.

Offline refund

Some payment methods handle the refund process offline. Sometimes, we may receive a failure. In such a scenario, we send a notification message whose eventCode value is REFUND_FAILED. The pspReference of this notification is the same as the pspReference in the refund modification response. The success field in the response is set to true.

Code examples

The following code examples show payment refund modification requests and responses in JSON, FORM, and SOAP.

Request:

{
    "merchantAccount" : "TestMerchant",
    
    "modificationAmount" : {
        "value" : 500,
        "currency" : "EUR"
    },
    
    "originalReference" : "9313547924770610",
    "reference" : "YourModificationReference"
}

Response:

{
    "pspReference" : "8312534564722331",
    "response" : "[refund-received]"
}

Request:

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"     xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:refund xmlns:ns1="http://payment.services.adyen.com">
      <ns1:modificationRequest>
        <merchantAccount xmlns="http://payment.services.adyen.com">TestMerchant</merchantAccount>
        <modificationAmount xmlns="http://payment.services.adyen.com">
          <currency xmlns="http://common.services.adyen.com">EUR</currency>
          <value xmlns="http://common.services.adyen.com">500</value>
        </modificationAmount>
        <originalReference xmlns="http://payment.services.adyen.com">9313547924770610</originalReference>
        <reference xmlns="http://payment.services.adyen.com">YourModificationReference</reference>
      </ns1:modificationRequest>
    </ns1:refund>
  </soap:Body>
</soap:Envelope>

Response:

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:refundResponse xmlns:ns1="http://payment.services.adyen.com"> 
      <ns1:refundResult> 
        <pspReference xmlns="http://payment.services.adyen.com">8312534564722331</pspReference>
        <response xmlns="http://payment.services.adyen.com">[refund-received]</authCode>
      </ns1:refundResult> 
    </ns1:refundResponse> 
  </soap:Body> 
</soap:Envelope>

Request:

merchantAccount=TestMerchant&originalReference=9313547924770610&reference=YourModificationReference&modificationAmount.currency=EUR&modificationAmount.value=500

Response:

pspReference=8312534564722331&response=%5Brefund-received%5D

For more information on fields used in these requests and responses, refer to ModificationRequest and ModificationResult.

Cancel or Refund

If you are not sure if a payment is captured, and you want to reverse the payment authorisation, you can issue a cancel or refund.

See CancelOrRefundModificationRequest for more information on fields.

Cancel or refund scenarios

The final result of a refund is sent with a notification message whose eventCode value is REFUND.

The pspReference of this notification is the same as the pspReference in the refund modification response.

The success field in the response indicates if the refund was successful or not:

  • true: the refund was successful.
  • false: the refund failed. In this case, the notification message includes a reason field with a short description of the problem.

Payment authorised but not captured

If the payment is authorised, but not yet captured, it is cancelled.

 If the selected payment method for the transaction does not support cancellation, the transaction amount is fully refunded.

Cancellation

If the cancel or refund modification request produces a cancellation, the final result is sent with a notification message whose eventCode value is CANCEL_OR_REFUND.

The pspReference of this notification is the same as the pspReference in the cancel or refund modification response.

The success field in the response indicates if the cancellation was successful or not:

  • true: the cancellation was successful.
  • false: the cancellation failed. In this case, the notification message includes a reason field with a short description of the problem.

Refund

If the cancel or refund modification request produces a refund, the final result is sent with a notification message whose eventCode value is CANCEL_OR_REFUND.

The pspReference of this notification is the same as the pspReference in the cancel or refund modification response.

The success field in the response indicates if the refund was successful or not:

  • true: the refund was successful
  • false: the refund failed. In this case, the notification message includes a reason field with a short description of the problem.

Failure

If the cancel or refund modification request fails, the final result is sent with a notification message whose eventCode value is SUCCESS=FALSE.

The pspReference of this notification is the same as the pspReference in the cancel or refund modification response.

The success field in the response is set to false: the refund failed.

The notification message includes a reason field with a short description of the problem.

Code examples

The following code examples show payment cancel or refund modification requests and responses in JSON, FORM, and SOAP.

Request:

{
    "merchantAccount" : "TestMerchant",
    "originalReference" : "9313547924770610",
    "reference" : "YourModificationReference"
}

Response:

{
    "pspReference" : "8863534564726784",
    "response" : "[cancelOrRefund-received]"
}

Request:

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"     xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:cancelOrRefund xmlns:ns1="http://payment.services.adyen.com">
      <ns1:modificationRequest>
        <merchantAccount xmlns="http://payment.services.adyen.com">TestMerchant</merchantAccount>
        <originalReference xmlns="http://payment.services.adyen.com">9313547924770610</originalReference>
        <reference xmlns="http://payment.services.adyen.com">YourModificationReference</reference>
      </ns1:modificationRequest>
    </ns1:cancelOrRefund>
  </soap:Body>
</soap:Envelope>

Response:

<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:cancelOrRefundResponse xmlns:ns1="http://payment.services.adyen.com"> 
      <ns1:cancelOrRefundResult> 
        <pspReference xmlns="http://payment.services.adyen.com">8863534564726784</pspReference>
        <response xmlns="http://payment.services.adyen.com">[cancelOrRefund-received]</authCode>
      </ns1:cancelOrRefundResult> 
    </ns1:cancelOrRefundResponse> 
  </soap:Body> 
</soap:Envelope>

Request:

merchantAccount=TestMerchant&reference=YourModificationReference&originalReference=9313547924770610

Response:

pspReference=8863534564726784&response=%5BcancelOrRefund-received%5D

For more information on fields used in these requests and responses, refer to ModificationRequest and ModificationResult.

Cancel a POS refund request

Applicable to POS only: POS refunds can be queued for a cooling-off period. This is done through your configuration on the Adyen backend. Once configured, you can make a server-to-server call to our voidPendingRefund endpoint (https://pal-test.adyen.com/pal/servlet/Payment/v30/voidPendingRefund) with all the parameters listed below. The voidPendingRefund service attempts to cancel a POS refund request. The system holds a POS refund request until the configured refund delay has expired. The service will succeed if the configured refund delay has not expired when the system receives the request, and will fail otherwise. The final outcome will be reported through notifications. See the notification manual for more information.

Contact our Support Team to set up delaying POS refund requests.

Parameters

The default approach includes the tenderReference, as this is generated in both offline and online transactions, as well as the uniqueTerminalId.

Alternatively, you can implement based on the originalReference when the pspReference has been generated by the Adyen payments platform.

For more information on fields used in these requests and responses, refer to ModificationRequest and ModificationResult.

Code example

Using tenderReference:

{
    "merchantAccount" : "TestMerchant",      
    "tenderReference" : "5Iw8001176969533005",
    "uniqueTerminalId" : "VX820-123456789"
} 

Using pspReference of the original refund request (originalReference):

{   
    "merchantAccount" : "TestMerchant",      
    "originalReference" : "9914748988390044"
} 

Refund with data

In addition to the standard refund functionality, it is also possible to refund a payment without providing an original PSP reference. For example, this may be required when you migrate your payment data to Adyen or integrate with an Adyen Point-of-sale solution.

In this case, you need to submit a payment request to the /refundWithData endpoint and provide data about the shopper (either card or bank account information).

This functionality is limited by default due to anti-money laundering and payment industry regulations. If you need to pay out your customers instead of sending a refund, the Adyen Payout solution must be used.

To enable /refundWithData for your account, contact Support Team.

Request

The following examples show how you can submit a /refundWithData request:

{
  "amount": {
    "value": 1500,
    "currency": "USD"
  },
  "card": {
    "number": "4111111111111111",
    "expiryMonth": "10",
    "expiryYear": "2020",
    "holderName": "Simon Hopper"
  },
  "reference": "Your Reference Here",
  "merchantAccount": "TestMerchant"
} 
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soapenv:Body>
    <refundWithData xmlns="http://payment.services.adyen.com">
      <request>
        <amount>
          <ns2:value xmlns:ns2="http://common.services.adyen.com">1500</ns2:value>
          <ns1:currency xmlns:ns1="http://common.services.adyen.com">USD</ns1:currency>
        </amount>
        <card>
          <number>411111111111111111</number>
          <expiryMonth>10</expiryMonth>
          <expiryYear>2020</expiryYear>
          <holderName>Simon Hopper</holderName>
        </card>
        <reference>Your Reference Here</reference>
        <merchantAccount>TestMerchant</merchantAccount>
      </request>
    </refundWithData>
  </soapenv:Body>
</soapenv:Envelope>

For more information on the request structure, refer to PaymentRequest.

Response

The following examples show an example response to your request:

{
  "pspReference": "1835015179612534",
  "resultCode": "Received"
} 
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:refundWithDataResponse xmlns:ns1="http://payment.services.adyen.com">
      <ns1:result>
        <pspReference xmlns="http://payment.services.adyen.com">1835015179612534</pspReference>
        <resultCode xmlns="http://payment.services.adyen.com">Received</resultCode>
      </ns1:result>
    </ns1:refundWithDataResponse>
  </soap:Body>
</soap:Envelope> 

For more information on the response structure, refer to PaymentResult.

Adjust Authorisation

The Adjust Authorisation modification allows you to increase or decrease the authorised amount after the initial authorisation has taken place. This functionality enables tipping, improving the chances your authorisation will be valid, charging the shopper when they have already left the merchant premises, etc.

In order to change the authorised payment (that has not been captured yet), send a modification request to the /adjustAuthorisation endpoint. The synchronous response to this request contains a confirmation that a modification was received, and the asynchronous notification contains the result of a modification.

The advantages of using an adjusted authorisation instead of a new authorisation:

  • The shopper will see one single charge on their bank statement (depending on the issuer implementation).
  • Funds and liability shift are maintained while the /adjustAuthorisation is valid.

If you need to modify the payment amount more than once before capturing it, you can make the /adjustAuthorisation request multiple times for the same payment. In addition, you can use the /adjustAuthorisation call with the same amount as in the original /authorisation request in order to extend the chargeback protection period (i.e. the time within which the authorisation will expire).

The /adjustAuthorisation API is idempotent. If your system does not receive our confirmation, you can retry the call and it will not affect any other transactions.


The following example illustrates how to first authorise a payment for 15.00 EUR and then change the authorised amount to 17.00 EUR.

Step 1 – Authorise a payment

Make an authorisation request for 15.00 EUR. To be able to modify the authorised amount in the future, set the additionalData.authorisationType parameter to PreAuth. For more information, refer to Card authorisation types.

Request

Submit this request to the https://pal-test.adyen.com/pal/servlet/Payment/v30/authorise endpoint.

{
   "reference":"YourPaymentReference",
   "merchantAccount":"TestMerchant",
   "card":{
      "number":"4111111111111111",
      "cvc":"737",
      "expiryMonth":"8",
      "expiryYear":"2018",
      "holderName":"John Smith"
   },
   "amount":{
      "currency":"EUR",
      "value":1500
   },
   "additionalData":{
      "authorisationType":"PreAuth"
   }
}

Response

{
  "pspReference": "8814689190961342",
  "resultCode": "Authorised",
  "authCode": "83152"
}

Request

Submit this request to the https://pal-test.adyen.com/pal/servlet/Payment/v30/ endpoint.

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:authorise xmlns:ns1="http://payment.services.adyen.com">
      <ns1:paymentRequest>
        <reference xmlns="http://payment.services.adyen.com">YourPaymentReference</reference>
        <merchantAccount xmlns="http://payment.services.adyen.com">TestMerchant</merchantAccount>
        <card xmlns="http://payment.services.adyen.com">
          <number>4111111111111111</number>
          <cvc>737</cvc>
          <expiryMonth>8</expiryMonth>
          <expiryYear>2018</expiryYear>
          <holderName>John Smith</holderName>
        </card>
        <amount xmlns="http://payment.services.adyen.com">
          <value xmlns="http://common.services.adyen.com">1500</value>
          <currency xmlns="http://common.services.adyen.com">EUR</currency>
        </amount>
        <additionalData xmlns="http://payment.services.adyen.com">
          <entry>
            <key xsi:type="xsd:string">authorisationType</key>
            <value xsi:type="xsd:string">PreAuth</value>
          </entry>
        </additionalData>
      </ns1:paymentRequest>
    </ns1:authorise>
  </soap:Body>
</soap:Envelope>

Response

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns0="http://payment.services.adyen.com">
  <soap:Body>
    <ns0:authoriseResponse>
      <ns0:paymentResult>
        <ns0:pspReference>8814689190961342</ns0:pspReference>
        <ns0:resultCode>Authorised</ns0:resultCode>
        <ns0:authCode>83152</ns0:authCode>
      </ns0:paymentResult>
    </ns0:authoriseResponse>
  </soap:Body>
</soap:Envelope>

Step 2 – Modify the amount using Adjust Authorisation

The code below illustrates the Adjust Authorisation modification. Several conditions apply when using adjusted authorisations:

  • The initial authorisation (preceding the adjust authorisation) has to be flagged as PreAuth using the additionalData.authorisationType parameter.
  • The initial authorisation has not been captured, or cancelled, or expired.

For information on request and response parameters, refer to AdjustAuthorisationModificationRequest and ModificationResult.

Request

Submit this request to the https://pal-test.adyen.com/pal/servlet/Payment/v30/adjustAuthorisation endpoint.

{
    "merchantAccount" : "TestMerchant",

    "modificationAmount" : {
        "currency" : "EUR",
        "value" : 1700
    },
    
    "originalReference" : "8814689190961342",
    "reference" : "YourModificationReference",
    "additionalData" : {
        "industryUsage" : "DelayedCharge"
    }
}

Response

{
    "pspReference" : "8413547924770610",
    "response" : "[adjustAuthorisation-received]"
}

Request

Submit this request to the https://pal-test.adyen.com/pal/servlet/Payment/v30/ endpoint.

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <adjustAuthorisation xmlns="http://payment.services.adyen.com">
            <modificationRequest>
                <merchantAccount>TestMerchant</merchantAccount>
                <modificationAmount>
                    <currency xmlns="http://common.services.adyen.com">EUR</currency>
                    <value xmlns="http://common.services.adyen.com">1700</value>
                </modificationAmount>
                <originalReference>8814689190961342</originalReference>
                <reference>YourModificationReference</reference>
                <additionalData>
                    <entry>
                        <key xsi:type="xsd:string">industryUsage</key>
                        <value xsi:type="xsd:string">DelayedCharge</value>
                    </entry>
                </additionalData>
            </modificationRequest>
        </adjustAuthorisation>
    </soap:Body>
</soap:Envelope> 

Response

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns0="http://payment.services.adyen.com">
  <soap:Body>
    <ns0:adjustAuthorisationResponse>
      <ns0:adjustAuthorisationResult>
        <ns0:pspReference>8413547924780610</ns0:pspReference>
        <ns0:response>[adjustAuthorisation-received]</ns0:response>
      </ns0:adjustAuthorisationResult>
    </ns0:adjustAuthorisationResponse>
  </soap:Body>
</soap:Envelope>

Step 3 – Get a notification

After an authorised amount has been adjusted, you will receive an asynchronous callback from Adyen with the modification result. For more information on configuring these callbacks, refer to Payment notifications.

{
    "live": "false",
    "currency": "EUR",
    "value": "200",
    "eventCode": "AUTHORISATION_ADJUSTMENT",
    "eventDate": "2017-10-23T13:37:31.00Z",
    "merchantAccountCode": "TestMerchant",
    "merchantReference": "YourModificationReference",
    "operations": "",
    "originalReference": "8814689190961342",
    "paymentMethod": "visa",
    "pspReference": "8515087658508006",
    "reason": "",
    "success": "true"
}
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <ns1:sendNotification xmlns:ns1="http://notification.services.adyen.com">
      <ns1:notification>
        <live xmlns="http://notification.services.adyen.com">false</live>
        <notificationItems xmlns="http://notification.services.adyen.com">
          <NotificationRequestItem>
            <additionalData xsi:nil="true"/>
            <amount>
              <currency xmlns="http://common.services.adyen.com">EUR</currency>
              <value xmlns="http://common.services.adyen.com">1700</value>
            </amount>
            <eventCode>AUTHORISATION_ADJUSTMENT</eventCode>
            <eventDate>2017-10-09T11:10:03+02:00</eventDate>
            <merchantAccountCode>TestMerchant</merchantAccountCode>
            <merchantReference>YourModificationReference</merchantReference>
            <operations xsi:nil="true"/>
            <originalReference>8814689190961342</originalReference>
            <paymentMethod>visa</paymentMethod>
            <pspReference>8413547924780610</pspReference>
            <reason xsi:nil="true"/>
            <success>true</success>
          </NotificationRequestItem>
        </notificationItems>
      </ns1:notification>
    </ns1:sendNotification>
  </soap:Body>
</soap:Envelope>

Step 4 – Capture the modified amount

To complete the authorised payment and capture the adjusted amount, you need to use the /capture modification.

For more information, refer to Capture.

Questions

Can't find something you are looking for? Look at our FAQ for answers or contact Support.