Chilkat Online Tools

SQL Server / Bond APIs / 4a. simulate authorization

Back to Collection Items

-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @iTmp0 int
    -- Important: Do not use nvarchar(max).  See the warning about using nvarchar(max).
    DECLARE @sTmp0 nvarchar(4000)
    -- This example assumes the Chilkat API to have been previously unlocked.
    -- See Global Unlock Sample for sample code.

    DECLARE @http int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Http', @http OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    DECLARE @success int

    -- Use this online tool to generate code from sample JSON: Generate Code to Create JSON

    -- The following JSON is sent in the request body.

    -- {
    --   "card_id": "{{card_id}}",
    --   "amount": "4.99",
    --   "currency": "USD",
    --   "merchant_name": "Amazon.com Amzn.com/billWAUSA",
    --   "merchant_city": "Amzn.com/bill",
    --   "merchant_state": "WA",
    --   "merchant_zip_code": "98109",
    --   "mcc": "5462",
    --   "mid": "987654321"
    -- }

    DECLARE @json int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.JsonObject', @json OUT

    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'card_id', '{{card_id}}'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'amount', '4.99'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'currency', 'USD'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'merchant_name', 'Amazon.com Amzn.com/billWAUSA'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'merchant_city', 'Amzn.com/bill'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'merchant_state', 'WA'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'merchant_zip_code', '98109'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'mcc', '5462'
    EXEC sp_OAMethod @json, 'UpdateString', @success OUT, 'mid', '987654321'

    EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'Content-Type', 'application/json'
    EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'Authorization', '{{authorization}}'
    EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'Identity', '{{identity}}'

    DECLARE @resp int
    EXEC sp_OAMethod @http, 'PostJson3', @resp OUT, 'https://{{environment}}.bond.tech/api/v0/simulate/authorization', 'application/json', @json
    EXEC sp_OAGetProperty @http, 'LastMethodSuccess', @iTmp0 OUT
    IF @iTmp0 = 0
      BEGIN
        EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @http
        EXEC @hr = sp_OADestroy @json
        RETURN
      END

    EXEC sp_OAGetProperty @resp, 'StatusCode', @iTmp0 OUT
    PRINT @iTmp0
    EXEC sp_OAGetProperty @resp, 'BodyStr', @sTmp0 OUT
    PRINT @sTmp0
    EXEC @hr = sp_OADestroy @resp


    EXEC @hr = sp_OADestroy @http
    EXEC @hr = sp_OADestroy @json


END
GO

Curl Command

curl -X POST
	-H "Content-Type: application/json"
	-H "Authorization: {{authorization}}"
	-H "Identity: {{identity}}"
	-d '{
    "card_id": "{{card_id}}",
    "amount": "4.99",
    "currency": "USD",
    "merchant_name": "Amazon.com Amzn.com/billWAUSA",
    "merchant_city": "Amzn.com/bill",
    "merchant_state": "WA",
    "merchant_zip_code": "98109",
    "mcc": "5462",
    "mid": "987654321"
}'
https://{{environment}}.bond.tech/api/v0/simulate/authorization

Postman Collection Item JSON

