# Cancel
source: https://developer.mastercard.com/iccp/documentation/05_api_reference/soap_api/purchaserequest/cancelpurchaserequest/index.md

> Cancel a virtual card that is no longer valid or needed. Cancel up to 50 purchase requests in a single API call.
> Customers can use this request to prevent use of the virtual account.  
>
> `CancelPurchaseRequests` request can also be used to block or unblock purchase requests. Blocking a purchase request suspends activity on that purchase request temporarily. Users can unblock purchase requests with Blocked status to subsequently edit them.

## Parameters {#parameters}

|         Names          |                                                                    Description                                                                    | Required for ICCP | Required for ICMP |     Type      |
|------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|-------------------|-------------------|---------------|
| `purchaseRequestId`    | * ID of an active purchase request * Maximum length: 22 digits * Maximum 50 Purchase Requests can be submitted for cancelling in a single request | Yes               | Yes               | Integer, long |
| `BlockPurchaseRequest` | Request to block or unblock a purchase request                                                                                                    | No                | No                | Boolean       |

### Sample request {#sample-request}

#### An example request shows the structure and content included {#an-example-request-shows-the-structure-and-content-included}

```xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://mastercard.com/sd/pc2/service">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:cancelPurchaseRequestsRequest>
         <ser:purchaseRequestId>1480449</ser:purchaseRequestId>
         <ser:purchaseRequestId>1480450</ser:purchaseRequestId>
      </ser:cancelPurchaseRequestsRequest>
   </soapenv:Body>
</soapenv:Envelope>
```

#### Sample Request with BlockPurchaseRequest as true {#sample-request-with-blockpurchaserequest-as-true}

```xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://mastercard.com/sd/pc2/service">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:cancelPurchaseRequestsRequest>
         <ser:purchaseRequestId>1480449</ser:purchaseRequestId>
         <ser:purchaseRequestId>1480450</ser:purchaseRequestId>
         <ser:blockPurchaseRequest>true</ser:blockPurchaseRequest>
      </ser:cancelPurchaseRequestsRequest>
   </soapenv:Body>
</soapenv:Envelope>
```

## Response {#response}

|        Names         |                                         Description                                         | Required for ICCP | Required for ICMP |     Type      |
|----------------------|---------------------------------------------------------------------------------------------|-------------------|-------------------|---------------|
| `purchaseRequestId`  | ID of the cancelled purchase request.                                                       | Yes               | Yes               | Integer, long |
| `approvalSuccessful` | * This value is always true for a cancelled purchase request. * Possible values: True/False | Yes               | Yes               | Boolean       |

### Sample response {#sample-response}

#### An example response shows the structure and content included {#an-example-response-shows-the-structure-and-content-included}

```xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <cancelPurchaseRequestsResponse xmlns="http://mastercard.com/sd/pc2/service">
         <cancelRequestStatus>
            <purchaseRequestId>1480449</purchaseRequestId>
            <approvalSuccessful>true</approvalSuccessful>
            <errorMessage xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
         </cancelRequestStatus>
         <cancelRequestStatus>
            <purchaseRequestId>1480450</purchaseRequestId>
            <approvalSuccessful>true</approvalSuccessful>
            <errorMessage xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
         </cancelRequestStatus>
         <errorMessage xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
      </cancelPurchaseRequestsResponse>
   </soapenv:Body>
</soapenv:Envelope>
```

#### Sample Response with BlockPurchaseRequest as true {#sample-response-with-blockpurchaserequest-as-true}

```xml
<soapenv:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
	<soapenv:Body>
		<cancelPurchaseRequestsResponse	xmlns="http://mastercard.com/sd/pc/service"	xmlns:ns2="http://mastercard.com/sd/pc2/service">
			<cancelRequestStatus>
				<purchaseRequestId>28077440</ns2:purchaseRequestId>
				<approvalSuccessful>true</ns2:approvalSuccessful>
				<errorMessage xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
			</cancelRequestStatus>
			<errorMessage xsi:nil="true"	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
		</cancelPurchaseRequestsResponse>
   </soapenv:Body>
</soapenv:Envelope>
```

