XML Transaction Report

Updated by RM

When a payment is processed within the BCH digital secure payment environment, an XML-based transaction report can be posted to your systems.

This page contains a detailed description of all the fields used. It also contains an example XML required to develop a card payment transaction report receiver on your server.

To enable this feature, the URL of the receiver will need to be configured within the service setup. Please check with support to ensure this has been enabled.

During your testing and development phase, it is possible to use a test gateway. The test gateway will allow different transaction results to be reported without the use of live payment transaction.

XML Data Definition

Section
Field
Type / Format
Description
Attributes

<Transaction>

DateTime

Date&Time

Transaction Time

[DD/MM/YYYY HH:MM:SS]

Value

Double

Transaction Amount

Currency

  • string
  • ISO 4217

<Status>

Code

Int

Transaction status code

Description

String

Description of status code

100 : Authorised

101 : Card Registered

200 : Declined

201 : Credit Card Type Declined

202 : SaleReverse CSC Error Success

203 : Declined CSC

300 : Validation Failed

301: Missing Cardholder Data

302 : Cardholder Data Invalid

303 : SaleReverse CSCError Failed

400 : Network Error

401 : Merchant Authentication Failure

402 : Merchant Error

403 : Network Error CSC Reversal

</Status>

<GatewayResponse>

AuthCode

String

Authorisation Code from the merchant

ResponseCode

String

Response code from the merchant

Message

String

Message returned from the merchant gateway

Merchant

String

Name of the Merchant used

</GatewayResponse>

<Card>

PAN

String

Sanitised card long number

Type

String

Card type

CHName

String

Card holder name

Token

String

Token associated with card

SecurityKey

String

A Security key

AuthNumber

String

Unique Authorisation Code

VPSTxId

String

Sage Pay ID

TransactionID

String

Transaction Unique ID

StartDate

String

Card start date (MM/YY)

ExpiryDate

String

Card expiry date (MM/YY)

IssueNumber

Int

Card issue number

</Card>

<Call>

Reference

Int

Call Reference number

Number

String

Number Dialled

CLI

String

Callers Number

Start

Date&Time

Start Time of the call [DD/MM/YYYYHH:MM:SS

AgentID

String

ID of the agent that handled the transaction

Info1

String

Optional collected Info1

Info2

String

Optional collected Info2

Info3

String

Optional collected Info3

Info4

String

Optional collected Info4

OrderID

String

Customer Order ID

</Call>

</Transaction>

Card Types

Below is the card types used with in the <card> node

Value
Card Type

UNKNOWN

Unknown card type

VISA

Visa card types

AMEX

American Express

DINERS

Diners Card

MAESTRO

Maestro Cards

SOLO

Solo Cards

MC

Mastercard

Example XML

<?xml version="1.0" encoding="utf-8"?>

<Transaction>

<DateTime>01/01/2023 12:00:00</DateTime>

<Value currency="GBP">100.00</Value>

<Status>

<Code>100</Code>

<Description>Authorised</Description>

</Status>

<GatewayResponse>

<AuthCode>012345</AuthCode>

<ResponseCode>1000</ResponseCode>

<Message>Approved</Message>

<Merchant>TestGateway</Merchant>

</GatewayResponse>

<Card>

<PAN>************4444</PAN>

<Type>MC</Type>

<CHName>A Cardholder</CHName>

<Token>ABCD1234</Token>

<SecurityKey />

<AuthNumber />

<VPSTxId />

<TransactionID>101010</TransactionID>

<StartDate />

<ExpiryDate>12/24</ExpiryDate>

<IssueNumber />

</Card>

<Call>

<Reference>123456789</Reference>

<Number>01615432250</Number>

<CLI>01615377707</CLI>

<Start>01/01/2023 11:30:00</Start>

<AgentID>101</AgentID>

<Info1>MyInfo1</Info1>

<Info2>MyInfo2</Info2>

<Info3>MyInfo3</Info3>

<Info4>MyInfo4</Info4>

<OrderID>MyOrderID</OrderID>

</Call>

</Transaction>


How did we do?