{
  "name": "4a. simulate authorization",
  "event": [
    {
      "listen": "test",
      "script": {
        "exec": [
          "var jsonData = pm.response.json();",
          "pm.collectionVariables.set(\"transaction_id\", jsonData.transaction_id)"
        ],
        "type": "text/javascript"
      }
    }
  ],
  "request": {
    "method": "POST",
    "header": [
      {
        "key": "Content-Type",
        "type": "text",
        "value": "application/json"
      },
      {
        "key": "Authorization",
        "type": "text",
        "value": "{{authorization}}"
      },
      {
        "key": "Identity",
        "type": "text",
        "value": "{{identity}}"
      }
    ],
    "body": {
      "mode": "raw",
      "raw": "{\n    \"card_id\": \"{{card_id}}\",\n    \"amount\": \"4.99\",\n    \"currency\": \"USD\",\n    \"merchant_name\": \"Amazon.com Amzn.com/billWAUSA\",\n    \"merchant_city\": \"Amzn.com/bill\",\n    \"merchant_state\": \"WA\",\n    \"merchant_zip_code\": \"98109\",\n    \"mcc\": \"5462\",\n    \"mid\": \"987654321\"\n}"
    },
    "url": {
      "raw": "https://{{environment}}.bond.tech/api/v0/simulate/authorization",
      "protocol": "https",
      "host": [
        "{{environment}}",
        "bond",
        "tech"
      ],
      "path": [
        "api",
        "v0",
        "simulate",
        "authorization"
      ]
    },
    "description": "Add Card financial Core"
  },
  "response": [
    {
      "name": "simulate transaction",
      "originalRequest": {
        "method": "PATCH",
        "header": [
          {
            "key": "Content-Type",
            "type": "text",
            "value": "application/json"
          },
          {
            "key": "Authorization",
            "type": "text",
            "value": "{{authorization}}"
          },
          {
            "key": "Identity",
            "type": "text",
            "value": "{{identity}}"
          }
        ],
        "body": {
          "mode": "raw",
          "raw": ""
        },
        "url": {
          "raw": "https://sandbox.prod2.prod.bond.tech/api/v0/simulate",
          "protocol": "https",
          "host": [
            "sandbox",
            "prod2",
            "prod",
            "bond",
            "tech"
          ],
          "path": [
            "api",
            "v0",
            "simulate"
          ]
        }
      },
      "_postman_previewlanguage": "json",
      "header": null,
      "cookie": [
      ],
      "body": "{\n    \"rewards\": null,\n    \"transaction_type\": \"POS Purchase\",\n    \"transaction_time\": \"2021-08-03 16:45:55\",\n    \"customer_id\": \"b06d5406-7b65-4921-8806-bad23dd88bad\",\n    \"merchant_state\": \"WA\",\n    \"bond_brand_id\": \"00000000-0000-0000-0000-000000000000\",\n    \"payment_rail\": \"card\",\n    \"transaction_id\": \"6600347602\",\n    \"origin_timestamp\": \"2021-08-03 16:45:55\",\n    \"merchant_zip_code\": \"98109\",\n    \"merchant_name\": \"Amazon.Com Amzn.Com/Billwausa Usa\",\n    \"new_balance\": \"919.01\",\n    \"merchant_city\": \"Amzn.com/bill\",\n    \"account_id\": \"0bebf64a-a74b-42f4-9af9-8e5ac7b07cf4\",\n    \"amount\": \"-4.99\",\n    \"date_updated\": \"2021-08-03 16:45:55.447672+00:00\",\n    \"original_transaction_id\": null,\n    \"exchange_rate\": null,\n    \"transaction_state\": \"pending\",\n    \"merchant_address\": null,\n    \"amount_in_cents\": \"-499\",\n    \"merchant_id\": null,\n    \"prior_balance\": \"919.01\",\n    \"fee\": null,\n    \"cardholder_presence_indicator\": null,\n    \"card_id\": \"39ea1302-9228-4a70-a370-ebb527827aca\",\n    \"merchant_country\": null,\n    \"rewards_rate\": null,\n    \"transaction_response_code\": null,\n    \"acquiring_institution_identification_code\": null,\n    \"raw_statement_descriptor\": \"Amazon.com Amzn.com/billWAUSA USA\",\n    \"currency_code\": \"USD\",\n    \"settled_date\": \"2021-08-03 16:45:55\",\n    \"mcc\": \"Bakeries\",\n    \"uuid\": \"145e0a6b-beff-4b68-9fcc-05bef2c9b6dd\",\n    \"date_created\": \"2021-08-03 16:45:55.447665+00:00\"\n}"
    }
  ]
}