Last Updated: 13 November 2024 | Change Log

Manage your APM

An overview on how to get the latest payment status and how to reverse (cancel or refund) and settle payments.

Get payment status

There are two ways to get the payment status. You can either query the payment or setup webhooks to receive the latest event from us.

Query payment

Make a GET request on the link:self action link returned in your payment response.

GET https://try.access.worldpay.com/apmPayments/3Ihrz_xFV1nTRAHhJABserDF09eNdqnSHh2H8qlv7QIZ4iW8JjMy1wo4b2GozzFtfnOUMIZGm4eSqTixJe1tGDzD3

Note

No request body is needed for this request.

You receive:

  • an HTTP code 200
  • the lastEvent for your query request
  • links to available next actions for your payment

Example Query Response

{
  "paymentId": "3Ihrz_xFV1nTRAHhJABserDF09eNdqnSHh2H8qlv7QIZ4iW8JjMy1wo4b2GozzFtfnOUMIZGm4eSqTixJe1tGDzD3NTuoxp7Ud1N920NPyBiaK1MePsYPNh4StVn5GLv9dz9tm3t0o9KS2dze2cQ2iJdjRiX7-j4OEhFc5W4W6hK1prAjyQIHthwfovFL63f",
  "lastEvent": "authorized",
  "_links": {
    "self": {
      "href": "https://try.access.worldpay.com/apmPayments/3Ihrz_xFV1nTRAHhJABserDF09eNdqnSHh2H8qlv7QIZ4iW8JjMy1wo4b2GozzFtfnOUMIZGm4eSqTixJe1tGDzD3NTuoxp7Ud1N920NPyBiaK1MePsYPNh4StVn5GLv9dz9tm3t0o9KS2dze2cQ2iJdjRiX7-j4OEhFc5W4W6hK1prAjyQIHthwfovFL63f"
    },
    "reverse": {
      "href": "https://try.access.worldpay.com/apmPayments/3Ihrz_xFV1nTRAHhJABserDF09eNdqnSHh2H8qlv7QIZ4iW8JjMy1wo4b2GozzFtfnOUMIZGm4eSqTixJe1tGDzD3NTuoxp7Ud1N920NPyBiaK1MePsYPNh4StVn5GLv9dz9tm3t0o9KS2dze2cQ2iJdjRiX7-j4OEhFc5W4W6hK1prAjyQIHthwfovFL63f/reversals"
    },
    "partialReverse": {
      "href": "https://try.access.worldpay.com/apmPayments/3Ihrz_xFV1nTRAHhJABserDF09eNdqnSHh2H8qlv7QIZ4iW8JjMy1wo4b2GozzFtfnOUMIZGm4eSqTixJe1tGDzD3NTuoxp7Ud1N920NPyBiaK1MePsYPNh4StVn5GLv9dz9tm3t0o9KS2dze2cQ2iJdjRiX7-j4OEhFc5W4W6hK1prAjyQIHthwfovFL63f/reversals"
    },
    "settle": {
      "href": "https://try.access.worldpay.com/apmPayments/3Ihrz_xFV1nTRAHhJABserDF09eNdqnSHh2H8qlv7QIZ4iW8JjMy1wo4b2GozzFtfnOUMIZGm4eSqTixJe1tGDzD3NTuoxp7Ud1N920NPyBiaK1MePsYPNh4StVn5GLv9dz9tm3t0o9KS2dze2cQ2iJdjRiX7-j4OEhFc5W4W6hK1prAjyQIHthwfovFL63f/settlements"
    }
  }
}

Possible lastEvent values

  • authorized
  • cancelFailed
  • cancelled
  • cancelledByCustomer
  • cancelRequested
  • chargebackReversed
  • chargedBack
  • disputeExpired
  • disputeFundsHeld
  • disputeFundsReleased
  • disputeReserveReleased
  • disputeInformationRequested
  • disputInformationSupplied
  • error
  • expired
  • manuallyAmended
  • miscellaneous
  • pending
  • refunded
  • refundExpired
  • refundFailed
  • refundReversed
  • refused
  • refusedByIssuer
  • sentForRefund
  • sentForSettlement
  • settled
  • settlementReversed
  • settlementFailed
  • signedFormReceived
  • unknown

Events

To use our webhooks take a look at our events documentation.


Settle

Make a settle request to settle an authorized payment.

Note

Not all APMs support the settle request. Please refer to the individual APM documentation to understand if this action is supported for the APM.

POST https://try.access.worldpay.com/apmPayments/3Ihrz_xFV1nTRAHhJABserDF09eNdqnSHh2H8qlv7QIZ4iW8JjMy1wo4b2GozzFtfnOUMIZGm4eSqTixJe1tGDzD3/settlements

Note

No request body is needed for this request.

Reverse

Your reverse request is processed as a cancel or refund request. This depends on the time passed after your payment request was completed.

  • an authorized payment status = cancel
  • a settled or sentForSettlement payment status = refund

Note
Not all APMs support the reverse request. Some may only support refund, requiring the payment to be in a settled state before a reverse request can be processed. Please refer to the individual APM documentation to understand if this action is supported for the APM.

POST to the links:reverse action link returned in your query response or append the payments “id” to the reverse url template.

POST https://access.worldpay.com/apmPayments/3Ihrz_xFV1nTRAHhJABserDF09eNdqnSHh2H8qlv7QIZ4iW8JjMy1wo4b2GozzFtfnOUMIZGm4eSqTixJe1tGDzD3/reversals

Full Reverse

Send a reverse request to return the full amount of the payment to your customer.

Note

No request body is needed for this request.

Partial Reverse

Send a partial reverse request to return a portion of the payment amount to your customer.

Example partial request

{
    "reference": "0-128characters",
    "value": {
        "amount": 25,
        "currency": "GBP"
    }
}