# Visa Direct request to pay

\
Start a Project](https://developer.visa.com/portal/#users/new) \
API Overview](https://developer.visa.com/capabilities/visa-direct-request-to-pay)

# Request Control

## Request Control Remove Block  v1 - Latest

This API is used to remove the block applied on creditor/payee in the past.

### Request

##### path Parameters

|     |     |
| --- | --- |
| blockReferenceId<br>required | string <= 255 characters <br>Block Reference Id is the unique identifier of a block.<br>Example: 1166859742793422 |

##### header Parameters

|     |     |
| --- | --- |
| Content-Type<br>required | string <= 35 characters <br>Example: application/json |
| keyID<br>required | string <= 35 characters <br>VDP project key ID used to manage access to the Request to Pay service and identify associated encryption keys.<br>Example: 1234567890-123456 |

### Responses

#### 200
Response 200 (Empty response)

#### 400
Error response

##### Response Schema: application/json

|     |     |
| --- | --- |
| code<br>required | string <= 6 characters

Coded reason group this error response is considered part of.

|     |     |
| --- | --- |
| Value | Description |
| RC1xxx | RC1xxx codes indicate an invalid request. Typically a syntactical issue with the API request such as a missing mandatory field incorrect field formatting. |
| RC2xxx | RC2xxxx codes indicate a business validation failure. Typically, the request is syntactically correct but the request does not meet the business rules configured. For example, the debtor last name does not meet country specific validations. |
| RC3xxx | RC3xxx codes indicate an authorisation failure. The request may be syntactically correct and meet the necessary business rules but breaches an additional control or configuration in place. i.e., The request is valid but not allowed at this time. Examples of reasons for this error include attempting to retrieve R2P details unrelated to the entity calling the retrieve request to pay API or submitting a B2C request when only configured for P2P requests. |
| RC3001 | Authorisation failure: The request is syntactically correct but cannot be accepted by Visa at this time as a result of an active block control. |
| RC3002 | Authorisation failure: The request is syntactically correct but cannot be accepted by Visa at this time as a result of velocity/frequency control. |
| RC4xxx | RC4xxx codes indicate an entity in the request to pay transaction is unknown. The request involves an entity that is not known or cannot be resolved. For example, the mobile number given to route the R2P to is not known to the organisation with responsibility for resolving the number to a debtor - whether that be Visa or another organisation depending on the service configuration and request to pay transaction. |
| RC5xxx | Server Errors. May be seen as a result of errors internal to the processing system. |

Example: "RC1000" |
| creationDateTime<br>required | string <date-time> <br>The creationDateTime field indicates when this message leg was created. It is set by the party that prepares the payload.<br>Example: "2020-12-17T09:30:47Z" |
| message<br>required | string<br>Example: "Data in the request is missing or invalid" |
| requestMessageId<br>required | string <= 35 characters <br>The requestMessageId mapped across from the callers request. Note that where Visa cannot process a request sufficiently to obtain a requestMessageId, this field will be populated with using a Visa generated Id prefixed with ERR.<br>Example: "GG9983636387737JH" |
| responseMessageId<br>required | string <= 35 characters <br>Unique point-to-point ID specified by the responder to an API request to support message reconciliation. When Visa is responding to a request the value is a unique id generated by Visa. When an entity is sending the API response, this value is generated by their system.<br>Example: "BB123454435JH" |
| details | Array of objects<br>Additional details on specific fields that triggered the error response where relevant. |
| Array

|     |     |
| --- | --- |
| field<br>required | string<br>The field from the payload related to the described issue.<br>Example: "$.requestMessageId" |
| reason<br>required | string<br>Additional information on why this field is causing the issue outlined by the error code.<br>Example: "does not match the regex pattern" | 
 
```json
{"code": "RC2000",

"details": [{"field": "blockReferenceId", "reason": "Invalid Value"}],

"message": "Business Validation Failure",

"creationDateTime": "2020-12-17T09:30:48Z",

"requestMessageId": "ad244fssx6b43188f7ce5d5f93471db",

"responseMessageId": "DF3287943984732SH"
}
```
