Signature Transactions

As part of Spice integration the POS needs to support signature transactions. These transaction involve a response that is sent back to the POS which includes the merchant receipt with cardholder signature line. The POS is then responsible for printing the receipt and the cardholder needs to sign. The merchant will then select if the signature is Accepted or Declined on Spice pop-up and the transaction is finalised.

Sequence Diagram

823823

This workflow requires a slight change in the messaging from a POS perspective. Once the POS receives the merchant receipt for printing it needs to complete a HTTP GET. This GET request will return the outcome of the transaction once the merchant has selected Accept or Decline.

UI and Signature Event

  1. Send a Purchase request to Spice (ensure the status is "PairedConnected" and flow state is "Idle" when sending a ping)
15271527
  1. Push a Signature scenario by - Inserting the card incorrectly 3 times.
  2. You will be required to swipe > Select Credit > Enter to Bypass
  3. You will be prompted to Accept or Decline the signature.
15301530

At this stage, Spice will return a 'SignatureRequired' response. The POS will be required to print or show the 'receiptToSign' to the customer to sign.

Signature Required response

receiptToSign request

{
    "signatureRequired": {
        "requestId": "prchs31",
        "posRefId": "66671486-2c9f-4766-ac00-ad4502bdfaa8",
        "receiptToSign": "\r\n     Gecko Bank\r\n 60 Margaret Street\r\n60 Margaret Street \r\n  Sydney NSW 2000\r\n\r\nTID         30000101\r\nMID          3000001\r\nRRN     001662461450\r\n  06/09/2022 10:50\r\n\r\nSTAN          000049\r\nAUTH          328487\r\nCARD************1025\r\nMastercard     CR(S)\r\nAID   A0000000041010\r\nTVR           000000\r\n\r\nPURCHASE      $10.00\r\nSURCHARGE      $1.00\r\nTOTAL         $11.00\r\n\r\n    APPROVE WITH\r\n     SIGNATURE\r\n       (000)\r\n\r\n\r\n\r\nSIGN:_______________\r\n\r\n  *MERCHANT COPY*\r\n\r\n"
    }
}
  1. Accept or Decline the transaction depending on the scenario and test cases. When actioned, Spice will respond with the Transaction Approved or Decline transaction response.

  2. Based on the response, the POS will need to perform a GET/purchase/PosRefID in order to retrieve the transaction stratus to close the sale.

localhost:8282/v1/purchase?posRefId=c5eac6c2-ad7e-47c3-96f5-47d43895815e
localhost:8282/v1/purchase?posRefId=fbf69890-37f7-4cb9-afd7-d1b6d8d29ace

Transaction Response:

Received:
    {\"message\":
    {\"id\":\"prchs63\",
      \"event\":\"purchase_response\",
      \"data\":
        {
          \"success\":false,
          \"pos_ref_id\":\"c5eac6c2-ad7e-47c3-96f5-47d43895815e\",
          \"purchase_amount\":1000,
          \"bank_noncash_amount\":1100,
          \"bank_cash_amount\":0,
          \"surcharge_amount\":100,
          \"tip_amount\":0,
          \"host_response_code\":\"406\",
          \"host_response_text\":\"SIGNATURE DECLINED\",
          \"account_type\":\"CREDIT\",
          \"auth_code\":\"565846\",
          \"bank_date\":\"06092022\",
          \"bank_time\":\"113205\",
          \"bank_settlement_date\":\"06092022\",
          \"card_entry\":\"MAG_STRIPE\",
          \"currency\":\"AUD\",
          \"emv_actioncode\":\"AAC\",
          \"emv_actioncode_values\":\"E80000\",
          \"emv_pix\":\"1010\",
          \"emv_rid\":\"A000000004\",
          \"emv_tsi\":\"E100\",
          \"emv_tvr\":\"000000\",
          \"expiry_date\":\"0823\",
          \"masked_pan\":\"************1025\",
          "merchant_acquirer\":\"Gecko Bank\",
          \"merchant_addr\":\"60 Margaret Street \",
          \"merchant_city\":\"Sydney\",
          \"merchant_name\":\"60 Margaret Street\",
          "merchant_postcode\":\"2000\",
          \"online_indicator\":\"Y\",
          \"scheme_app_name\":\"Mastercard\",
          \"scheme_name\":\"Mastercard\",
          \"stan\":\"000050\",
          \"rrn\":\"001662463925\",
          \"transaction_type\":\"PURCHASE\",
          \"merchant_id\":\"3000001\",
          \"terminal_id\":\"30000101\",
          \"customer_receipt\":\"\\r\\n     Gecko Bank\\r\\n 60 Margaret Street\\r\\n60 Margaret Street \\r\\n  Sydney NSW 2000\\r\\n\\r\\nTID         30000101\\r\\nMID          3000001\\r\\nRRN     001662463925\\r\\n  06/09/2022 11:32\\r\\n\\r\\nSTAN          000050\\r\\nAUTH          565846\\r\\nCARD************1025\\r\\nMastercard     CR(S)\\r\\nAID   A0000000041010\\r\\nTVR           000000\\r\\n\\r\\nPURCHASE      $10.00\\r\\nSURCHARGE      $1.00\\r\\nTOTAL         $11.00\\r\\n\\r\\n SIGNATURE DECLINED\\r\\n       (406)\\r\\n\\r\\n  *CUSTOMER COPY*\\r\\n\\r\\n\",
          \"merchant_receipt\":\"\\r\\n     Gecko Bank\\r\\n 60 Margaret Street\\r\\n60 Margaret Street \\r\\n  Sydney NSW 2000\\r\\n\\r\\nTID         30000101\\r\\nMID          3000001\\r\\nRRN     001662463925\\r\\n  06/09/2022 11:32\\r\\n\\r\\nSTAN          000050\\r\\nAUTH          565846\\r\\nCARD************1025\\r\\nMastercard     CR(S)\\r\\nAID   A0000000041010\\r\\nTVR           000000\\r\\n\\r\\nPURCHASE      $10.00\\r\\nSURCHARGE      $1.00\\r\\nTOTAL         $11.00\\r\\n\\r\\n SIGNATURE DECLINED\\r\\n       (406)\\r\\n\\r\\n  *MERCHANT COPY*\\r\\n\\r\\n\"},
          \"datetime\":\"2022-09-06T11:32:24.264\",
          \"pos_id\":\"GECKO01\",
          \"conn_id\":\"78923888\"
         }
         }",
     "id":"248cf92b-7ea6-4806-bb5e-e84f8d79519c",
     "level":"info",
     "app":"spice"
  }
