Guarantee Vault Platform Guarantor API

Download OpenAPI specification:Download

The Guarantee Vault Platform API

Introduction

In the normal course of business, especially within the project business (e.g. construction) an applicant will need to arrange for a guarantee to be issued in favor of a beneficiary (normally its customer or buyer). The applicant will do this through a Guarantor (financial institution) that will issue the guarantee contract and be obligated by its terms. Today's challenge is that the storage of guarantees is decentralized while the guarantee related process is manual and paper based. The Guarantee Vault Platform seeks to create a centralized digital register that replaces the issued paper guarantee with its digital version. The digital guarantee would be issued by the guarantor on the GVP register and would retain the same legal authority as that held by the paper guarantee today.

GVP API looks to improve efficiency and increase transparency by replacing the decentralized paper process today with a centralized digital one that puts all market participants on the same digital page.

Problem | Solution – Putting participants on the same “digital page”

System Overview

At heart, in its simplest form, the system allows:

  • Applicants to request the issuance of digital guarantees
  • Guarantors to accept and issue digital guarantees to beneficiaries
  • Post issuance, the system allows applicants and beneficiaries to make certain requests (changes) to the issued guarantee has highlighted below.
    • Issuance – Applicant only
    • Amendment – Applicant only
    • Release – Both Applicant & Beneficiary
    • Claim – Beneficiary only

Workflow

Glossary

Term/AcronymDefinition
Access TokenA credential that is used by an application to access an API. It informs the API that the bearer of the token has been authorized to access the API and perform specific actions specified by the scope that has been granted. In the case, Access Tokens are formed as JSON Web Tokens. They should be transmitted to the API as a Bearer credential in an HTTP Authorization header.
APIApplication Programming Interface
ApplicantThe entity whose payment or performance is secured.
BeneficiaryThe entity to which the guarantee is issued.
client_idA unique ID determining the subject identified by Oauth/OpenID Connect.
CompanyRefers to a corporate entity
Corporate GuaranteeCorporate Guarantee is a guarantee in which a corporation agrees to be responsible for the financial obligations of, or the performance of, contractual obligations of another party (usually its subsidiary) in the event that the other party fails to discharge his financial obligations or perform the contractual obligations.
DVSDigital Vault Service GmbH company
Financial InstitutionRefers to both banks and insurance companies
Guarantee

An irrevocable payment obligation of a financial institution. It serves to secure certain contractually agreed performance, warranty and/or payment obligations of the parties to the trade contracts. Payment is made on demand. The term “Guarantee” when used in this document shall refer to all of the previously defined instruments namely:

  1. Bank Guarantee
  2. Surety Bond (“Bürgschaft”)
  3. Standby Letter of Credit
  4. Corporate Guarantee
GuarantorThe entity providing the guarantee, namely a financial institution e.g. Bank, Insurance Company, Corporate.
GVPGuarantee Vault Platform (a product under DVS)
GVP RegisterThe electronic register where the guarantor issues a new guarantee or posts an issuance action / event. Records made available on the GVP register are legally binding as per the terms of the guarantee contract once they become accessible by other transaction party(ies).
JWKS URLThe URL where a Relying Party presents new JSON Web Key Sets to the GVP authorization Service without having to upload the key sets manually via the GVP Web admin GUI.
JWT tokenJSON Web Tokens. An open, industry standard RFC 7519 method for representing claims securely between two parties. You may decode well-formed JWTs at JWT.io to view their claims.
Post Issuance Request

Refers to any requests coming after issuance of a guarantee from the applicant or beneficiary to the guarantor including:

  • Amendment
  • Reduction
  • Extension
  • Claim
  • Close
  • Extend-or-pay
  • Re-Assignment
  • Release
private_key_jwtPart of the cryptographic keypair that can be used to sign tokens that other parties can validate with the public key.
Refresh TokenA special kind of token that can be used to obtain a renewed Access Token. It is useful for renewing expiring Access Tokens without interrupting the integration. Using the Refresh Token, the Relying Partner can request a new Access Token at any time. Refresh Tokens can be renewed each time a new access token is requested.
Relying Party (RP) The client application that supports OAuth 2.0 and relies on the OpenID provider to authenticate the end user and request claims about that user. In this case, it's the Guarantors system integrating with GVP.
Standby Letter of Credit (SBLC)A lender's guarantee of payment to an interested third-party in the event the lender’s client who requested the SBLC defaults on an agreement.
Surety Bond (“Bürgschaft”)

A surety bond or surety (“Bürgschaft” in Germany) is a promise by a financial institution to pay one party(the obligee) a certain amount if a second party (the principal) fails to meet some obligation, such as fulfilling the terms of a contract. The surety bond protects the obligee against losses resulting from the principal's failure to meet the obligation.

Surety bonds are usually validity type “Unlimited”, not payable on first demand and are a standard in Germany.

