CyberSource Verification API

The Verification API from CyberSource — 2 operation(s) for verification.

Operations 2

POST /risk/v1/address-verifications Verify customer address #
POST /risk/v1/export-compliance-inquiries Validate export compliance #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cybersource-verification-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cybersource-verification-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
  version: 0.0.1
  title: CyberSource Merged Spec bankAccountValidation Verification API
servers:
- url: https://apitest.cybersource.com/
tags:
- name: Verification
paths:
  /risk/v1/address-verifications:
    post:
      summary: Verify customer address
      description: This call verifies that the customer address submitted is valid.
      operationId: verifyCustomerAddress
      tags:
      - Verification
      x-devcenter-metaData:
        categoryTag: Risk_Management
      responses:
        '201':
          description: Successful response
          content:
            application/hal+json;charset=utf-8:
              schema:
                title: riskV1AddressVerificationsPost201Response
                type: object
                properties:
                  _links:
                    type: object
                    properties:
                      self:
                        type: object
                        properties:
                          href:
                            type: string
                            description: This is the endpoint of the resource that was created by the successful request.
                          method:
                            type: string
                            description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.'
                  id:
                    type: string
                    maxLength: 26
                    description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.

                      It is also appended to the endpoint of the resource.

                      On incremental authorizations, this value with be the same as the identification number returned in the original authorization response.

                      '
                  submitTimeUtc:
                    type: string
                    description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`

                      **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).

                      The `T` separates the date and the time. The `Z` indicates UTC.


                      Returned by Cybersource for all services.

                      '
                  submitTimeLocal:
                    type: string
                    description: Time that the transaction was submitted in local time. Generated by Cybersource.
                  status:
                    type: string
                    description: 'The status for the call can be:

                      - COMPLETED

                      - INVALID_REQUEST

                      - DECLINED

                      '
                  message:
                    type: string
                    description: "The message describing the reason of the status. Value can be\n  - Apartment number missing or not found.\n  - Insufficient address information.\n  - House/Box number not found on street.\n  - Multiple address matches were found.\n  - P.O. Box identifier not found or out of range.\n  - Route service identifier not found or out of range.\n  - Street name not found in Postal code.\n  - Postal code not found in database.\n  - Unable to verify or correct address.\n  - Multiple addres matches were found (international)\n  - Address match not found (no reason given)\n  - Unsupported character set\n"
                  clientReferenceInformation:
                    type: object
                    properties:
                      code:
                        type: string
                        maxLength: 59
                        description: 'Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each

                          transaction so that you can perform meaningful searches for the transaction.


                          #### Used by

                          **Authorization**

                          Required field.


                          #### PIN Debit

                          Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being

                          reversed.


                          Required field for all PIN Debit requests (purchase, credit, and reversal).


                          #### FDC Nashville Global

                          Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports.

                          '
                      comments:
                        type: string
                        maxLength: 255
                        description: 'Brief description of the order or any comment you wish to add to the order.

                          '
                      partner:
                        type: object
                        properties:
                          developerId:
                            type: string
                            maxLength: 8
                            description: 'Identifier for the developer that helped integrate a partner solution to CyberSource.


                              Send this value in all requests that are sent through the partner solutions built by that developer.

                              CyberSource assigns the ID to the developer.


                              **Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.

                              '
                          solutionId:
                            type: string
                            maxLength: 8
                            description: 'Identifier for the partner that is integrated to CyberSource.


                              Send this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.


                              **Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.

                              '
                  addressVerificationInformation:
                    type: object
                    properties:
                      addressType:
                        type: string
                        maxLength: 255
                        description: "Contains the record type of the postal code with which the address was matched.\n\n#### U.S. Addresses\nDepending on the quantity and quality of the address information provided,\nthis field contains one or two characters:\n\n- One character: sufficient correct information was provided to result in accurate matching.\n- Two characters: standardization would provide a better address if more or better\ninput address information were available. The second character is D (default).\n\nBlank fields are unassigned. When an address cannot be standardized, how the input\ndata was parsed determines the address type. In this case, standardization may indicate a street, rural route,\nhighway contract, general delivery, or PO box. \n\n#### All Other Countries\nThis field contains one of the following values:\n- P: Post.\n- S: Street.\n- x: Unknown.\n"
                      barCode:
                        type: object
                        properties:
                          value:
                            type: string
                            maxLength: 255
                            description: Delivery point bar code determined from the input address.
                          checkDigit:
                            type: number
                            maxLength: 1
                            description: Check digit for the 11-digit delivery point bar code.
                      applicableRegion:
                        type: string
                        maxLength: 255
                        description: 'Value can be

                          - Canada

                          - US

                          - International

                          The values of errorCode and statusCode mean different things depending on the applicable region.

                          Refer to the guide for more info.

                          '
                      errorCode:
                        type: string
                        maxLength: 255
                        description: 'Four-character error code returned for Canadian, US and international addresses.

                          For possible values, see Verification Services guide.

                          The meaning of the errorCode depends on value of applicableRegion.

                          '
                      statusCode:
                        type: string
                        maxLength: 255
                        description: 'Four-to-ten character status code returned for Canadian, US and international addresses.

                          For possible values, see Verification Services guide.

                          The meaning of the errorCode depends on value of applicableRegion.

                          '
                      careOf:
                        type: string
                        maxLength: 255
                        description: Care of data dropped from the standard address.
                      matchScore:
                        type: integer
                        maxLength: 1
                        description: 'Indicates the probable correctness of the address match. Returned for U.S. and Canadian addresses.

                          Returns a value from 0-9, where 0 is most likely to be correct and 9 is least

                          likely to be correct, or -1 if there is no address match.

                          '
                      standardAddress:
                        type: object
                        properties:
                          address1:
                            type: object
                            properties:
                              withApartment:
                                type: string
                                maxLength: 255
                                description: First line of the standardized address, including apartment information.
                              withoutApartment:
                                type: string
                                maxLength: 255
                                description: 'First line of the standardized address, without apartment information.

                                  Returned for U.S. and Canadian addresses.

                                  '
                          address2:
                            type: string
                            maxLength: 255
                            description: Second line of the standardized address.
                          address3:
                            type: string
                            maxLength: 255
                            description: Third line of the standardized address.
                          address4:
                            type: string
                            maxLength: 255
                            description: Fourth line of the standardized address.
                          locality:
                            type: string
                            maxLength: 255
                            description: Standardized city name.
                          county:
                            type: string
                            maxLength: 255
                            description: U.S. county if available.
                          country:
                            type: string
                            maxLength: 255
                            description: Standardized country name.
                          csz:
                            type: string
                            maxLength: 255
                            description: Standardized city, state or province, and ZIP +4 code or postal code line.
                          isoCountry:
                            type: string
                            maxLength: 255
                            description: Standardized two-character ISO country code.
                          administrativeArea:
                            type: string
                            maxLength: 255
                            description: U.S.P.S. standardized state or province abbreviation.
                          postalCode:
                            type: string
                            maxLength: 255
                            description: Standardized U.S. ZIP + 4 postal code.
                  errorInformation:
                    type: object
                    properties:
                      reason:
                        type: string
                        description: "The reason of the status. Value can be\n  - `APARTMENT_NUMBER_NOT_FOUND`\n  - `INSUFFICIENT_ADDRESS_INFORMATION`\n  - `HOUSE_OR_BOX_NUMBER_NOT_FOUND`\n  - `MULTIPLE_ADDRESS_MATCHES`\n  - `BOX_NUMBER_NOT_FOUND`\n  - `ROUTE_SERVICE_NOT_FOUND`\n  - `STREET_NAME_NOT_FOUND`\n  - `POSTAL_CODE_NOT_FOUND`\n  - `UNVERIFIABLE_ADDRESS`\n  - `MULTIPLE_ADDRESS_MATCHES_INTERNATIONAL`\n  - `ADDRESS_MATCH_NOT_FOUND`\n  - `UNSUPPORTED_CHARACTER_SET`\n  - `INVALID_MERCHANT_CONFIGURATION`\n"
                      message:
                        type: string
                        description: The detail message related to the status and reason listed above.
                      details:
                        type: array
                        items:
                          type: object
                          properties:
                            field:
                              type: string
                              description: This is the flattened JSON object field name/path that is either missing or invalid.
                            reason:
                              type: string
                              description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n"
        '400':
          description: Invalid request
          content:
            application/hal+json;charset=utf-8:
              schema:
                title: riskV1AddressVerificationsPost400Response
                type: object
                properties:
                  submitTimeUtc:
                    type: string
                    description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`

                      **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).

                      The `T` separates the date and the time. The `Z` indicates UTC.


                      Returned by Cybersource for all services.

                      '
                  status:
                    type: string
                    description: "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n"
                  reason:
                    type: string
                    description: 'The reason of the status.


                      Possible Values:

                      - `MISSING_FIELD`

                      - `INVALID_DATA`

                      '
                  message:
                    type: string
                    description: The detail message related to the status and reason listed above.
                  details:
                    type: array
                    items:
                      type: object
                      properties:
                        field:
                          type: string
                          description: This is the flattened JSON object field name/path that is either missing or invalid.
                        reason:
                          type: string
                          description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n"
        '502':
          description: Unexpected system error or system timeout.
          content:
            application/hal+json;charset=utf-8:
              schema:
                title: riskV1AddressVerificationsPost502Response
                type: object
                properties:
                  submitTimeUtc:
                    type: string
                    description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`

                      **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).

                      The `T` separates the date and the time. The `Z` indicates UTC.


                      Returned by Cybersource for all services.

                      '
                  status:
                    type: string
                    description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n"
                  reason:
                    type: string
                    description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n"
                  message:
                    type: string
                    description: The detail message related to the status and reason listed above.
      x-example:
        example0:
          summary: Verbose Request with all fields
          value:
            clientReferenceInformation:
              code: addressEg
              comments: dav-All fields
              partner:
                developerId: '7891234'
                solutionId: '89012345'
            orderInformation:
              billTo:
                address1: 12301 research st
                address2: '1'
                address3: '2'
                address4: '3'
                locality: Austin
                country: US
                administrativeArea: TX
                postalCode: '78759'
              shipTo:
                address1: '1715 oaks apt # 7'
                address2: ' '
                address3: ''
                address4: ''
                locality: SUPERIOR
                country: US
                administrativeArea: WI
                postalCode: '29681'
              lineItems:
              - unitPrice: '120.50'
                productSKU: '9966223'
                productCode: electronic
                productName: headset
                quantity: '3'
                passenger:
                  firstname: ABCD
                  lastname: DEF
            buyerInformation:
              merchantCustomerId: ABCD
          responseValue:
            addressVerificationInformation:
              matchScore: '0'
              standardAddress:
                country: US
                address1:
                  withoutApartment: 1715 Oakes Ave
                  withApartment: 1715 Oakes Ave Apt 7
                postalCode: 54880-2466
                county: Douglas
                locality: Superior
                csz: Superior WI  54880-2466
                administrativeArea: WI
                isoCountry: US
              addressType: H
              barCode:
                checkDigit: '0'
                value: '246607'
              statusCode: S99000
            clientReferenceInformation:
              code: addressEg
              comments: dav-All fields
              partner:
                developerId: '7891234'
                solutionId: '89012345'
            id: '5574744400096019003092'
            status: COMPLETED
            submitTimeUtc: '2019-05-10T07:47:20Z'
        example1:
          summary: Shipping Details not US or Canada
          value:
            clientReferenceInformation:
              code: addressEg
              comments: dav-All fields
            orderInformation:
              billTo:
                address1: 12301 research st
                address2: '1'
                address3: '2'
                address4: '3'
                locality: Austin
                country: US
                administrativeArea: TX
                postalCode: '78759'
              shipTo:
                address1: 4R.ILHA TERCEIRA,232-R/C-ESQ
                address2: ' '
                address3: ''
                address4: ''
                locality: Carcavelos
                country: PT
                administrativeArea: WI
                postalCode: '29681'
              lineItems:
              - unitPrice: '120.50'
                productSKU: '9966223'
                productCode: electronic
                productName: headset
                quantity: '3'
                passenger:
                  firstname: ABCD
                  lastname: DEF
            buyerInformation:
              merchantCustomerId: ABCD
          responseValue:
            addressVerificationInformation:
              matchScore: '6'
              standardAddress:
                country: Portugal
                address2: C Esq - R
                address1:
                  withApartment: R Ilha Terceira 232 - C Esq - R
                postalCode: 2775-796
                locality: Carcavelos
                administrativeArea: Lisboa
                isoCountry: PT
              addressType: S
              statusCode: SE600
            clientReferenceInformation:
              code: addressEg
            id: '5574744458726021803092'
            status: COMPLETED
            submitTimeUtc: '2019-05-10T07:47:26Z'
        example2:
          summary: Canadian Billing Details
          value:
            clientReferenceInformation:
              code: addressEg
              comments: dav-All fields
            orderInformation:
              billTo:
                address1: 1650 Burton Ave
                address2: ''
                address3: ''
                address4: ''
                locality: VICTORIA
                country: CA
                administrativeArea: BC
                postalCode: V8T 2N6
              lineItems:
              - unitPrice: '120.50'
                productSKU: '9966223'
                productCode: electronic
                productName: headset
                quantity: '3'
                passenger:
                  firstname: ABCD
                  lastname: DEF
            buyerInformation:
              merchantCustomerId: ABCD
          responseValue:
            addressVerificationInformation:
              matchScore: '0'
              standardAddress:
                country: CA
                address1:
                  withoutApartment: 1650 Burton Ave
                  withApartment: 1650 Burton Ave
                postalCode: V8T2N6
                locality: Victoria
                csz: Victoria BC  V8T 2N6
                administrativeArea: BC
                isoCountry: CA
              addressType: S
              statusCode: S0000
            clientReferenceInformation:
              code: addressEg
            id: '5574744407796019403092'
            status: COMPLETED
            submitTimeUtc: '2019-05-10T07:47:20Z'
        example3:
          summary: Multiple Line Items
          value:
            clientReferenceInformation:
              code: addressEg
              comments: dav-All fields
            orderInformation:
              billTo:
                address1: 12301 research st
                address2: '1'
                address3: '2'
                address4: '3'
                locality: Austin
                country: US
                administrativeArea: TX
                postalCode: '78759'
              shipTo:
                address1: PO Box 9088
                address2: ''
                address3: ''
                address4: ''
                locality: San Jose
                country: US
                administrativeArea: CA
                postalCode: '95132'
              lineItems:
              - unitPrice: '120.50'
                productSKU: '9966223'
                productCode: electronix
                productName: headset
                quantity: '3'
              - unitPrice: '10.50'
                productSKU: '9966226'
                productCode: electronic
                productName: wwrdf
                quantity: '2'
            buyerInformation:
              merchantCustomerId: QWERTY
          responseValue:
            addressVerificationInformation:
              matchScore: '0'
              standardAddress:
                country: US
                address1:
                  withoutApartment: PO Box 9088
                  withApartment: PO Box 9088
                postalCode: 95157-0088
                county: Santa Clara
                locality: San Jose
                csz: San Jose CA  95157-0088
                administrativeArea: CA
                isoCountry: US
              addressType: P
              barCode:
                checkDigit: '1'
                value: 008888
              statusCode: S90000
            clientReferenceInformation:
              code: addressEg
            id: '5574744469676022203092'
            status: COMPLETED
            submitTimeUtc: '2019-05-10T07:47:27Z'
        example4:
          summary: Apartment Number Missing or Not Found
          value:
            clientReferenceInformation:
              code: addressEg
              comments: dav-error response check
            orderInformation:
              billTo:
                address1: 6th 4th ave
                address2: ''
                locality: rensslaer
                country: US
                administrativeArea: NY
                postalCode: '12144'
              lineItems:
              - unitPrice: '120.50'
                productSKU: '996633'
                productCode: handling
                productName: qwerty
                quantity: '3'
          responseValue:
            addressVerificationInformation:
              errorCode: E420
              statusCode: S20000
            clientReferenceInformation:
              code: addressEg
            errorInformation:
              reason: APARTMENT_NUMBER_NOT_FOUND
              message: Apartment number missing or not found.
            id: '5574744502546023003092'
            status: DECLINED
            submitTimeUtc: '2019-05-10T07:47:30Z'
        example5:
          summary: Address Match Not Found
          value:
            clientReferenceInformation:
              code: addressEg
              comments: dav-error response check
            orderInformation:
              billTo:
                address1: 'Apt C '
                address2: ''
                locality: Glendale
                country: US
                administrativeArea: CA
                postalCode: '91204'
          responseValue:
            addressVerificationInformation:
              errorCode: E302
              statusCode: S00000
            clientReferenceInformation:
              code: addressEg
            errorInformation:
              reason: ADDRESS_MATCH_NOT_FOUND
              message: Address match not found.
            id: '5574744508936023403092'
            status: DECLINED
            submitTimeUtc: '2019-05-10T07:47:31Z'
      requestBody:
        content:
          application/json;charset=utf-8:
            schema:
              type: object
              properties:
                clientReferenceInformation:
                  type: object
                  properties:
                    code:
                      type: string
                      maxLength: 59
                      description: 'Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each

                        transaction so that you can perform meaningful searches for the transaction.


                        #### Used by

                        **Authorization**

                        Required field.


                        #### PIN Debit

                        Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being

                        reversed.


                        Required field for all PIN Debit requests (purchase, credit, and reversal).


                        #### FDC Nashville Global

                        Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports.

                        '
                    comments:
                      type: string
                      maxLength: 255
                      description: 'Brief description of the order or any comment you wish to add to the order.

                        '
                    partner:
                      type: object
                      properties:
                        developerId:
                          type: string
                          maxLength: 8
                          description: 'Identifier for the developer that helped integrate a partner solution to CyberSource.


                            Send this value in all requests that are sent through the partner solutions built by that developer.

                            CyberSource assigns the ID to the developer.


                            **Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.

                            '
                        solutionId:
                          type: string
                          maxLength: 8
                          description: 'Identifier for the partner that is integrated to CyberSource.


                            Send this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.


                            **Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.

                            '
                orderInformation:
                  type: object
                  properties:
                    billTo:
                      type: object
                      required:
                      - address1
                      - locality
                      - country
                      - postalCode
                      properties:
                        address1:
                          type: string
                          maxLength: 60
                          description: 'Payment card billing street address as it appears on the credit card issuer''s records.


                            #### SEPA

                            Required for Create Mandate and Import Mandate


                            #### Atos

                            This field must not contain colons (:).


                            #### CyberSource through VisaNet

                            **Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,

                            CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,

                            CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.

                            Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.

                            Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet

                            accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations

                            of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the

                            credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless

                            ASCII characters for transmission to the credit card networks.


                            #### FDMS Nashville

                            When the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,

                            it must be sent as _1 1st Street_.


                            Required if keyed; not used if swiped.


                

# --- truncated at 32 KB (126 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cybersource/refs/heads/main/openapi/cybersource-verification-api-openapi.yml