Received:
  {\"message\":
    {\"id\":\"prchs69\",
      \"event\":\"purchase_response\",
      \"data\":
        {
          \"success\":true,
          \"pos_ref_id\":\"fbf69890-37f7-4cb9-afd7-d1b6d8d29ace\",
          \"purchase_amount\":1000,
          \"bank_noncash_amount\":1100,
          \"bank_cash_amount\":0,
          \"surcharge_amount\":100,
          \"tip_amount\":0,
          \"host_response_code\":\"001\",
          \"host_response_text\":\"SIGNATURE APPROVED\",
          \"account_type\":\"CREDIT\",
          \"auth_code\":\"256098\",
          \"bank_date\":\"06092022\",
          \"bank_time\":\"113236\",
          \"bank_settlement_date\":\"06092022\",
          \"card_entry\":\"MAG_STRIPE\",
          \"currency\":\"AUD\",
          \"emv_actioncode\":\"TC\",
          \"emv_actioncode_values\":\"E80000\",
          \"emv_pix\":\"1010\",
          \"emv_rid\":\"A000000004\",
          \"emv_tsi\":\"E100\",
          \"emv_tvr\":\"000000\",
          \"expiry_date\":\"0823\",
          \"masked_pan\":\"************1025\",
          \"merchant_acquirer\":\"Gecko Bank\",
          \"merchant_addr\":\"60 Margaret Street \",
          \"merchant_city\":\"Sydney\",
          \"merchant_name\":\"60 Margaret Street\",
          \"merchant_postcode\":\"2000\",
          \"online_indicator\":\"Y\",
          \"scheme_app_name\":\"Mastercard\",
          \"scheme_name\":\"Mastercard\",
          \"stan\":\"000051\",
          \"rrn\":\"001662463956\",
          \"transaction_type\":\"PURCHASE\",
          \"merchant_id\":\"3000001\",
          \"terminal_id\":\"30000101\",
          \"customer_receipt\":\"\\r\\n     Gecko Bank\\r\\n 60 Margaret Street\\r\\n60 Margaret Street \\r\\n  Sydney NSW 2000\\r\\n\\r\\nTID         30000101\\r\\nMID          3000001\\r\\nRRN     001662463956\\r\\n  06/09/2022 11:32\\r\\n\\r\\nSTAN          000051\\r\\nAUTH          256098\\r\\nCARD************1025\\r\\nMastercard     CR(S)\\r\\nAID   A0000000041010\\r\\nTVR           000000\\r\\n\\r\\nPURCHASE      $10.00\\r\\nSURCHARGE      $1.00\\r\\nTOTAL         $11.00\\r\\n\\r\\n SIGNATURE APPROVED\\r\\n       (001)\\r\\n\\r\\n  *CUSTOMER COPY*\\r\\n\\r\\n\",
          \"merchant_receipt\":\"\\r\\n     Gecko Bank\\r\\n 60 Margaret Street\\r\\n60 Margaret Street \\r\\n  Sydney NSW 2000\\r\\n\\r\\nTID         30000101\\r\\nMID          3000001\\r\\nRRN     001662463956\\r\\n  06/09/2022 11:32\\r\\n\\r\\nSTAN          000051\\r\\nAUTH          256098\\r\\nCARD************1025\\r\\nMastercard     CR(S)\\r\\nAID   A0000000041010\\r\\nTVR           000000\\r\\n\\r\\nPURCHASE      $10.00\\r\\nSURCHARGE      $1.00\\r\\nTOTAL         $11.00\\r\\n\\r\\n SIGNATURE APPROVED\\r\\n       (001)\\r\\n\\r\\n  *MERCHANT COPY*\\r\\n\\r\\n\"},
          "datetime\":\"2022-09-06T11:32:40.014\",
          \"pos_id\":\"GECKO01\",
          \"conn_id\":\"78923888\"
        }
      }",
    "id":"248cf92b-7ea6-4806-bb5e-e84f8d79519c",
    "level":"info",
    "app":"spice"
  }