Note: the surety bond (“Bürgschaft”) as such is regulated under the German Civil Code (“BGB”).

Unique Customer IdThe guarantors unique Customer Id for the applicant in their proprietary system.
Unlimited ValidityA guarantee for which the expiry is open-ended, i.e. it does not have a fixed expiry date.

Getting Started

With all participants using the same platform and rules, GVP will allow for a more streamlined end to end process. Once the guarantor validates, approves and issues the guarantee, the applicant will have the possibility to make it immediately available to the beneficiary via GVP. The beneficiary at that point (whether registered with GVP or not) will then have access to the guarantee in GVP with the possibility to view details or even print the guarantee if required.

Although GVP will be available through a user interface, the majority of participants will interact with GVP using APIs to their proprietary in-house systems. This document will detail the API specifications for Guarantors.

Authentication

Security Scheme Type OAuth2
Client OAuth Flow - RFC6749 Section 4.4 Authorization URL: https://vault/.../oauth/token*

Scopes

Name Description
amendment:manage OpenID Connect scope for managing amendment requests
amendment:view OpenID Connect scope for viewing amendment requests
guarantee:manage OpenID Connect scope for managing guarantees
guarantee-request:manage OpenID Connect scope for managing guarantee-requests
guarantee-request:view OpenID Connect scope for viewing guarantee-requests
guarantee:view OpenID Connect scope for viewing guarantees
notification:manage OpenID Connect scope for managing notifications
notification:view OpenID Connect scope for viewing notifications
release:manage OpenID Connect scope for managing release requests
release:view OpenID Connect scope for viewing release requests
claim:manage OpenID Connect scope for managing claim requests
claim:view OpenID Connect scope for viewing claim requests

Authentication process

Relying Party will authenticate using its client_id (created during registration) and the private_key_jwt (according to OpenID Connect Core 1.0 chapter 9).

During the authentication process the Relying Party should generate a JWT token as described in RFC7523 section 2.2 and sign it using their private key and the RS256 algorithm (RFC7518 section 3.1).

If the Relying Party has been registered with "JWKS URL" option, the client developers should implement the corresponding endpoint on the guarantors side that returns public key(s) used for the verification. Then implementation should be done according to RFC7517 (page 10).

API Service account registration

Company admin users can create service accounts for a Relying Party. GVP system will generate a client_id for the new service account and then, the company admin will choose an application name (an informative label) and select the method to transmit the client's public key or certificate. This could be done via:

  1. JWKS URL endpoint (preferred)
  2. Manual file import
  3. Generating a keypair on the authorization server

The keypair will be required for the verification process. The preferred option for key handling is using the JWKS URL.

Using JWKS URL, the new keypairs will be downloaded from the client's JWKS endpoint. The other methods of communicating key-pairs will involve a manual step where company admin user re-imports the new key or certificate.

Authorization process overview
Overview of the authentication process.

Access token expiration

  • Access token - expires in 1 hour
  • Refresh token - expires in 2 hours

When the access token expires, the Relying Party shall use the refresh token in order to get a new access token or repeat the authentication process from the beginning.

Participants should implement this functionality or use any libraries that already provide a refresh token functionality “out of the box”.

Service errors

Error object specification based on RFC7807

Errors that return an error object will always return a JSON object with attributes as specified below.

  • type - string

    • A URI reference [RFC3986] that identifies the problem type. This specification encourages that, when dereferenced, it provide human-readable documentation for the problem type (e.g., using HTML [W3C.REC-html5-20141028]). When this member is not present, its value is assumed to be about:blank.
  • title - string

    • A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization (e.g., using) proactive content negotiation; see [RFC7231], Section 3.4).
  • status - number

    • The HTTP status code ([RFC7231], Section 6) generated by the origin server for this occurrence of the problem.
  • detail - string

    • A human-readable explanation specific to this occurrence of the problem.
  • instance - string

    • A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.

Scope of the API

This API will cover the following workflow actions / scenarios

IDACTIONDESCRIPTION
1Guarantee RequestReceipt of guarantee request (Applicant → GVP → Guarantor)
2Guarantee IssuanceSend guarantee issuance notice (Guarantor → GVP → Applicant & Beneficiary)
3Guarantee ReturnSend guarantee request back (Guarantor → GVP → Applicant)
4Amendment RequestReceipt of amendment request (Applicant → GVP → Guarantor)
5Amendment IssuanceSend amendment notice (Guarantor → GVP → Applicant & Beneficiary)
6Amendment ReturnSend amendment request back (Guarantor → GVP → Applicant)
7Claim RequestReceipt of claim request (Beneficiary → GVP → Guarantor)
8Claim IssuanceSend claim notice (Guarantor → GVP → Applicant & Beneficiary)
9Claim ReturnSend claim request back (Guarantor → GVP → Beneficiary)
10Release RequestReceipt of release request (Applicant or Beneficiary → GVP → Guarantor)
11Release IssuanceSend release notice (Guarantor → GVP → Applicant & Beneficiary)
12Release ReturnSend release request back (Guarantor → GVP → Applicant or Beneficiary)
13Close IssuanceSend close notice (Guarantor → GVP → Applicant & Beneficiary)
14Certificate of Authenticity reportRetrieve certificate of authenticity report for guarantee (Guarantor)

