{
	"info": {
		"_postman_id": "f9afb422-fcfa-4b52-98ff-75d8fd08c58a",
		"name": "GPS REST API External Postman Collection",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
		"_exporter_id": "20946476"
	},
	"item": [
		{
			"name": "Tokens",
			"item": [
				{
					"name": "Generate Token",
					"request": {
						"method": "POST",
						"header": [
							{
								"key": "Accept",
								"value": "application/json",
								"type": "text"
							},
							{
								"key": "Content-Type",
								"value": "application/json",
								"type": "text"
							}
						],
						"body": {
							"mode": "urlencoded",
							"urlencoded": [
								{
									"key": "client_id",
									"value": "GPSTestUAT01",
									"type": "text"
								},
								{
									"key": "client_secret",
									"value": "SivgnL3jGXiQZa6eqkJ/R1oI+10KQl9Ms/qCGz3YvxiaNvASLwNG1ZrYB1vDAuJmY3szii81/yoMfZM+M8VcYA==",
									"type": "text"
								},
								{
									"key": "grant_type",
									"value": "client_credentials",
									"type": "text"
								}
							]
						},
						"url": {
							"raw": "https://uatists.globalprocessing.net/connect/token",
							"protocol": "https",
							"host": [
								"uatists",
								"globalprocessing",
								"net"
							],
							"path": [
								"connect",
								"token"
							]
						},
						"description": "This endpoint enables you to generate an authorisation token. A token is required to use all other endpoints in the Cards API."
					},
					"response": []
				}
			]
		},
		{
			"name": "Cards",
			"item": [
				{
					"name": "Create a Physical Card",
					"event": [
						{
							"listen": "test",
							"script": {
								"exec": [
									""
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"CardType\":\"Physical\",\r\n    \"CardProduct\": ,\r\n    \"CustomerReference\": \"CustNo12345A\",\r\n    \"Freetext1\": \"Comments for the card manufacturer here\",\r\n    \"Freetext2\": \"And in this field too.\", \r\n    \"CardHolder\": {\r\n        \"Title\": \"Mr.\",\r\n        \"FirstName\": \"Bruce\",\r\n        \"MiddleName\": \"Batman\",\r\n        \"LastName\": \"Wayne\",\r\n        \"DateOfBirth\": \"1982-02-19\",\r\n        \"Mobile\": \"07755123456\",\r\n        \"Email\": \"BWayne@iambatman.com\"\r\n    },\r\n    \"Address\": {\r\n        \"AddressLine1\": \"1007\",\r\n        \"AddressLine2\": \"Mountain Drive\",\r\n        \"AddressLine3\": \"string\",\r\n        \"City\": \"Gotham\",\r\n        \"County\": \"New Jersey\",\r\n        \"PostCode\": \"GC11 2LD\",\r\n        \"Country\": \"USA\"\r\n    },\r\n    \"fulfilment\": {\r\n          \"addressLine1\": \"32 Metropolis Ave\",\r\n          \"city\": \"Gotham\",\r\n          \"country\": \"USA\",\r\n          \"county\": \"Gothamshire\",\r\n          \"PostCode\": \"GC11 2LD\"\r\n     },\r\n     \"ManufacturingDetails\":\r\n     {\r\n       \"CardManufacturer\": \"AB Note\",\r\n        \"DeliveryMethod\": 0,\r\n        \"CarrierType\": \"Type 1\",\r\n        \"Quantity\": 1,\r\n        \"Language\": \"HU\",\r\n        \"ThermalLine1\": \"asdeoivh2neriuvnqkr\",\r\n        \"ThermalLine2\" : \"asjkfnkerjnkwe\",\r\n        \"EmbossLine4\" : \"jdwncwlkejr\",\r\n        \"VanityName\" : \"Name Mane\",\r\n             \"ImageDetails\":\r\n             {\r\n                  \"ImageId\": \"An image id\",\r\n                  \"LogoFrontId\" : \"A logo ID\",\r\n                  \"LogoBackId\": \"Another logo ID\"\r\n             },\r\n    \"nameOnCard\": {\r\n        \"title\": \"Mr\",\r\n        \"firstName\": \"Bruce\",\r\n        \"lastName\": \"Wayne\"\r\n     }\r\n     \r\n    \r\n    }\r\n\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								""
							]
						},
						"description": "This endpoint enables you to create physical and virtual cards. The type of card you create is governed by what value you pass for Card Type, either physical or virtual.\n\nA successful response will return a 201 http code. The GPS public token linked to the card will be returned in the response.\n\nFor more information on how to create a card, see [Creating a Card](https://cardsapidocs.globalprocessing.com/docs/create-card-2)."
					},
					"response": []
				},
				{
					"name": "Retrieve a Card",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}"
							]
						},
						"description": "This endpoint enables you to retrieve the details for a card using the PublicToken provided when the card was created.\n\nA successful response will return a 200 http code and the details associated with the card."
					},
					"response": []
				},
				{
					"name": "Update Card",
					"request": {
						"method": "PATCH",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"CustomerReference\": \"CustNo12345A\",\r\n    \"Freetext1\": \"Comments for the card manufacturer here\",\r\n    \"Freetext2\": \"And in this field too.\", \r\n    \"CardHolder\": {\r\n        \"Title\": \"Mr.\",\r\n        \"FirstName\": \"David\",\r\n        \"LastName\": \"Smith\",\r\n        \"DateOfBirth\": \"1982-02-25\",\r\n        \"Mobile\": \"07645123456\",\r\n        \"Email\": \"Darcy@iambatman.com\"\r\n    },\r\n    \"Address\": {\r\n        \"AddressLine1\": \"1008\",\r\n        \"AddressLine2\": \"Royal Way\",\r\n        \"AddressLine3\": null,\r\n        \"City\": \"London\",\r\n        \"County\": \"Essex\",\r\n        \"PostCode\": \"RM7 2LD\",\r\n        \"Country\": \"GBR\"\r\n    },\r\n    \"Fulfillment\": {\r\n        \"AddressLine1\": \"1009\",\r\n        \"AddressLine2\": \"Behind Waterfall\",\r\n        \"AddressLine3\": null,\r\n        \"City\": \"Gotham\",\r\n        \"County\": \"New_York\",\r\n        \"PostCode\": \"GT019TT\",\r\n        \"Country\": \"USA\"\r\n    },\r\n    \"NameOnCard\": {\r\n        \"Title\": \"Mr\",\r\n        \"FirstName\": \"Dave\",\r\n        \"LastName\": \"Smith\"\r\n    }\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}"
							]
						},
						"description": "This endpoint enables you to update the details for a card. You need to identify the public token that corresponds to the customer's card. When you have identified the correct public token, you can make a call to the endpoint. ensuring you have only the fields you want to update populated in the body.\n\nFor more information on how to update a card, see [Updating a Card](https://cardsapidocs.globalprocessing.com/docs/updating-a-card)."
					},
					"response": []
				},
				{
					"name": "Renew Card",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"RenewStep\" : \"renew\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/renew",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"renew"
							]
						},
						"description": "This endpoint enables you to renew a card outside of the autorenewal cycle. Renewals can be done for both virtual and physical cards, though the process differs for each.\n\nFor more information on how to renew a card, see [Card Renewal, Card Replacement & Lost Cards](https://cardsapidocs.globalprocessing.com/docs/card-renewal-and-replacement)."
					},
					"response": []
				},
				{
					"name": "Replace a Card",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/replace",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"replace"
							]
						},
						"description": "This point enables you to replace a card that has been lost, stolen or damaged. You will need to identify the public token for the card and update the card status to LostCard. See [Card Status Change](https://cardsapidocs.globalprocessing.com/docs/card-status) for more details.\n\nFor more information on how to replace a card, see [Card Renewal, Card Replacement & Lost Cards](https://cardsapidocs.globalprocessing.com/docs/card-renewal-and-replacement)."
					},
					"response": []
				},
				{
					"name": "Retrieve Card Status",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/status",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"status"
							]
						},
						"description": "This endpoint enables you to retrieve the live status for a card based on the Public Token in the request.\n\nFor more information on how to retrieve a card status, see [Card Status Change](https://cardsapidocs.globalprocessing.com/docs/card-status)."
					},
					"response": []
				},
				{
					"name": "Update Card Status",
					"request": {
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n     \"cardStatusCode\": \"00\",\r\n     \"updatedBy\": \"John Bloggs\",\r\n     \"description\": \"Card activated\",\r\n     \"validityDate\": \"2023-02\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/status",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"status"
							]
						},
						"description": "This endpoint enables you to update the live status of a card for the Public Token in the request. For information on the available statuses, see [Card Status Codes](https://cardsapidocs.globalprocessing.com/docs/card-status-codes).\n\nFor more information on how to retrieve a card status, see [Card Status Change](https://cardsapidocs.globalprocessing.com/docs/card-status)."
					},
					"response": []
				},
				{
					"name": "List Card Balance",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "accept",
								"value": "application/json"
							}
						],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/balance",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"balance"
							]
						},
						"description": "This point enables you to check the current balance of the card.\n\nFor more information on how to list card balances, see [Loading, Unloading and Balance Adjustments](https://cardsapidocs.globalprocessing.com/docs/loading-unloading-a-card)."
					},
					"response": []
				},
				{
					"name": "Convert Card",
					"event": [
						{
							"listen": "test",
							"script": {
								"exec": [
									""
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"CardType\": \"Physical\",\r\n    \"moveExpiryDate\": true\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/card-type",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"card-type"
							]
						},
						"description": "This point enables you to convert a card from virtual to physical. When converted, the new physical card will have the same Primary Account Number (PAN) as the virtual card. The cardholder can continue to use their existing virtual card until the cardholder has received and activated their physical card.\n\nFor more information on how to convert a card, see [Converting a Card from Virtual to Physical](https://cardsapidocs.globalprocessing.com/docs/converting-a-card)."
					},
					"response": []
				},
				{
					"name": "Get Card Image",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/image",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"image"
							]
						},
						"description": "This endpoint enables you to request the image associated with the card."
					},
					"response": []
				},
				{
					"name": "Get Cardholder Details",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cardholder/{{publicToken}}",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cardholder",
								"{{publicToken}}"
							]
						},
						"description": "This endpoint enables you to view the cardholder details associated with a card. Unlike the Retrieve a Card endpoint, this endpoint only returns the details of the cardholder and not the card."
					},
					"response": []
				},
				{
					"name": "Update STIP Balance",
					"protocolProfileBehavior": {
						"disabledSystemHeaders": {}
					},
					"request": {
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"AvailableSTIPBalanceGPS\": 150.0,\r\n    \"CurrentSTIPBalanceGPS\": 200.0,\r\n    \"CurrencyCode\": \"GBP\",\r\n    \"BalanceSequenceIDExT\": 1234,\r\n    \"UpdatedBy\": \"J Sims\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/balance/stip",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"balance",
								"stip"
							]
						},
						"description": "The Update Stand in Processing (STIP) Balance endpoint enables customer's using EHI Mode 4 or 5 to adjust a balance for a card.\n\nNote that if you are on any other mode of EHI then the endpoint will not work."
					},
					"response": []
				},
				{
					"name": "Complete a Card Replacement",
					"request": {
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/complete-replacement",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"complete-replacement"
							]
						},
						"description": "This endpoint enables you to transfer an old card Balance, Limit, and Child cards (BLC) to a newly replaced card.\n\nThe BLC Card Replacement endpoint can only be used after a card has been successfully replaced. The Replace Card endpoint must be run first.\n\nFor more information, see [BLC Complete Card Replacement.](https://cardsapidocs.globalprocessing.com/docs/get-card-replacement)\n\nEndFragment\n\n  \n  \n\nEndFragment"
					},
					"response": []
				},
				{
					"name": "Send an SMS",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n\"phoneNumber\":\"07xxxxxxxxx\", \r\n\"smsText\": \"CVV for your card ending with %cardLast4% is %CVV%\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/send-sms",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"send-sms"
							]
						}
					},
					"response": []
				},
				{
					"name": "Get Card Limits",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/balance/cardlimits",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"balance",
								"cardlimits"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "Groups",
			"item": [
				{
					"name": "Update Card Control Groups",
					"event": [
						{
							"listen": "test",
							"script": {
								"exec": [
									"pm.test(\"Your test name\", function () {\r",
									"    var jsonData = pm.response.json();\r",
									"    pm.expect(jsonData.value).to.eql(100);\r",
									"});"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"ControlGroups\": {\r\n        \"AuthFeeGroup\": 1     \r\n    }\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/groups",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"groups"
							]
						},
						"description": "This endpoint enables you to update the control groups that define the card behaviour."
					},
					"response": []
				},
				{
					"name": "List Card Control Groups",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/groups",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"groups"
							]
						},
						"description": "This endpoint enables you to list the control groups for your card program.\n\nFor more information on how to list card control groups, see [Managing Card Usage Groups](https://cardsapidocs.globalprocessing.com/docs/card-controls)."
					},
					"response": []
				}
			]
		},
		{
			"name": "3D Secure",
			"item": [
				{
					"name": "Create 3DS Credentials",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n\"Type\":\"OTPSMS\",\r\n\"Value\": \"8988\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/3ds-credentials",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"3ds-credentials"
							]
						},
						"description": "This endpoint enables you to create 3D Secure authorisation credential for a card.\n\nFor more information on how to create 3DS credentials, see [Managing 3D Secure Credentials](https://cardsapidocs.globalprocessing.com/docs/creating-3d-secure-credentials)."
					},
					"response": []
				},
				{
					"name": "List 3DS Credentials",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/3ds-credentials",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"3ds-credentials"
							]
						},
						"description": "This endpoint enables you to list the 3D Secure authorisation credentials for a card.\n\nFor more information on how to list 3DS credentials, see [Managing 3D Secure Credentials](https://desktop.postman.com/?desktopVersion=9.19.0&userId=20946476&teamId=0)."
					},
					"response": []
				},
				{
					"name": "Update 3DS Credentials",
					"request": {
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"type\": \"EmailOTP\",\r\n    \"value\": \"286999\"\r\n\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/3ds-credentials/2222",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"3ds-credentials",
								"2222"
							]
						},
						"description": "This endpoint enables you to update the 3D Secure authorisation credential for a card.\n\nFor more information on how to update 3DS credentials, see [Managing 3D Secure Credentials](https://desktop.postman.com/?desktopVersion=9.19.0&userId=20946476&teamId=0)."
					},
					"response": []
				},
				{
					"name": "Delete 3DS Credentials",
					"request": {
						"method": "DELETE",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": ""
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/3ds-credentials/481725",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"3ds-credentials",
								"481725"
							]
						},
						"description": "This endpoint enables you to delete 3D Secure authorisation credentials for a card.\n\nFor more information on how to delete 3DS credentials, see [Managing 3D Secure Credentials](https://desktop.postman.com/?desktopVersion=9.19.0&userId=20946476&teamId=0)."
					},
					"response": []
				}
			]
		},
		{
			"name": "Card PIN",
			"item": [
				{
					"name": "Get PIN",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "accept",
								"value": "application/json"
							}
						],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/pin",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"pin"
							]
						},
						"description": "This endpoint enables you to retrieve the PIN for a card in plain text.\n\nFor more information on how to retrieve a card PIN, see [PIN Management](https://cardsapidocs.globalprocessing.com/docs/card-personal-identification-number-pin)."
					},
					"response": []
				},
				{
					"name": "Set PIN",
					"request": {
						"method": "POST",
						"header": [
							{
								"key": "accept",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"CardPin\": \"1234\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/pin",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"pin"
							]
						},
						"description": "This end point enables you to set a PIN for the card. This will overwrite the PIN allocated to the card during card creation.\n\nFor more information on how to set a PIN, see [PIN Management](https://desktop.postman.com/?desktopVersion=9.19.0&userId=20946476&teamId=0)."
					},
					"response": []
				},
				{
					"name": "Get PIN Status",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/pin/status",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"pin",
								"status"
							]
						},
						"description": "This endpoint enables you to retrieve the current status of the card's PIN."
					},
					"response": []
				},
				{
					"name": "Unblock PIN",
					"request": {
						"method": "POST",
						"header": [
							{
								"key": "accept",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/pin/unblock",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"pin",
								"unblock"
							]
						},
						"description": "This endpoint enables you to unblock a PIN for a card.\n\nFor more information on how to unblock a card PIN, see [PIN Management](https://desktop.postman.com/?desktopVersion=9.19.0&userId=20946476&teamId=0)."
					},
					"response": []
				}
			]
		},
		{
			"name": "Card CVV",
			"item": [
				{
					"name": "Get CVV",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/cvv",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"cvv"
							]
						},
						"description": "This endpoint enables you to retrieve a card's Card Verification Value (CVV).\n\nFor more information on how to retrieve a card CVV, see [Card Verification Value (CVV)](https://cardsapidocs.globalprocessing.com/docs/card-verification-value-cvv)."
					},
					"response": []
				},
				{
					"name": "Get CVV Status",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/cvv/status",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"cvv",
								"status"
							]
						},
						"description": "This endpoint enables you to get the CVV status of a card."
					},
					"response": []
				},
				{
					"name": "Unblock CVV",
					"request": {
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"status\": \"Unblocked\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/cvv/status",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"cvv",
								"status"
							]
						},
						"description": "This endpoint enables you to unblock a card's Card Verification Value (CVV).\n\nFor more information on how to unblock a CVV, see [Card Verification Value (CVV)](https://cardsapidocs.globalprocessing.com/docs/card-verification-value-cvv)."
					},
					"response": []
				}
			]
		},
		{
			"name": "Transactions",
			"item": [
				{
					"name": "Load Card",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n\"TransactionType\": \"Load\",\r\n\"Amount\": 1000.00,\r\n\"CurrencyCode\": \"GBP\",\r\n\"LoadedBy\": \"string\",\r\n\"Description\": \"string\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/transactions",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"transactions"
							]
						},
						"description": "This endpoint enables you to load funds onto a card, allowing you to add a positive balance onto the card.\n\nFor more information on how to load a card, see [Loading, Unloading and Balance Adjustments](https://cardsapidocs.globalprocessing.com/docs/loading-unloading-a-card)."
					},
					"response": []
				},
				{
					"name": "Unload Card",
					"event": [
						{
							"listen": "test",
							"script": {
								"exec": [
									"pm.test(\"Status code is 200\", function () {\r",
									"    pm.response.to.have.status(200);\r",
									"});\r",
									"\r",
									"pm.test(\"Check Response\", function () {\r",
									"    var jsonData = pm.response.json();\r",
									"    var req = JSON.parse(pm.request.body.raw);\r",
									"    const transaction = jsonData.transaction[0];\r",
									"\r",
									"console.log(JSON.stringify(jsonData));\r",
									"//Get the card balance after loading the card\r",
									"   const cardBalance = pm.collectionVariables.get(\"cardBalance\");\r",
									"    const expectedResult = {\r",
									"        \"balance\": {\r",
									"            \"currencyCode\": \"GBP\",\r",
									"            \"cardBalance\": cardBalance - req.Amount,\r",
									"            \"pendingAmount\": 0,\r",
									"            \"availableBalance\": cardBalance - req.Amountt\r",
									"        }\r",
									"    }\r",
									"\r",
									"    pm.expect(jsonData).to.deep.include(expectedResult);\r",
									"    pm.expect(transaction.transactionType).to.be.eql('Unload');\r",
									"    pm.expect(transaction.transactionId).to.be.a('string');\r",
									"    pm.expect(transaction.amount).to.be.eql(req.Amount);\r",
									"    pm.expect(transaction.currencyCode).to.be.eql(req.currencyCode);\r",
									"\r",
									"});"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n\"TransactionType\": \"Unload\",\r\n\"Amount\": 50.00,\r\n\"CurrencyCode\": \"GBP\",\r\n\"LoadedBy\": \"string\",\r\n\"Description\": \"string\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/transactions",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"transactions"
							]
						},
						"description": "This endpoint enables you to unload funds from a card, allowing you to remove or partially remove the balance from the card.\n\nFor more information on how to load a card, see [Loading, Unloading and Balance Adjustments](https://desktop.postman.com/?desktopVersion=9.19.0&userId=20946476&teamId=0)."
					},
					"response": []
				},
				{
					"name": "Adjust Balance",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"transactionType\": \"BalanceAdjustment\",\r\n  \"amount\": 500,\r\n  \"currencyCode\": \"GBP\",\r\n  \"loadedBy\": \"User\",\r\n  \"description\": \"Description\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/transactions",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"transactions"
							]
						},
						"description": "This endpoint enables you to create a transaction to modify the balance on the card.\n\nFor more information on how to load and unload a card, see [Loading, Unloading and Balance Adjustments](https://cardsapidocs.globalprocessing.com/docs/loading-unloading-a-card)."
					},
					"response": []
				},
				{
					"name": "Transfer Funds",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n\"TransactionType\": \"TransferFunds\",\r\n\"Amount\": 10.00,\r\n\"CurrencyCode\": \"GBP\",\r\n\"ToPublicToken\": \"987654321\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/transactions",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"transactions"
							]
						},
						"description": "This endpoint enables users to transfer funds between cards in the GPS system, and to facilitate loading cards from an MVC.\n\nFunds are transferred from the publicToken set in the URL and transferred to the token set in the ToPublicToken field in the body"
					},
					"response": []
				},
				{
					"name": "Get Card Transactions",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/transactions?fromDate=20210101&toDate=20221231",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"transactions"
							],
							"query": [
								{
									"key": "fromDate",
									"value": "20210101"
								},
								{
									"key": "toDate",
									"value": "20221231"
								}
							]
						},
						"description": "This endpoint retrieves the transactions for a card between two specified dates.\n\nFor more information on how to list card transactions, see [Listing Card Transactions](https://cardsapidocs.globalprocessing.com/docs/retrieving-card-transactions)."
					},
					"response": []
				}
			]
		},
		{
			"name": "Products",
			"item": [
				{
					"name": "Get Product for Program Manager",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/products/8591",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"products",
								"8591"
							]
						},
						"description": "This endpoint allows you to retrieve details for a specified product id. This id must be specified in the endpoint.\n\nFor more information, see [Getting Product Data](https://cardsapidocs.globalprocessing.com/docs/getting-product-data)."
					},
					"response": []
				},
				{
					"name": "Get Products",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/products",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"products"
							]
						},
						"description": "This endpoint allows you to retrieve the a list of products for your program.\n\nFor more information, see [Getting Product Data](https://cardsapidocs.globalprocessing.com/docs/getting-product-data)."
					},
					"response": []
				},
				{
					"name": "Get Product Card Stock",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/products/9999/stock",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"products",
								"9999",
								"stock"
							]
						},
						"description": "The Get Product Card Stock endpoint enables you to find out how much card stock you have associated with a product. You can retrieve a product's card stock by making a GET request to the Get Card Stock endpoint.\n\nFor more information, see [Getting Card Stock Data.](https://cardsapidocs.globalprocessing.com/docs/getting-card-stock-data)"
					},
					"response": []
				}
			]
		},
		{
			"name": "Merchants",
			"item": [
				{
					"name": "Get Allowed Merchants",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/groups/allow-merchant",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"groups",
								"allow-merchant"
							]
						},
						"description": "This endpoint allows you to retrieve the merchant allow list for your program. You can retrieve the merchant allow list by making a GET request to the allow merchant endpoint.\n\nFor more information, see [Merchant Allow Lists](https://cardsapidocs.globalprocessing.com/docs/merchant-allow-lists)."
					},
					"response": []
				},
				{
					"name": "Add Merchant to Allow List",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"merchantIds\": [\r\n        \"Merchant5\"\r\n    ]\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/groups/allow-merchant/86",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"groups",
								"allow-merchant",
								"86"
							]
						},
						"description": "This endpoint allows you to add merchants to the allow list. You can do this by adding the List ID to the end of the Allow Merchant endpoint.\n\nFor more information, see [Merchant Allow Lists](https://cardsapidocs.globalprocessing.com/docs/merchant-allow-lists)."
					},
					"response": []
				},
				{
					"name": "Remove Merchant from Allow List",
					"request": {
						"method": "DELETE",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": ""
						},
						"url": {
							"raw": "{{base-url}}/groups/allow-merchant/86/Merchant5",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"groups",
								"allow-merchant",
								"86",
								"Merchant5"
							]
						},
						"description": "This endpoint allows you to remove a merchant from an allow list. You can do this by using the DELETE method and adding the List ID and Merchant ID to the end of the Allow Merchant endpoint.\n\nFor more information, see [Merchant Allow Lists](https://cardsapidocs.globalprocessing.com/docs/merchant-allow-lists)."
					},
					"response": []
				},
				{
					"name": "Get Disallowed Merchants",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/groups/disallow-merchant",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"groups",
								"disallow-merchant"
							]
						},
						"description": "This endpoint allows you to retrieve the merchant disallow list for your program. You can retrieve the merchant disallow list by making a GET request to the Disallow Merchant endpoint.\n\nFor more information, see [Merchant Disallow Lists](https://cardsapidocs.globalprocessing.com/docs/merchant-disallow-lists)."
					},
					"response": []
				},
				{
					"name": "Add Merchant to Disallow List",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"merchantIds\": [\r\n        \"Merchant5\"\r\n    ]\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/groups/disallow-merchant/71",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"groups",
								"disallow-merchant",
								"71"
							]
						},
						"description": "This endpoint allows you to add merchants to a disallow list. You can do this by adding the List ID to the end of the Disallow Merchant endpoint.\n\nFor more information, see [Merchant Disallow Lists](https://cardsapidocs.globalprocessing.com/docs/merchant-disallow-lists)."
					},
					"response": []
				},
				{
					"name": "Remove Merchant from Disallow List",
					"request": {
						"method": "DELETE",
						"header": [],
						"url": {
							"raw": "{{base-url}}/groups/disallow-merchant/71/Merchant5",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"groups",
								"disallow-merchant",
								"71",
								"Merchant5"
							]
						},
						"description": "This endpoint allows you to remove a merchant from a disallow list. You can do this by using the DELETE method and adding the List ID and Merchant ID to the end of the Disallow Merchant endpoint.\n\nFor more information, see [Merchant Disallow Lists](https://cardsapidocs.globalprocessing.com/docs/merchant-disallow-lists)."
					},
					"response": []
				}
			]
		},
		{
			"name": "Program Manager",
			"item": [
				{
					"name": "Get Customer Specific Cards",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "accept",
								"value": "application/json"
							}
						],
						"url": {
							"raw": "{{base-url}}/program-manager/cards?customerReference=84bc1c22-3333-47f5-99c9-1",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"program-manager",
								"cards"
							],
							"query": [
								{
									"key": "customerReference",
									"value": "84bc1c22-3333-47f5-99c9-1"
								}
							]
						},
						"description": "This endpoint allows you to retrieve a list of cards for a specified customer. You can retrieve the cards for a customer by making a GET request to the Get Customer Specific Cards endpoint with the customer reference specified in the endpoint URL.\n\nFor more information, see [Get Customer Specific Cards](https://cardsapidocs.globalprocessing.com/docs/get-customer-specific-cards)."
					},
					"response": []
				},
				{
					"name": "Get a List of Cardholders",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/program-manager/search/cardholders?FirstName=&LastName=&SchemeName=&ProductId=&ProductName=",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"program-manager",
								"search",
								"cardholders"
							],
							"query": [
								{
									"key": "FirstName",
									"value": ""
								},
								{
									"key": "LastName",
									"value": ""
								},
								{
									"key": "SchemeName",
									"value": ""
								},
								{
									"key": "ProductId",
									"value": ""
								},
								{
									"key": "ProductName",
									"value": ""
								}
							]
						},
						"description": "This endpoint enables you to search for specific cardholder details for customers in your program.\n\nFor more information, see [Get Cardholder Details for Program](https://cardsapidocs.globalprocessing.com/docs/get-cardholder-details-for-program)."
					},
					"response": []
				},
				{
					"name": "Get Cards for a Given Cardholder",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/program-manager/search/cards?Title=&FirstName=&LastName=&DateOfBirth=&Email=&Mobile=",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"program-manager",
								"search",
								"cards"
							],
							"query": [
								{
									"key": "Title",
									"value": ""
								},
								{
									"key": "FirstName",
									"value": ""
								},
								{
									"key": "LastName",
									"value": ""
								},
								{
									"key": "DateOfBirth",
									"value": ""
								},
								{
									"key": "Email",
									"value": ""
								},
								{
									"key": "Mobile",
									"value": ""
								}
							]
						},
						"description": "This endpoint enables you to search by cardholder details to retrieve card information associated with the details entered.\n\nFor more information, see [Get Card Details for Program](https://cardsapidocs.globalprocessing.com/docs/get-card-details-for-program)."
					},
					"response": []
				}
			]
		},
		{
			"name": "Card Tokenization",
			"item": [
				{
					"name": "Get Card Payment Tokens",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/102805901/payment-tokens",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"102805901",
								"payment-tokens"
							]
						},
						"description": "This endpoint enables you to retrieve the list of payment tokens associated with a card. You can retrieve the payment tokens by making a GET request to the Payment Tokens endpoint.\n\nFor more information, see [Get card Payment Tokens](https://cardsapidocs.globalprocessing.com/docs/get-card-payment-tokens)."
					},
					"response": []
				},
				{
					"name": "Get Details for Payment Token",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/payment-tokens/6783",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"payment-tokens",
								"6783"
							]
						},
						"description": "This endpoint enables you to retrieve the details of a specified payment token. You can retrieve the details of the token by making a GET request to the Payment Tokens endpoint.\n\nFor more information, see [Get Card Payment Token Details](https://cardsapidocs.globalprocessing.com/docs/get-card-payment-token-details)."
					},
					"response": []
				},
				{
					"name": "Get Card Payment Token Devices",
					"request": {
						"method": "GET",
						"header": [],
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/payment-tokens/6783/devices",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"payment-tokens",
								"6783",
								"devices"
							]
						},
						"description": "This endpoint enables you to retrieve a list of devices associated with a payment token. You can retrieve the details by making a GET request to the Payment Token Devices endpoint.\n\nFor more information, see [Get Card Payment Token Devices](https://cardsapidocs.globalprocessing.com/docs/get-card-payment-token-devices)."
					},
					"response": []
				},
				{
					"name": "Update Payment Token Status",
					"request": {
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"status\": \"Suspended\"\r\n   \r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/payment-tokens/6783/status",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"payment-tokens",
								"6783",
								"status"
							]
						},
						"description": "This endpoint enables you change the status of a payment token associated with a device. You can do this by making a PUT request to the Update Payment Token Status endpoint.\n\nFor more information, see [Update Payment Token Status](https://cardsapidocs.globalprocessing.com/docs/update-payment-token-status)."
					},
					"response": []
				},
				{
					"name": "Unbind a Payment Token",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "{{base-url}}/cards/{{publicToken}}/payment-tokens/6783/devices/unbind",
							"host": [
								"{{base-url}}"
							],
							"path": [
								"cards",
								"{{publicToken}}",
								"payment-tokens",
								"6783",
								"devices",
								"unbind"
							]
						},
						"description": "This endpoint enables you to remove a payment token from a device. You can do this by making a POST request to the Unbind Payment Token endpoint. \n\nFor more information, see [Unbind Payment Token](https://cardsapidocs.globalprocessing.com/docs/unbind-payment-token)."
					},
					"response": []
				}
			]
		}
	],
	"auth": {
		"type": "oauth2",
		"oauth2": [
			{
				"key": "accessTokenUrl",
				"value": "https://uatists.globalprocessing.net/connect/token",
				"type": "string"
			},
			{
				"key": "clientSecret",
				"value": "{{client_secret}}",
				"type": "string"
			},
			{
				"key": "clientId",
				"value": "{{client_id}}",
				"type": "string"
			},
			{
				"key": "challengeAlgorithm",
				"value": "S256",
				"type": "string"
			},
			{
				"key": "grant_type",
				"value": "client_credentials",
				"type": "string"
			},
			{
				"key": "addTokenTo",
				"value": "header",
				"type": "string"
			},
			{
				"key": "client_authentication",
				"value": "body",
				"type": "string"
			}
		]
	},
	"event": [
		{
			"listen": "prerequest",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		},
		{
			"listen": "test",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		}
	],
	"variable": [
		{
			"key": "base-url",
			"value": "https://cardsapi-uat-pub.globalprocessing.net/api/v1",
			"type": "string"
		},
		{
			"key": "publicToken",
			"value": "103169955",
			"type": "string"
		},
		{
			"key": "client_id",
			"value": "GPSTestUAT01",
			"type": "string"
		},
		{
			"key": "client_secret",
			"value": "SivgnL3jGXiQZa6eqkJ/R1oI+10KQl9Ms/qCGz3YvxiaNvASLwNG1ZrYB1vDAuJmY3szii81/yoMfZM+M8VcYA==",
			"type": "string"
		},
		{
			"key": "grant_type",
			"value": "client_credentials",
			"type": "string"
		},
		{
			"key": "access_token",
			"value": "",
			"type": "string"
		}
	]
}