Platform UI Status
The status message requests the final details of a transaction from the Payen Platform when the response key is available from the Payen Platform process response. The request is sent server to server after the response has been received from the IP.Frame processing.
Status Request Message
Details of the status request can be found in the Status Request
An example of such a message is shown below:
- JSON
- XML
{
"requestType": "statusRequest",
"version": 2,
"merchantId": "10000001",
"responseKey": "e174dfd944bb481d8be242e79c941264"
}
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<statusRequest>
<version>2</version>
<merchantId>10000001</merchantId>
<responseKey>e174dfd944bb481d8be242e79c941264</responseKey>
</statusRequest>
Status Response Message
The status response message describes the final details of a transaction from the Payen Platform, and is sent in response to an Payen Platform Status Request Message. The same format is also used for the Asynchronous Notification Message which is sent server to server to the notification URL (if provided) in the original Payen Platform Request Message, after the response has been received from the Payen Platform processing. An example of such a message is shown below:
An example of such a message is shown below:
- JSON
- XML
{
"version": 2,
"type": "PAY_PAGE_STATUS",
"customerId": 12345,
"merchant": {
"merchantId": 10000001,
"accountId": 20000001
},
"transaction": {
"amount": "1000.00",
"currency": "GBP",
"merchantRef": "Fh8F9fEpeK8qUFMHt0Vl",
"gatewayRef": "56dsfds873wHJK32yuiv",
"transactionType": "ECOMMERCE"
},
"status": {
"code": "SUCCESS",
"message": "Request Successful",
"timestamp": "2025-06-21T16:56:39.154+01:00"
},
"paymentHistory": {
"paymentAttempt": {
"order": 1,
"timestamp": "2025-06-21T16:56:39.154+01:00",
"code": "SUCCESS",
"thirdPartyRef": 123,
"amount": 136400,
"currency": "USD",
"paymentMethodType": "CARD",
"token": "21fds873wHJK32ewr43",
"cardResponse": {
"acquirerRef": "Barclays",
"bankMid": 5435534,
"authCode": null,
"validDate": 102013,
"expiryDate": 52019,
"cardHolderName": "Mr T Customer",
"cardBin": 411111,
"cardLastFour": 1234,
"cardIssuingBank": "BARCLAYS BANK PLC",
"cardIssuingCountry": "GBP",
"cardType": "VISA_CREDIT",
"cvv": "NOT_CHECKED",
"avsAddress": "NOT_CHECKED",
"avsPostcode": "NOT_CHECKED",
"threeDSecureStatus": "NOT_ENROLLED"
}
}
},
"requestKey": "3b5bee9ffa8a446e8f30161516af1527"
}
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<paymentResponse>
<version>2</version>
<type>PAY_PAGE_STATUS</type>
<customerId>12345</customerId>
<merchant>
<merchantId>10000001</merchantId>
<accountId>20000001</accountId>
</merchant>
<transaction>
<amount>1000.00</amount>
<currency>GBP</currency>
<merchantRef>Fh8F9fEpeK8qUFMHt0Vl</merchantRef>
<gatewayRef>56dsfds873wHJK32yuiv</gatewayRef>
<transactionType>ECOMMERCE</transactionType>
</transaction>
<status>
<code>SUCCESS</code>
<message>Request Successful</message>
<timestamp>2025-06-21T16:56:39.154+01:00</timestamp>
</status>
<paymentHistory>
<paymentAttempt>
<order>1</order>
<timestamp>2025-06-21T16:56:39.154+01:00</timestamp>
<code>SUCCESS</code>
<thirdPartyRef>123</thirdPartyRef>
<amount>136400</amount>
<currency>USD</currency>
<paymentMethodType>CARD</paymentMethodType>
<token>21fds873wHJK32ewr43</token>
<cardResponse>
<acquirerRef>Barclays</acquirerRef>
<bankMid>5435534</bankMid>
<authCode/>
<validDate>102013</validDate>
<expiryDate>052019</expiryDate>
<cardHolderName>Mr T Customer</cardHolderName>
<cardBin>411111</cardBin>
<cardLastFour>1234</cardLastFour>
<cardIssuingBank>BARCLAYS BANK PLC</cardIssuingBank>
<cardIssuingCountry>GBP</cardIssuingCountry>
<cardType>VISA_CREDIT</cardType>
<cvv>NOT_CHECKED</cvv>
<avsAddress>NOT_CHECKED</avsAddress>
<avsPostcode>NOT_CHECKED</avsPostcode>
<threeDSecureStatus>NOT_ENROLLED</threeDSecureStatus>
</cardResponse>
</paymentAttempt>
</paymentHistory>
<requestKey>3b5bee9ffa8a446e8f30161516af1527</requestKey>
</paymentResponse>
Platform Asynchronous Notification Message
If a notification URL was provided in the Payen Platform request message, then an asynchronous notification will be sent to the notification URL. This is a message containing all the details of the transaction. This method of notification is designed to make sure that the response is always received by the merchant, even if there are browser/connection problems during the previous step.
Notification Status Response Message
The status response message describes the final details of a transaction from the Payen Platform, and is sent to the notification URL (if provided) in the original Payen Platform Request Message, after the response has been received from the processing. The same format is also used in response to an Payen Platform Status Request Message. See above.
Field Specific Details
The following provide more details to some of the fields described in the previous section.
code
The code element in the response contains a distinct set of values and can be located within the status element. The possible values are described below:
| Value | Description |
|---|---|
| SUCCESS | The request was processed successfully. In the case of a status request or notification response, this response code indicates that the transaction was successful. If the code is anything other than SUCCESS then the request was not successful. |
| REJECTED | The request was rejected. If this code is received then there will be a reasons element with one or more reason child elements. These child elements will contain individual reasons as to why the request was rejected. The individual reasons come in the form of codes that represent rejection reasons that can be found in the response codes manual. |
| ERROR | An error has occurred during the processing of the transaction and should be treated as a priority as this response will be rare. If this does occur please contact support. |
| DECLINED | This response code indicates that the transaction was declined. An example of a decline might be if there are limits set around the number of retries a customer has to add a card successfully. |
| CANCELLED | This response code indicates that the customer has chosen to cancel the transaction. |
locale
The locale field is used to display the correct language to the user in the Payen Platform. The locale field format is as follows:
<language>_<country>
e.g. en_US gives us a language of English and a country of United States.
The language argument is a valid ISO Language Code. These codes are the lower-case, two-letter codes as defined by ISO-639. You can find a full list of these codes at a number of sites, such as: ISO 639
The country argument is a valid ISO Country Code. These codes are the upper-case, two-letter codes as defined by ISO-3166. You can find a full list of these codes at a number of sites, such as: ISO-3166
For more information please the following reference: locales
threeDSecureStatus
The response to the status message contains a threeDSecureStatus code that represents the overall status of 3D Secure for the transaction. This field is included for information only. The following is a list of the possible responses for this field and an explanation of these values:
| Value | Description |
|---|---|
| PENDING | Authentication is available and so the transaction is pending payer auth. Transactions in this status indicate that the user has not yet entered their 3D Secure details or completed the 3D Secure process. |
| AUTHENTICATION_SUCCESSFUL | Successful authentication, PIN/Password has been entered correctly. |
| AUTHENTICATION_FAILED | Failed authentication, PIN/Password submitted was incorrect. |
| NOT_ENROLLED | Card not participating / card holder not enrolled in the scheme / Issuer is not registered for VbV or SecureCode / customer not signed up, but Issuer allows customer to continue without signing up. |
| AUTHENTICATION_UNAVAILABLE | Directory Server or ACS may return ‘unavailable’ status / data communication problems / unknown scheme. |
| AUTHENTICATION_ATTEMPTED | ACS implementations may produce signed ‘attempt’ messages even in cases where the issuer or cardholder is not participating. Both Issuer and customer are registered for VbV or SecureCode, but customer did not complete authentication process or customer cancelled during enrolment process. |
| ACS_ERROR | Invalid input field in 3D Secure message generation / Merchant authentication in Directory Server failed / Error message received from Directory Server or ACS. |
| INTERNAL_ERROR | Generated by internal errors occurring during the process. |