API Usage

  • The API is intended for usage with a system that usually receives incoming data either in a queue or batch-based manner.
  • The API assumes that the consumer of the API has a good understanding of the various steps in handling bank guarantees.
  • The interaction of the API is based around an end-point that presents notifications.
  • Notifications are references to new or changed business objects (e.g. guarantee request / issuance and post-issuance events such as amendments, releases, and claims),
  • These business objects may include links related to file resources.
  • The referenced business objects are expected to be downloaded and persisted in the client’s system, after which the notifications are “acknowledged”.
  • The objects are available even after being acknowledged, but will never change without a notification.
  • In the Guarantors system, decisions affecting the various business entities are made, and these are posted back into the GVP system as HTTP-POST-requests.
  • Error/successes are being transmitted back to the client via the HTTP response.
  • Successful transactions shall also appear listed in the notifications.
  • Use ISO-8601 date format for all business-related dates in requests/responses.
    Business-related dates examples: Issuance Date, Expiry Date, Reference Date, Reference Expiry Date, Release Date etc.
  • Use ISO-8601 datetime format for all system-generated dates in requests/responses.
    System-generated dates examples: Decline date, Request Date, File Uploaded Date, Notification Creation Date etc.
  • All system-generated dates will be returned as datetimes in UTC
  • The maximum size permitted for uploaded files is 10MB
  • The maximum size allowed for requests(multipart/form-data or application/json) is 21MB

Setting up your account

Identification of incoming applications

  • Prior to receiving any guarantee requests from a specific applicant, the applicant admin user must submit a “connection request” to the guarantor admin via the GVP web UI.
  • On accepting the “connection request” on the GVP web UI the guarantor admin will be prompted to provide their Unique Customer Id for the applicant in question
  • When receiving guarantee requests from applicants via the API, GVP shall dynamically add this unique Customer Id to the incoming request allowing the guarantor to immediately identify the applicant in their proprietary system.
On a connection request, the guarantor shall have the possibility to provide their unique Customer Id for a specific applicant
Once a connection is established, the guarantor participant shall also have the possibility to edit the unique “Customer Id”

The API Lifecycle

  1. The applicant sends guarantee request to GVP
  2. GVP dynamically adds guarantor’s unique Customer Id to the request
  3. As the guarantor’s system polls the notification endpoint, the guarantee request shall be listed in the notifications.
  4. The guarantor shall download the guarantee request and referred attachments.
  5. It is expected that the data shall be persisted in the Guarantors proprietary system for financial Guarantees.
  6. The guarantor shall process the request at which time it has the following options:
    1. Return the request to the applicant
      • In this case the guarantor shall provide a reason for the return
      • The applicant shall have the possibility to edit and resubmit the request to the guarantor
      • In these cases where the request has been subsequentially re-sent to the guarantor the status shall be display as RESUBMITTED
    2. Issue the guarantee as requested by the applicant
      • On issuance the guarantor shall provide:
        1. The guarantor unique reference for the guarantee
        2. The issuance date
        3. The guarantee contract
      • The guarantor shall have the possibility to submit the guarantee contract as:
        1. Attached file (file types allowed to be confirmed)
        2. HTML text with format and images (to be confirmed)
    3. If the guarantor issues the guarantee, the records on the GVP central register are adjusted to reflect the issuance
    4. The applicant and beneficiary are notified and shall have access to the digital guarantee on the GVP register. The newly issued guarantee shall also appear listed in the notifications of the guarantor.

    Post-issuance

    Post issuance events are actions occurring on the guarantee after it has been issued. These include but are not limited to the following:

    • Amendment
    • Claim
    • Close
    • Release

    Please refer to section “Scope of the API” for more information on post-issuance requests

Notification Webhooks

As well as manually polling the notification API, any API Client can subscribe to notification events in the GVP system through Webhooks.

Configuration

Company admin user will have an option to configure the following webhook parameters for the API client:

  • Payload URL - endpoint URL that will receive the webhook POST requests (will be exposed from the client side)
  • Content Type - application/json or application/x-www-form-urlencoded
  • Secret - the secret that will be used for HMAC signature generation(see details below)
  • Activate flag - for enabling/disabling webhook
  • Notification types - the notification types that the client is interested in (GUARANTEE_REQUEST, GUARANTEE, AMENDMENT, RELEASE, CLAIM, CLOSE)
  • Version - GVP API version that API client uses (V0).

Usage

