Preview
This is a preview of an upcoming feature. The information provided here is subject to change and may not reflect the final implementation. Please check back for updates before using in production.

# Crypto ramp providers

Crypto ramp providers facilitate the conversion from fiat currencies (e.g. USD) to non-fiat currencies (e.g. cryptocurrency), or vice versa. Card networks require ramp provider merchants to include [special indicators](#special-transaction-indicator) in their authorization requests to identify the type of ramp transaction. Merchants who have contracted third-party conversion affiliates for conversion services must also submit relevant [affiliate data](#conversion-affiliate-data) in their authorization request.

## Special transaction indicator

From **October 2024**, Visa introduced a new mandate to include special transaction indicators to increase transparency and clarify dispute rules for digital currency and NFT transactions. Those new indicators apply to all forms of non-fiat digital currencies and identify whether the purchase is for:

* **CBDC or tokenized deposit**
* **Stablecoin (fiat-backed)**
* **Blockchain native token or coin**
* **Cryptocurrency**
* **NFT**


### Code example


```
{
  (...)
  "instruction": {
      "fundsTransfer": {
          "type": "purchase",
          "purpose": "stablecoin"
      }
  }
  (...)
}
```

Relevant `"purpose"` values:

* `blockchainNativeToken`
* `crypto`
* `stablecoin`
* `nft`
* `cbdc`


## Ramp provider reference

Card networks mandate that crypto ramp merchants submit their unique identifier in every authorization. You can send this in the `merchant` object:


```
"merchant": {
    "rampProvider": {
        "reference": "123456778980"
```

Ramp provider data cannot be sent together with Payment Facilitator data.

## Conversion affiliate data

Conversion affiliates are third-party entities contracted by a ramp provider to assist in the conversion services between fiat and non-fiat currencies. Conversion affiliates of ramp providers include but are not limited to retailers, cryptocurrency exchanges, NFT marketplaces.

If the ramp provider uses conversion affiliates, they are obliged to submit the affiliate data inside the `merchant.rampProvider` object:


```
"merchant": {
    "rampProvider": {
        "reference": "123456778980",
        "conversionAffiliate": {
            "reference": "1234567890",
            "name": "Name",
            "url": "http://some-url-here.com",
            "taxReference": "987-654-4321",
            "address": {
                "countryCode": "US"
            }
        }
    }
}
```

| **Parameter** | **Required?** | **Description** | **Format** |
|  --- | --- | --- | --- |
| --- | --- | --- | --- |
| `reference` | ✅ | Unique identifier assigned to the Ramp Provider | 1-11 alphanumeric characters |
| `conversionAffiliate.reference` | ✅ | Unique identifier for the Conversion Affiliate | 1-15 alphanumeric characters |
| `conversionAffiliate.name` | ✅ | Legal or trading name of the affiliate | 1-22 alphanumeric characters and spaces |
| `conversionAffiliate.url` | ❌ | Public website URL of the affiliate | 1-255 alphanumeric characters |
| `conversionAffiliate.taxReference` | ❌ | Affiliate's tax identifier (format varies by country) | 1-20 alphanumeric characters |
| `conversionAffiliate.address.countryCode` | ✅ | Affiliate's country code in ISO 3166-1 Alpha-2 format | 2 letters (ISO 3166 Alpha-2 format) |