Network Tokens Onboarding - V1

1

Get access token

In order to get an access token please see Authentication guide.

2

Onboard an organization

Every organization needs to be registered at ‘Visa Token Services (VTS) program’ for VISA and Mastercard Digital Enablement Services (MDES) for Mastercard to receive a TRID (Token Requestor ID - unique merchant identifier at the schemes) before you can start using Network Tokens with VGS. A Token Requestor ID - TRID is used by Visa and Mastercard to provision merchant specific network tokens. Using merchants endpoint you can register for both Visa and Mastercard.

Onboard merchant (curl)
curl --location -X POST https://calm.<ENVIRONMENT>.verygoodsecurity.app/merchants \
    -H "Authorization: Bearer ${VGS_ACCESS_TOKEN}" \
    -H "Content-Type: application/json" \
    -x https://<CREDENTIALS>@<VAULT_ID>.<ENVIRONMENT>.verygoodproxy.com:8443 \
    --data-raw '{
          "dba_merchant_trade_name": "Example Company",
          "merchant_legal_name": "Example Company",
          "merchant_code": "1234",
          "company_website_url":"https://example.com",
          "acquirer_identification":"1234546",
          "acquirer_merchant_id":"123456",
          "contact_name":"John Doe",
          "contact_email":"[email protected]",
          "duns_number":"123456789",
          "vault_id":"tntabcd1234",
          "organization_id":"ACrBqp51jFkn4CCaJEX3kf9j",
          "billing_address": {
              "address1": "Powell 12345",
              "address2": "54321",
              "city": "SF",
              "region": "CA",
              "country": "US",
              "postal_code": "12345",
              "phone": "+1(408)1112233"
          }
}'

You should receive a similar response:

Successful response (example)
{
    "data": {
        "id": "MCcrYWJWqSbN1y9TXDnkvEiu",
        "merchant_legal_name": "Example Company",
        "card_networks": [
            {
                "network": "VISA",
                "created_at": "2023-05-09T11:54:16.273795",
                "updated_at": "2023-05-09T11:54:16.273795",
                "state": "COMPLETED"
            },
            {
                "network": "MASTERCARD",
                "created_at": "2023-05-09T11:54:16.273795",
                "updated_at": "2023-05-09T11:54:16.273795",
                "state": "PENDING"
            }
        ],
        "created_at": "2023-05-09T11:54:17.657088",
        "updated_at": "2023-05-09T11:54:17.659997"
    }
}

Example of failing onboarding request:

Error response (example)
{
    "errors": [
        {
            "code": "internal-server-error",
            "detail": "Something went wrong.",
            "traceId": "00000000000000000000000000000000"
        }
    ]
}

See full API documentation for the /merchants endpoint.

What's next?