The HMAC signature will allow the API client to ensure that POST requests sent to the Payload URL are from GVP.

GVP will calculate a signature (based on a secret, the notification payload and the `HMAC SHA256` algorithm) and include it into X-Vault-Signature header in the webhook POST request as Base64-encoded hex value. The Client should implement the signature verification for these requests.

There are no retries of failed webhook deliveries and no API for listing or retrieving failed webhook events.

Therefore, the client service that exposes an endpoint for webhooks (see Payload URL) must be highly available. In case of any issues/maintenance on client service, API client should itself request/poll /v0/notifications/new endpoint (provided by GVP) in order to get missed notifications.

The notifications received through the webhook mechanism should still be acknowledged through the Acknowledge endpoint after being persisted by the Client API.

Exceptions/Error handling

When processing the requests to the API, different errors and exceptions can occur. The error states are listed in each request.

Most of GVP errors can be found on https://api-docs.guarantee-vault.com/errors/ErrorResponses.html

title field in response body displays exception type

type field in response body points to specific error description. For example, https://api-docs.guarantee-vault.com/errors/ErrorResponses.html#InvalidGuaranteeParticipantException

Questions

What is the purpose of the explicit Acknowledge function?

The explicit “Acknowledge” is required as the GVP system needs confirmation that each system has received the expected data.

When an Acknowledge is made by the client to GVP, GVP assumes that client received the data correctly and that it has been securely persisted into its proprietary system.

Without this explicit acknowledge, it is impossible for GVP to be certain that there were no technical difficulties and that the data was correctly received by the client’s system.

Will reporting of the items be provided via API?

Currently this is not within the scope of the API however this will be made available via the GVP web UI.

Support / Contact

If there are any questions regarding the API of the GVP system please contact us at [email protected].

Changelog

This changelog lists all additions and updates to the Guarantee Vault API, in chronological order. Changes can be in the following categories:

  • [added]: Added fields, endpoints or functionality.
  • [changed]: Changes to existing data models.
  • [removed]: Removed fields or functionality.

20. November 2023

  • [added] Field governingLawSubdivision for specifying the Subdivision of a Governing Law Country in a Guarantee.
  • [changed] Field placeOfJurisdiction in a Guarantee can only be filled if governingLaw is filled.
  • [changed] Field deliveryAddress in a Guarantee can also be filled optionally if APPLICANT, BENEFICIARY or OBLIGOR was selected to capture delivery details.
  • [changed] Field deliveryAddress in a Guarantee increased to 780 characters.
  • [removed] Field additionalAttachmentsBeneficiary removed from issuance request and response models (guarantee and post-issuance workflows).

09. October 2023

  • [changed] Limit all issuance reference fields (issuance.ref) to 140 characters (guarantee, amendment, claim, release).

04. September 2023

  • [added] Field sender in Retrieve Release Request and Retrieve Claim Request.

24. July 2023

  • [added] Attachment visibility options for Guarantee Issuance, Release Issuance and Claim Issuance.
  • [changed] Amendment Issuance files: minItems: 0 and maxItems: 10, not mandatory.

05. June 2023

  • [removed] expiry endpoint and data models.

Notifications

The notifications gives the system a list of data of various types. The client should GET the document and referenced file resources. When the client is certain that the data is persisted to its system, a call to the Acknowledgement should be made.

The various resources will be available until they are explicitly acknowledged.

New Notifications

Retrieve up to limit un-acknowledged notifications from the notification inbox. This operation can be called either with or without a notification type, if type is omitted you will receive notifications from all channels/types. The latter is the suggested default, unless integration reasons dictate otherwise.

Although the requesting client is free to acknowledge at any time soon after receiving the notification, it is preferable that the object is retrieved before doing so.

query Parameters
type
string
limit
string
Default: 5

Responses

Response samples

Content type
application/json
{}

Acknowledge

Marks the notification as received, and removes it from the notification inbox.

Although the requesting client is free to acknowledge at any time soon after receiving the notification, it is preferable that the object is retrieved before doing so.

path Parameters
notificationId
required
string

Responses

Response samples

Content type
application/json
{
  • "notificationId": "2d591c23-85b1-4e8c-a6bd-74d89f8955c5",
  • "status": "acknowledged"
}

Reject Notification

Marks the notification as rejected, saves the rejection reason and removes it from the notification inbox.

Although the requesting client is free to reject at any time soon after receiving the notification, it is preferable that the object is retrieved before doing so.

path Parameters
notificationId
required
string
Request Body schema: application/json
reason
required
string <= 1000 characters

Contains the reason for rejecting the notification

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "notificationId": "2d591c23-85b1-4e8c-a6bd-74d89f8955c5",
  • "reason": "string",
  • "status": "acknowledged"
}

Guarantee Request

Guarantee Request

Retrieve Guarantee Request

Fetch up-to-date copy of the specified guarantee request.

