Documentation  # Voice Auth
# Endpoint
http://{terminalIp}/devices/cat/authorizeSales
# Request
| Property | Type | Description | 
|---|---|---|
| HTTP Headers | ||
| Signature | String | Sha-256 hmac of the JSON payload. | 
| Content-Type | text/plain | Even the payload is a JSON object, POS Bridge parses it as a string, therefore it is important to pas content-type as "text/plain" otherwise the authentication will fail. | 
| JSON | ||
| poyntRequestId | String | UUID of the request. | 
| timeout | int | Client timeout in milliseconds. Once client timeout is reached POS Bridge will return an error. | 
| payment | JSON Object | Contains options for the payment session. Encloses all the properties below. | 
| currency | String | 3 digit currency code. Property inside payment object. | 
| referenceId | String | Optional. Reference id that can be set by the POS. If not set, POS Bridge sets it by default to a UUID. | 
| orderId | String | Optional. UUID. If there is an order Object created in the Poynt cloud, setting orderId will link this payment with the order object. | 
| order | JSON Object | Optional. For more information please refer to the GoDaddy Poynt API reference https://poynt.com/docs/api/#model-order | 
| amount | int | Transaction amount in cents. | 
| tipAmount | int | Optional. Tip amount in cents (this is in addition to amount) | 
| skipReceiptScreen | boolean | Optional. If set to true, receipt screen is skipped on the terminal. Receipt screen allows customer to request printed receipt or receipt via email and SMS. | 
| manualEntry | boolean | Optional. Terminal prompts for card to be entered manually. This option will only work if the terminal is configured to process manual entry on the second screen. | 
| offlineAuth | boolean | Required. Forces the terminal to go into voice auth mode. | 
| offlineApprovalCode | String | Optional. If not provided the terminal operator will be prompted to enter the auth code in the payment fragment. | 
# Request Example
POST /devices/cat/authorizeSales HTTP/1.1
Host: 127.0.0.1:55555
User-Agent: curl/7.43.0
Accept: */*
Content-Type: text/plain
Signature: c9fa862e1e1ee49c112dabcb81d06be7b27ef3661c5d551f1ebac6b4d555be68
Content-Length: 933
{
    "timeout": 70000,
    "poyntRequestId": "B985B5CC-F8E9-47CD-85E9-4F3171FF31B0", 
    "payment": {
        "currency": "USD",
        "referenceId": "586DFE74-5CB6-4692-9FF3-048CA049673C", 
        "orderId": "91D4FAA4-FA5B-45E9-BB54-7ACB1438079D", 
        "order": {
            "amounts": { 
                "currency": "USD", 
                "subTotal": 1000
            },
            "id": "91D4FAA4-FA5B-45E9-BB54-7ACB1438079D", 
            "items": [
                {
                    "name": "Item1", 
                    "quantity": 1,
                    "status": "ORDERED", 
                    "tax": 0,
                    "unitOfMeasure": "EACH", 
                    "unitPrice": 100
                },
                {
                    "name": "Item2", "quantity": 1,
                    "status": "ORDERED", 
                    "tax": 0,
                    "unitOfMeasure": "EACH",
                    "unitPrice": 100
                },
                {
                    "name": "Item3", 
                    "quantity": 8,
                    "status": "ORDERED", 
                    "tax": 0,
                    "unitOfMeasure": "EACH", 
                    "unitPrice": 100
                },
            ],
            "statuses": {
                "status": "OPENED"
            }
        },
        "amount": 1000,
        "tipAmount": 0, 
        "skipReceiptScreen": true, 
        "offlineAuth": true, 
        "offlineApprovalCode": "qwerty"
    }
}
# Response Example
HTTP/1.1 200 OK
Connection: Keep-Alive
Signature: 3F57A635AAD46F9B19C9B2FC440B54E884ECFBE9B2657FFE704D9C3E4689450A
Content-Length: 3264
Content-Type: application/json
{
    "catResponse": {
        "approvalCode": "",
        "cardCompanyID": "V",
        "cardHolderFirstName": "", 
        "cardHolderLastName": "07675006903$00000$", 
        "centerResultCode": "",
        "sequenceNumber": 77, 
        "paymentCondition": 0, 
        "transactionType": 10
    },
    "payment": {
        "transactions": [
            {
                "action": "SALE", 
                "amounts": {
                    "currency": "USD", 
                    "orderAmount": 1000, 
                    "tipAmount": 0, 
                    "transactionAmount": 1000
                },
                "approvalCode": "qwerty",
                "authOnly": false,
                "createdAt": "2017-03-27T22:23:07Z", 
                "fundingSource": {
                    "card": { 
                        "cardHolderFirstName": "",
                        "cardHolderFullName": "07675006903$00000$", 
                        "cardHolderLastName": "07675006903$00000$", 
                        "encrypted": true,
                        "expirationDate": 31,
                        "expirationMonth": 5,
                        "expirationYear": 2021,
                        "keySerialNumber": "FFFF9876543210E000D7", "numberFirst6": "435880",
                        "numberLast4": "3536",
                        "track1data":"E1ADBE420D2462373856574FB593CDF5446824682BB8F04433EA1C97613BF67D85E6E4E0956D12AE6AFB1079E7A7FB9A216B C373004E082143468FE6EFF93C5FB1C16FB586AE6A13",
                        "track2data": "F53B2BB0FCAD19E96E846F39C603CDBC8FE558218584B9DB37AC4479F943DF00287D2C55A6331059",
                        "type": "VISA"
                    },
                    "emvData": {
                        "emvTags": {
                            "0x5F24": "210531",
                            "0x1F815D": "47",
                            "0x5F20": "303736373530303639303324303030303024", 
                            "0x1F8104": "33353336",
                            "0x1F815F": "01",
                            "0x1F8103": "343335383830",
                            "0x5F2A": "0840",
                            "0x1F815E": "26",
                            "0x1F8102": "FFFF9876543210E000D7",
                            "0x5F30": "121F",
                            "0x1F8160": "02",
                            "0x1F8161": "00",
                            "0x1F8162": "00",
                            "0x5F36": "02",
                            "0x57": "F53B2BB0FCAD19E96E846F39C603CDBC8FE558218584B9DB37AC4479F943DF00287D2C55A6331059",
                            "0x58": "",
                            "0x9F39": "02", 
                            "0x1F8153": "28E578F2", 
                            "0x56": "E1ADBE420D2462373856574FB593CDF5446824682BB8F04433EA1C97613BF67D85E6E4E0956D12AE6AFB1079E7A7FB9A216B C373004E082143468FE6EFF93C5FB1C16FB586AE6A13"
                        }
                    },
                    "entryDetails": {
                        "customerPresenceStatus": "PRESENT",
                        "entryMode": "TRACK_DATA_FROM_MAGSTRIPE"
                    },
                    "type": "CREDIT_DEBIT"
                },
                "id": "11dd9a34-015b-1000-fc08-2b6e519177d8",
                "references": [
                    {
                        "id": "91d4faa4-fa5b-45e9-bb54-7acb1438079d", 
                        "type": "POYNT_ORDER"
                    }
                ],
                "status": "CAPTURED"
            }
        ],
        "status": "COMPLETED",
        "currency": "USD",
        "referenceId": "586DFE74-5CB6-4692-9FF3-048CA049673C", 
        "orderId": "91d4faa4-fa5b-45e9-bb54-7acb1438079d",
        "order": {
            "amounts": { 
                "currency": "USD", 
                "subTotal": 1000
            },
            "id": "91d4faa4-fa5b-45e9-bb54-7acb1438079d",
            "items": [
                {
                    "name": "Item1", 
                    "quantity": 1,
                    "status": "ORDERED", 
                    "tax": 0,
                    "unitOfMeasure": "EACH", 
                    "unitPrice": 100
                },
                {
                    "name": "Item2", 
                    "quantity": 1,
                    "status": "ORDERED", 
                    "tax": 0,
                    "unitOfMeasure": "EACH", 
                    "unitPrice": 100
                },
                {
                    "name": "Item3", 
                    "quantity": 8,
                    "status": "ORDERED", 
                    "tax": 0,
                    "unitOfMeasure": "EACH", 
                    "unitPrice": 100
                }
            ],
            "statuses": {
                "status": "OPENED"
            }
        },
        "offlineApprovalCode": "qwerty",
        "amount": 1000,
        "tipAmount": 0, 
        "cashbackAmount": 0, 
        "disableEMVCT": false, 
        "disableEbtCashBenefits": false, 
        "disableEbtFoodStamps": false, 
        "disableEbtVoucher": false, 
        "disableMSR": false, 
        "disableManual": false, 
        "disableOther": false, 
        "disablePaymentOptions": false, 
        "disableTip": false, 
        "disableDCC": false,
        "isBalanceInquiry": false, 
        "manualEntry": false, 
        "multiTender": false, 
        "nonReferencedCredit": false, 
        "disableCheck": false, 
        "disableChangeAmount": false, 
        "offlineAuth": true, 
        "disableCash": false, 
        "debitOnly": false, 
        "readCardDataOnly": false, 
        "debit": false,
        "creditOnly": false, 
        "skipReceiptScreen": true, 
        "disableEMVCL": false, 
        "cashOnly": false, 
        "disableDebitCards": false, 
        "authzOnly": false, 
        "applicationIndex": 0, 
        "disableDebit": false, 
        "adjustToAddCharges": false, 
        "verifyOnly": false,
        "voucher": false
    },
    "poyntRequestId": "B985B5CC-F8E9-47CD-85E9-4F3171FF31B0"
}