Card transaction

Process a MOTO card transaction.

Initiate a card transaction

POST
/v1/transactions

Request example

Use the following example to request a MOTO card authorisation. For a full list of possible parameters, see the API reference.

{
  "merchant": "MERCHANT-1",
  "site": "SITE-1",
  "merchantTransactionId": "MOTO_001",
  "merchantTransactionDate": "2025-01-27 08:51:02.826445+00:00",
  "transactionMethod": {
    "entryType": "Moto",
    "fundingType": "Card",
    "intent": "Authorisation"
  },
  "amounts": {
    "transaction": 50,
    "currencyCode": "GBP"
  },
  "fundingData": {
    "card": {
      "primaryAccountNumber": "4111111111111111",
      "expiryMonth": "03",
      "expiryYear": "2027",
      "cardVerificationCode": "788",
      "holderName": "John Smith"
    }
  }
}
ParameterDescription
merchant
string (≤ 20 characters)
required
Your unique merchant identifier, as assigned by PXP.
site
string (≤ 20 characters)
required
Your unique site identifier, as assigned by PXP.
merchantTransactionId
string (≤ 50 characters)
required
A unique identifier for this transaction.
merchantTransactionDate
date-time
required
The date and time when the transaction happened, in ISO 8601 format.
transactionMethod
object
required
Details about the transaction method.
transactionMethod.entryType
string
required
The entry type. For MOTO transactions, this is always Moto.
transactionMethod.fundingType
string
required
The funding type. For card transactions, this is always Card.
transactionMethod.intent
string
required
The payment intent. Learn more about intents.

Possible values:
Authorisation
EstimatedAuthorisation
Purchase
Payout
Refund
amounts
object
required
Details about the transaction amount.
amounts.transaction
number
The transaction amount. The numbers after the decimal will be zero padded if they are less than the expected currencyCode exponent. For example, GBP 1.1 = GBP 1.10, EUR 1 = EUR 1.00, or BHD 1.3 = 1.300. The transaction will be rejected if numbers after the decimal are greater than the expected currencyCode exponent (e.g., GBP 1.234), or if a decimal is supplied when the currencyCode of the exponent does not require it (e.g., JPY 1.0).
amounts.currencyCode
string (1-3 characters)
required
The currency code associated with the transaction, in ISO 4217 format.
fundingData
object
required
Details about the payment method used for the transaction.
fundingData.card
object
Details about the card.
fundingData.card.securityLevel.primaryAccountNumber
string (10-19 characters)
The unique number assigned to a payment card, such as a credit or debit card. This number typically contains 16 digits, structured in a specific format to indicate the card network, issuing bank, and account number.
fundingData.card.securityLevel.expiryMonth
string (2 characters)
The expiry month (MM) of the card. This is present if the card is manually entered into a device without point-to-point encryption.
fundingData.card.securityLevel.expiryYear
string (4 characters)
The expiry year (YYYY) of the card. This is present if the card is manually entered into a device without point-to-point encryption.
fundingData.card.cardVerificationCode
string (3 to 4 characters)
The Card Verification Code (CVC) associated with the payment card, used to verify that the cardholder is in possession of the card during non-face-to-face transactions. This field is required for initial transactions and optional after.
fundingData.card.holderName
string (≤ 100 characters)
The full name of the individual who owns the payment card. This name is printed on the physical card and is used for verifying the cardholder's identity during transactions.

Response example

If your request is successful, you'll receive a 200 response that includes the transaction's state. You'll also receive a Transaction (Card Authorised) webhook notification.

{
  "state": "Authorised",
  "stateData": {},
  "approvalCode": "759194",
  "merchantTransactionDate": "2025-03-30T14:21:35",
  "merchantTransactionId": "f359d9c7-7cbf-4b1b-835b-663d327f418a",
  "systemTransactionId": "f1b26962-452a-4c7a-b12b-d82dcd761dde",
  "fundingData": {
    "cardScheme": "MasterCard",
    "expiryMonth": "03", 
    "expiryYear": "2027",
    "gatewayTokenId": "5fbd77ce-02c1-40ed-94bc-1016660b7512",
    "providerResponse": {
      "provider": "pxpfinancial",
      "code": "00",
      "emvDataResponse": {},
      "paymentAccountReference": "637607302178175469",
      "electronicCommerceIndicatorAdjustment": "07",
      "merchantAdvice": {},
      "authorisedAmount": 10,
      "settlementDate": "2025-03-31T00:00:00"
    },
    "processorTransactionId": "ba2ab153-f3ea-43e4-b03f-454fe7ead3a3"
  }
}