path Parameters
guaranteeRequestId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "status": "REQUESTED",
  • "guaranteeRequestId": "ca6dede1-2b1d-49f0-9c04-ba7aa9df5986",
  • "instrument": "BANK_GTEE",
  • "obligor": {
    },
  • "applicant": {
    },
  • "guarantor": {
    },
  • "beneficiary": {
    },
  • "applicantRef": "CAGH0000345F",
  • "formInstrument": "DIRECT",
  • "guarantorDetailsSpecifiedBy": "APPLICANT",
  • "guaranteeType": "ADVANCE_PAY",
  • "guaranteeTypeOther": "Special Warranty Guarantee",
  • "guaranteeWording": "WORDING_BENEFICIARY",
  • "guaranteeWordingOther": "Other guarantee wording",
  • "governingLaw": "DE",
  • "governingLawSubdivision": "Bavaria",
  • "placeOfJurisdiction": "Munich",
  • "nominalAmount": {
    },
  • "applicableRule": "ISPR",
  • "applicableRuleOther": "Under German Jurisdiction",
  • "validity": "LIMITED",
  • "expiryDate": "2020-09-23",
  • "expiryCondition": "Expiry condition",
  • "referenceType": "CONTRACT",
  • "referenceDate": "2020-07-23",
  • "referenceExpiryDate": "2020-07-30",
  • "contractNumber": "XS0000002334",
  • "contractAmount": {
    },
  • "contractCoverage": "17.5",
  • "instrumentPurpose": "DELIVER & INSTALL OF CEILING PANELS X 5",
  • "deliveryType": "DIGITAL",
  • "gvpDelivery": "APPLICANT_ONLY",
  • "deliverTo": "APPLICANT",
  • "deliveryAddress": "Company GmbH industrial boilers BU1, Maximilianstrasse 105, Schwäbisch Gmünd, Baden-Württemberg, DE",
  • "deliveryMethod": "OTHR",
  • "deliveryMethodDetails": "Additional Information delivery",
  • "comments": "Additonal comment on the Guarantee",
  • "guaranteeText": "Guarantee sample text",
  • "guaranteeFiles": [],
  • "otherAttachments": [],
  • "language": "en",
  • "sent": {
    },
  • "declined": {
    },
  • "correspondentGuarantor": {
    },
  • "approvedBy": "Approved by John Doe",
  • "demandIndicator": "NMLT",
  • "charges": "Charges"
}

Issue Guarantee for Guarantee Request

Issue a guarantee for the specified guarantee request.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

path Parameters
guaranteeRequestId
required
string
Request Body schema: multipart/form-data
required
object (IssueGuaranteeRequest)
issuedGuaranteeFiles
required
Array of strings <binary> = 1 items

The Guarantee file should be supplied here. Currently only pdf files are supported.

additionalAttachments
Array of strings <binary> [ 0 .. 10 ] items

Additional Attachments visible for Applicant and Beneficiary

Issuer might provide extra information related to the guarantee(release letter templates, signatory book, etc) Can be multiple files.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
additionalAttachmentsApplicant
Array of strings <binary> [ 0 .. 10 ] items

Additional Attachments visible for Applicant

Issuer might provide extra information related to the guarantee(release letter templates, signatory book, etc) Can be multiple files.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{}

Return Guarantee Request to Applicant, for the Applicant for refine it

Return the specified Guarantee Request to Applicant.

A notification of the declined guarantee request is sent to the applicant, with the option to re-apply after correcting any issues found with the guarantee request.

path Parameters
guaranteeRequestId
required
string <uuid>
Request Body schema: application/json
reason
required
string <= 1000 characters

Contains guarantors reason for returning the request

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "guaranteeRequestId": "ca6dede1-2b1d-49f0-9c04-ba7aa9df5986",
  • "date": "2019-08-24T14:15:22Z",
  • "reason": "string"
}

Guarantee

Guarantee

Retrieve Guarantees

Retrieve Guarantees up to limit for specified page. The response can filtered by applicantRef and issuerRef

query Parameters
applicantRef
string
issuerRef
string
page
string
Default: 0
limit
string <= 50
Default: 5

Responses

Response samples

Content type
application/json
{
  • "guarantees": [
    ]
}

Create and Issue Guarantee

Issue a guarantee directly without a guarantee request.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

Request Body schema: multipart/form-data
required
object (IssueGuarantee)
issuedGuaranteeFiles
required
Array of strings <binary> = 1 items

The Guarantee file should be supplied here. Currently only pdf files are supported.

additionalAttachments
Array of strings <binary> [ 0 .. 10 ] items

Additional Attachments visible for Applicant and Beneficiary

Issuer might provide extra information related to the guarantee(release letter templates, signatory book, etc) Can be multiple files.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
additionalAttachmentsApplicant
Array of strings <binary> [ 0 .. 10 ] items

Additional Attachments visible for Applicant

