Search

Are you looking for test card numbers?

Would you like to contact support?

Point-of-sale icon

Mail and Telephone Order (MOTO)

Outlines passing the MOTO tender option with a PaymentRequest to trigger a Mail and Telephone Order.

Tender options can be used to modify your payment request. Tender options are passed to the Terminal API using the SaleToAcquirerData or TransactionConditions field.

Endpoint

The URL used to send Terminal API messages depends on your type of implementation. For more information on the architectures available, see the Terminal API Overview.

 Request

Tender options are passed with a regular PaymentRequest in the same way as making a basic payment. A PaymentRequest can include additional form-encoded key-value pairs in the SaleToAcquirerData field. This can include data to create recurring contracts.

Pass the MOTO tender option in SaleToAcquirerData

MOTO transactions are card-not-present transactions, where the payment details are presented to a merchant by a shopper by means of mail (not email), fax, or telephone. The card number and CVC code are entered on the terminal. The maximum amount that the terminal will allow for a MOTO transaction is configurable in the Customer Area: go to Point of sale > Global properties or select a specific terminal, and on the Currencies & amounts tab enter the amount in the MOTO max amount field.

To start a MOTO transaction, specify the tenderOption=MOTO as a key value pair in SaleToAcquirerData when making a PaymentRequest call to the Terminal API.

{
  "SaleToPOIRequest": {
    "MessageHeader": {
      "ProtocolVersion": "3.0",
      "MessageClass": "Service",
      "MessageCategory": "Payment",
      "MessageType": "Request",
      "ServiceID": "0110123015",
      "SaleID": "POSSystemID12345",
      "POIID": "MX925-260193322"
    },
    "PaymentRequest": {
      "SaleData": {
        "SaleTransactionID": {
          "TransactionID": "5748",
          "TimeStamp": "2018-01-10T11:30:15+00:00"
        },
        "SaleToAcquirerData": "tenderOption=MOTO"
      },
      "PaymentTransaction": {
        "AmountsReq": {
          "Currency": "EUR",
          "RequestedAmount": 10.99
        }
      }
    }
  }
}
String serviceID = "YOUR_UNIQUE_ATTEMPT_ID";
String saleID = "YOUR_CASH_REGISTER_ID";
String POIID = "YOUR_TERMINAL_ID";
String transactionID = "YOUR_UNIQUE_TRANSACTION_ID";

SaleToPOIRequest saleToPOIRequest = new SaleToPOIRequest();
MessageHeader messageHeader = new MessageHeader();
messageHeader.setProtocolVersion("3.0");
messageHeader.setMessageClass( MessageClassType.SERVICE );
messageHeader.setMessageCategory( MessageCategoryType.PAYMENT );
messageHeader.setMessageType( MessageType.REQUEST );
messageHeader.setServiceID(serviceID);
messageHeader.setSaleID(saleID);
messageHeader.setPOIID(POIID);
saleToPOIRequest.setMessageHeader(messageHeader);

PaymentRequest paymentRequest = new PaymentRequest();
SaleData saleData = new SaleData();
TransactionIdentification saleTransactionID = new TransactionIdentification();
saleTransactionID.setTransactionID(transactionID);
saleTransactionID.setTimeStamp(DatatypeFactory.newInstance().newXMLGregorianCalendar(new GregorianCalendar()));
saleData.setSaleTransactionID(saleTransactionID);
saleData.setSaleToAcquirerData("tenderOption=MOTO");
paymentRequest.setSaleData(saleData);

PaymentTransaction paymentTransaction = new PaymentTransaction();
AmountsReq amountsReq = new AmountsReq();
amountsReq.setCurrency("EUR");
amountsReq.setRequestedAmount( BigDecimal.valueOf(10.99) );
paymentTransaction.setAmountsReq(amountsReq);
paymentRequest.setPaymentTransaction(paymentTransaction);
saleToPOIRequest.setPaymentRequest(paymentRequest);
terminalAPIRequest.setSaleToPOIRequest(saleToPOIRequest);

Response

For a list of Payment Response fields, see PaymentResponse fields.

An authorisation is attempted and you receive a response with the following fields:

{
   "SaleToPOIResponse":{
      "PaymentResponse":{
         "POIData":{
            "POITransactionID":{
               "TimeStamp":"2019-05-09T12:42:43.000Z",
               "TransactionID":"4rVu001557405763003.8815574057779467"
            },
            "POIReconciliationID":"1000"
         },
         "SaleData":{
            "SaleTransactionID":{
               "TimeStamp":"2019-05-09T11:30:15.000Z",
               "TransactionID":"5748"
            }
         },
         "PaymentReceipt":[
            {
               "RequiredSignatureFlag":false,
               "DocumentQualifier":"CashierReceipt",
               "OutputContent":{
                  "OutputFormat":"Text",
                  "OutputText":[
                     {
                        "CharacterStyle":"Bold",
                        "Text":"key=header1",
                        "EndOfLineFlag":true
                     },
                     {
                        "CharacterStyle":"Bold",
                        "Text":"key=header2",
                        "EndOfLineFlag":true
                     },
                     {
                        "CharacterStyle":"Bold",
                        "Text":"name=MERCHANT%20COPY&key=merchantTitle",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Date&value=09%2f05%2f19&key=txdate",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Time&value=14%3a42%3a43&key=txtime",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Card&value=%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a1111&key=pan",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Card%20type&value=mc&key=cardType",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Payment%20method&value=mc&key=paymentMethod",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Payment%20variant&value=mc&key=paymentMethodVariant",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Entry%20mode&value=MKE&key=posEntryMode",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=MID&value=1000&key=mid",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=TID&value=P400Plus-275040702&key=tid",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=PTID&value=75040702&key=ptid",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Auth.%20code&value=40600&key=authCode",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Tender&value=4rVu001557405763003&key=txRef",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Reference&value=5748&key=mref",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Type&value=GOODS_SERVICES&key=txtype",
                        "EndOfLineFlag":true
                     },
                     {
                        "CharacterStyle":"Bold",
                        "Text":"name=TOTAL&value=%e2%82%ac%c2%a010.99&key=totalAmount",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "CharacterStyle":"Bold",
                        "Text":"name=APPROVED&key=approved",
                        "EndOfLineFlag":true
                     }
                  ]
               }
            },
            {
               "RequiredSignatureFlag":false,
               "DocumentQualifier":"CustomerReceipt",
               "OutputContent":{
                  "OutputFormat":"Text",
                  "OutputText":[
                     {
                        "CharacterStyle":"Bold",
                        "Text":"key=header1",
                        "EndOfLineFlag":true
                     },
                     {
                        "CharacterStyle":"Bold",
                        "Text":"key=header2",
                        "EndOfLineFlag":true
                     },
                     {
                        "CharacterStyle":"Bold",
                        "Text":"name=CARDHOLDER%20COPY&key=cardholderHeader",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Date&value=09%2f05%2f19&key=txdate",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Time&value=14%3a42%3a43&key=txtime",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Card&value=%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a%2a1111&key=pan",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Card%20type&value=mc&key=cardType",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Payment%20method&value=mc&key=paymentMethod",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Payment%20variant&value=mc&key=paymentMethodVariant",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Entry%20mode&value=MKE&key=posEntryMode",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=MID&value=1000&key=mid",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=TID&value=P400Plus-275040702&key=tid",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=PTID&value=75040702&key=ptid",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Auth.%20code&value=40600&key=authCode",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Tender&value=4rVu001557405763003&key=txRef",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Reference&value=5748&key=mref",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Type&value=GOODS_SERVICES&key=txtype",
                        "EndOfLineFlag":true
                     },
                     {
                        "CharacterStyle":"Bold",
                        "Text":"name=TOTAL&value=%e2%82%ac%c2%a010.99&key=totalAmount",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "CharacterStyle":"Bold",
                        "Text":"name=APPROVED&key=approved",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"key=filler",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Please%20retain%20for%20your%20records&key=retain",
                        "EndOfLineFlag":true
                     },
                     {
                        "Text":"name=Thank%20you&key=thanks",
                        "EndOfLineFlag":true
                     }
                  ]
               }
            }
         ],
         "PaymentResult":{
            "OnlineFlag":true,
            "PaymentAcquirerData":{
               "AcquirerPOIID":"P400Plus-275040702",
               "ApprovalCode":"40600",
               "AcquirerTransactionID":{
                  "TimeStamp":"2019-05-09T12:42:43.000Z",
                  "TransactionID":"8815574057779467"
               },
               "MerchantID":"SamPOS"
            },
            "PaymentInstrumentData":{
               "CardData":{
                  "EntryMode":[
                     "Keyed"
                  ],
                  "PaymentBrand":"mc",
                  "MaskedPan":"555544 **** 1111",
                  "SensitiveCardData":{
                     "ExpiryDate":"1020"
                  }
               },
               "PaymentInstrumentType":"Card"
            },
            "AmountsResp":{
               "AuthorizedAmount":10.99,
               "Currency":"EUR"
            }
         },
         "Response":{
            "Result":"Success",
            "AdditionalResponse":"tid=75040702&transactionType=GOODS_SERVICES&backendGiftcardIndicator=false&expiryYear=2020&acquirerAccountCode=TestPmmAcquirerAccount&alias=F108461732583205&posOriginalAmountCurrency=EUR&giftcardIndicator=false&authorisedAmountValue=1099&retry.attempt1.shopperInteraction=Moto&pspReference=8815574057771234&paymentMethodVariant=mc&refusalReasonRaw=AUTHORISED&authorisationMid=1000&acquirerCode=TestPmmAcquirer&store=StoreOne&txtime=14%3a42%3a43&iso8601TxDate=2019-05-09T12%3a42%3a43.0000000%2b0000&cardType=mc&posOriginalAmountValue=1099&offline=false&aliasType=Default&txdate=09-05-2019&paymentMethod=mc&cvcResult=3%20Not%20checked&avsResult=4%20AVS%20not%20supported%20for%20this%20card%20type&mid=1000&merchantReference=5748&transactionReferenceNumber=8815574057779467&expiryMonth=10&cardSummary=1111&posTotalAmountValue=1099&posAuthAmountCurrency=EUR&cvcResultRaw=P&authCode=40600&avsResultRaw=4&posEntryMode=MKE&acquirerReference=7CAV1QT2DFP&cardScheme=mc&cardBin=555544&posAuthAmountValue=1099"
         }
      },
      "MessageHeader":{
         "SaleID":"SamPOS",
         "MessageClass":"Service",
         "MessageCategory":"Payment",
         "ServiceID":"MKEtest",
         "POIID":"P400Plus-275040702",
         "MessageType":"Response"
      }
   }
}