Issuer might provide extra information related to the guarantee(release letter templates, signatory book, etc) Can be multiple files.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{
  • "status": "ISSUED",
  • "contractNumber": null,
  • "guaranteeId": "ed62b7ef-5f7e-440e-ac76-46a77832e008",
  • "instrument": "BANK_GTEE",
  • "obligor": {
    },
  • "applicant": {
    },
  • "guarantor": {
    },
  • "beneficiary": {
    },
  • "applicantRef": null,
  • "formInstrument": "DIRECT",
  • "guaranteeType": "ADVANCE_PAY",
  • "guaranteeTypeOther": "Special Warranty Guarantee",
  • "guaranteeWording": null,
  • "guaranteeWordingOther": null,
  • "governingLaw": null,
  • "governingLawSubdivision": null,
  • "placeOfJurisdiction": null,
  • "nominalAmount": {
    },
  • "applicableRule": null,
  • "applicableRuleOther": null,
  • "validity": "LIMITED",
  • "expiryDate": "2020-09-23",
  • "expiryCondition": "Expiry condition",
  • "referenceType": null,
  • "referenceDate": null,
  • "referenceExpiryDate": null,
  • "contractAmount": null,
  • "contractCoverage": null,
  • "instrumentPurpose": null,
  • "deliveryType": "DIGITAL",
  • "gvpDelivery": "APPLICANT_BENEFICIARY",
  • "deliverTo": null,
  • "deliveryAddress": null,
  • "deliveryMethod": null,
  • "deliveryMethodDetails": null,
  • "comments": null,
  • "guaranteeText": null,
  • "guaranteeFiles": [ ],
  • "otherAttachments": [ ],
  • "language": null,
  • "issuance": {},
  • "correspondentGuarantor": null,
  • "approvedBy": null,
  • "demandIndicator": null,
  • "charges": null
}

Retrieve Guarantee

Up-to-date copy of the specified guarantee. The retrieved guarantee can be in any state.

path Parameters
guaranteeId
required
string

Responses

Response samples

Content type
application/json
{
  • "status": "REQUESTED",
  • "contractNumber": "XS0000002334",
  • "guaranteeId": "ed62b7ef-5f7e-440e-ac76-46a77832e008",
  • "instrument": "BANK_GTEE",
  • "obligor": {
    },
  • "applicant": {
    },
  • "guarantor": {
    },
  • "beneficiary": {
    },
  • "applicantRef": "CAGH0000345F",
  • "formInstrument": "DIRECT",
  • "guarantorDetailsSpecifiedBy": "APPLICANT",
  • "guaranteeType": "ADVANCE_PAY",
  • "guaranteeTypeOther": "Special Warranty Guarantee",
  • "guaranteeWording": "WORDING_BENEFICIARY",
  • "guaranteeWordingOther": "Other guarantee wording",
  • "governingLaw": "DE",
  • "governingLawSubdivision": "Bavaria",
  • "placeOfJurisdiction": "Munich",
  • "nominalAmount": {
    },
  • "applicableRule": "ISPR",
  • "applicableRuleOther": "Under German Jurisdiction",
  • "validity": "LIMITED",
  • "expiryDate": "2020-09-23",
  • "expiryCondition": "Expiry condition",
  • "referenceType": "CONTRACT",
  • "referenceDate": "2020-07-23",
  • "referenceExpiryDate": "2020-07-30",
  • "contractAmount": {
    },
  • "contractCoverage": "17.5",
  • "instrumentPurpose": "DELIVER & INSTALL OF CEILING PANELS X 5",
  • "deliveryType": "DIGITAL",
  • "gvpDelivery": "APPLICANT_ONLY",
  • "deliverTo": "APPLICANT",
  • "deliveryAddress": "Company GmbH industrial boilers BU1, Maximilianstrasse 105, Schwäbisch Gmünd, Baden-Württemberg, DE",
  • "deliveryMethod": "OTHR",
  • "deliveryMethodDetails": "Additional Information delivery",
  • "comments": "Additonal comment on the Guarantee",
  • "guaranteeText": "Guarantee sample text",
  • "guaranteeFiles": [],
  • "otherAttachments": [],
  • "language": "en",
  • "issuance": {},
  • "correspondentGuarantor": {
    },
  • "approvedBy": "Approved by John Doe",
  • "demandIndicator": "NMLT",
  • "charges": "Charges"
}

Guarantee Amendment

Guarantee Amendment

Retrieve Amendment Request

Up-to-date copy of the specified amendment. The amendment can be in any state.

path Parameters
guaranteeId
required
string
amendmentRequestId
required
string

Responses

Response samples

Content type
application/json
{
  • "amendmentRequestId": "f62d9c3e-1bd6-4c13-9f52-d1b5092380b3",
  • "guaranteeId": "ed62b7ef-5f7e-440e-ac76-46a77832e008",
  • "status": "REQUESTED",
  • "originator": "APPLICANT",
  • "nominalAmount": {
    },
  • "applicant": {
    },
  • "beneficiary": {
    },
  • "validity": "LIMITED",
  • "expiryDate": "2020-09-23",
  • "expiryCondition": "Expiry condition",
  • "referenceType": "CONTRACT",
  • "guaranteeType": "ADVANCE_PAY",
  • "guaranteeTypeOther": "Special Warranty Guarantee",
  • "guaranteeWording": "WORDING_BENEFICIARY",
  • "guaranteeWordingOther": "Other guarantee wording",
  • "referenceDate": "2020-07-23",
  • "referenceExpiryDate": "2020-07-30",
  • "contractNumber": "XS0000002334",
  • "contractAmount": {
    },
  • "instrumentPurpose": "DELIVER & INSTALL OF CEILING PANELS X 5",
  • "details": {
    },
  • "bankInformation": "some useful information from Corporate X",
  • "guaranteeText": "Guarantee sample text",
  • "guaranteeFiles": [],
  • "attachments": [],
  • "issuance": {},
  • "sent": {
    },
  • "declined": {
    },
  • "approvedBy": "Approved by John Doe",
  • "governingLaw": "DE",
  • "governingLawSubdivision": "Bavaria",
  • "placeOfJurisdiction": "Munich",
  • "demandIndicator": "NMLT",
  • "charges": "Charges",
  • "deliverTo": "APPLICANT",
  • "deliveryAddress": "Company GmbH industrial boilers BU1, Maximilianstrasse 105, Schwäbisch Gmünd, Baden-Württemberg, DE",
  • "deliveryMethod": "OTHR",
  • "deliveryMethodDetails": "Additional Information delivery"
}

Issue Amendment Request

Amendments are issued after processing amendment requests sent in by the Applicant or Beneficiary. The Amendment Request contains details which should render an updated Guarantee Document, which is sent in on the issuance of the amendment.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

path Parameters
guaranteeId
required
string
amendmentRequestId
required
string
Request Body schema: multipart/form-data
required
object (IssueAmendmentRequest)
issuedGuaranteeFiles
Array of strings <binary> [ 0 .. 10 ] items

The Guarantee files visible for Applicant and Beneficiary should be supplied here.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

issuedGuaranteeFilesApplicant
Array of strings <binary> [ 0 .. 10 ] items

The Guarantee files visible for Applicant should be supplied here.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{}

Return Amendment Request

Return Amendment Request

path Parameters
guaranteeId
required
string <uuid>
amendmentRequestId
required
string <uuid>
Request Body schema: application/json
reason
required
string <= 1000 characters

Reason for returning the Amendment.

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "amendmentRequestId": "f62d9c3e-1bd6-4c13-9f52-d1b5092380b3",
  • "guaranteeId": "ed62b7ef-5f7e-440e-ac76-46a77832e008",
  • "date": "2019-08-24T14:15:22Z",
  • "reason": "string"
}

Create and Issue Amendment

Create and Issue Amendment in GVP system on behalf of different participants. This makes it available for the Beneficiary.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

path Parameters
guaranteeId
required
string
Request Body schema: multipart/form-data
required
object (IssueAmendment)
guaranteeFiles
Array of strings <binary> [ 0 .. 10 ] items

Guarantee Files

If field "guaranteeWording" is set to "WORDING_APPLICANT" wording of applicant or "WORDING_BENEFICIARY" wording of beneficiary the user must either populate the field "guaranteeText" or attach file in field guaranteeFiles

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
attachments
Array of strings <binary> [ 0 .. 10 ] items

Attachments

Other information related to the request can be attached here. Can be multiple files

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
issuedGuaranteeFiles
Array of strings <binary> [ 0 .. 10 ] items

The Guarantee file visible for Applicant and Beneficiary should be supplied here. Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

issuedGuaranteeFilesApplicant
Array of strings <binary> [ 0 .. 10 ] items

The Guarantee file visible for Applicant should be supplied here. Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{}

Guarantee Release

Guarantee Release

Retrieve Release Request

Up-to-date copy of the specified release. The release can be in any state.

path Parameters
guaranteeId
required
string
releaseRequestId
required
string

Responses

Response samples

Content type
application/json
{}

Issue Release Request

Release the applicant from the guarantee.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

path Parameters
guaranteeId
required
string <uuid>
releaseRequestId
required
string <uuid>
Request Body schema: multipart/form-data
required
object (IssueReleaseRequest)
issuedReleaseFiles
Array of strings <binary> >= 0 items

The release issuance files visible for Applicant and Beneficiary should be supplied here. Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
issuedReleaseFilesApplicant
Array of strings <binary> >= 0 items

The release issuance files visible for Applicant should be supplied here.
Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{}

Return Release Request

Return Release Request back to Beneficiary

path Parameters
guaranteeId
required
string <uuid>
releaseRequestId
required
string <uuid>
Request Body schema: application/json
reason
required
string <= 1000 characters

Reason for returning the Release Request.

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "releaseRequestId": "52fa10f0-dae9-42a5-8c65-9d09b483fb63",
  • "date": "2019-08-24T14:15:22Z",
  • "reason": "string"
}

Create and Issue Release

Create and Issue Release in GVP system on behalf of different participants. This makes it available for the Beneficiary.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

path Parameters
guaranteeId
required
string
Request Body schema: multipart/form-data
required
object (IssueRelease)
supportingDocuments
Array of strings <binary> >= 0 items

Supporting Documents

Other information related to the request can be attached here. Can be multiple files

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
issuedReleaseFiles
Array of strings <binary> >= 0 items

The release issuance files visible for Applicant and Beneficiary should be supplied here.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
issuedReleaseFilesApplicant
Array of strings <binary> >= 0 items

The release issuance files visible for Beneficiary should be supplied here.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{}

Guarantee Claim

The guarantee claim enables the guarantor to retrieve the up-to-date information on the specified claim request and execute(issue) it.

Retrieve a Claim

Retrieve Claim Request.

path Parameters
guaranteeId
required
string
claimRequestId
required
string

Responses

Response samples

Content type
application/json
{}

Issue Claim Request

Claims are issued after processing claim requests sent in by the Beneficiary. The Claim Request contains details which should render an updated Guarantee Document, which is sent in on the issuance of the claim.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

path Parameters
guaranteeId
required
string
claimRequestId
required
string
Request Body schema: multipart/form-data
required
object (IssueClaimRequest)
claimAttachments
Array of strings <binary> >= 0 items

References to Guarantee Claim Issuance files from issuing party which will be visible for Applicant and Beneficiary. Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
claimAttachmentsApplicant
Array of strings <binary> >= 0 items

References to Guarantee Claim Issuance files from issuing party which will be visible for Applicant. Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{}

Return Claim Request

Return Claim Request back to Beneficiary

path Parameters
guaranteeId
required
string <uuid>
claimRequestId
required
string <uuid>
Request Body schema: application/json
reason
required
string <= 1000 characters

Reason for returning the Claim.

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "claimRequestId": "ae6cd89f-9216-4c24-8f5b-59e86a5ccecd",
  • "guaranteeId": "ed62b7ef-5f7e-440e-ac76-46a77832e008",
  • "date": "2019-08-24T14:15:22Z",
  • "reason": "string"
}

Create and Issue Claim

Create and Issue Claim in GVP system on behalf of different participants. This makes it available for the Beneficiary.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

path Parameters
guaranteeId
required
string
Request Body schema: multipart/form-data
required
object (IssueClaim)
claimFiles
Array of strings <binary> [ 0 .. 10 ] items

Claim Files

The client must either populate the Text of Claim field or attach file in field "claimFiles"

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
attachments
Array of strings <binary> [ 0 .. 10 ] items

Attachments

Other information related to the request can be attached here. Can be multiple files

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
claimAttachments
Array of strings <binary> >= 0 items

References to Guarantee Claim Issuance files from issuing party which will be visible for Applicant and Beneficiary. Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
claimAttachmentsApplicant
Array of strings <binary> >= 0 items

References to Guarantee Claim Issuance files from issuing party which will be visible for Applicant. Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{}

Guarantee Close

The guarantee close enables the guarantor to retrieve the up-to-date information on the specified close request.

Create and Issue Close

Create and Issue Close in GVP system. This makes it available for the Applicant and Beneficiary.

For detailed information about the maximum size permitted for uploaded file and for the request overall, please read API usage paragraph.

path Parameters
guaranteeId
required
string
Request Body schema: multipart/form-data
required
object (IssueClose)
issuedCloseFiles
Array of strings <binary> >= 0 items

The close issuance files visible for Applicant and Beneficiary should be supplied here.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff
issuedCloseFilesApplicant
Array of strings <binary> >= 0 items

The close issuance files visible for Applicant should be supplied here.

Allowed content types:

  • text/plain
  • application/pdf
  • application/rtf
  • application/msword
  • application/vnd.ms-excel
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.text
  • image/jpeg
  • image/png
  • image/tiff

Responses

Response samples

Content type
application/json
{}

Retrieve Close Request

Up-to-date copy of the specified close request. The close request can be in ISSUED state only.

path Parameters
guaranteeId
required
string
closeRequestId
required
string

Responses

Response samples

Content type
application/json
{}

Guarantee Reports

Provides the possibility for the guarantor to download guarantee reports generated by GVP.

Generate the Certificate of Authenticity report

Generate the Certificate of Authenticity for an existing guarantee. The report is generated in pdf format

path Parameters
guaranteeId
required
string

Responses

Response samples

Content type
application/json
{}