Partner Integration API (v1)

Download OpenAPI specification:Download

Wolfe Partner Integration Documentation

Wolfe Partner UI APIs - API endpoints for building front-end components.

Introduction

The Platform Partner API gives partners access to all operations required to:

  • Authenticate
  • Manage Their Funding Account.
  • Retrieve Merchant Catalog.
  • Place Orders for Gifts.
  • Redeem Gifts.

The API is organized around REST and has predictable resource-oriented URLs. Methods are invoked by either sending query parameter for GET & DELETE methods or JSON body for POST & PUT methods.

A response is returned in the form of an HTTP code.

Authentication

To get started working with the API all you need is an API key. Reach out to your account manager to obtain it. Once you have the key, it must be specified in the Header of the request as a partner-key parameter. It must be specified on all the requests, otherwise the service will return an error.

Response Format

Each response will contain following parameters in the body:

  • code - HTTP Status Code (HTTP status code of the response will be copied in the parameter).
  • message - Detailed description of the error code. For example: MISSING_PARAMETERS, PATTERN_IS_NOT_MATCHED… List of possible values that can be returned will be pre-defined.
  • data - Additional data. This will only be returned in case of successful operations. For example: for existing GET account balance response balance parameter would be returned in data .
{
    "code": 200,
    "message": "SUCCESS",
    "data": {
        "Balance": 100.15
    }
}

Pagination

For the operations that returns a list, the API supports offset pagination. This is achieved by speficying following parameters in the request:

  • limit - The maximum number of items to return per page.

  • offset - The offset of the item at which to begin the response.

Example of the request:

GET /items?limit=20&offset=100

Each successful response that returns the list of the items will additionally contain following parameters in the pagination object :

  • limit - limit passed in the request

  • offset - offset passed in the request

  • total_count - total number of items matching request criteria.

Funding Account Operations

Operations to manage funding account balances and transactions, register deposit for processing

Get Transactions

Operation is used to retrieve and filter list of all the transactions from the system performed by the partner. It supports following transaction list filters:

  • Status

  • Creation Date Range

  • Transaction reference ID in partners system.

  • Transaction ID in the platform (Note that there is also separate enpoint just for retrieving a single transaction using a transaction id).

Each transaction has 2 amounts specified:

  • Amount - Amount of the transaction performed by the partner
  • Fee - Fee charged by the platform to process the transaction

Total amount of the transaction, meaning total amount charged on partners fund account is sum of amount + fee.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
status
string
Enum: "SUCCESS" "PENDING" "REJECTED" "CONFIRMED" "ROLLBACKED" "RETURN"
Example: status=SUCCESS

Status of the transaction. If not specified will return transactions with any status.

from_date
string
Example: from_date=2022-10-25

Start date of the period when the transaction was created

to_date
string
Example: to_date=2022-11-20

End date of the period when the transaction was created

limit
integer
Default: 20
Example: limit=10

The maximum number of items to return per page.

offset
integer
Default: 0
Example: offset=20

The offset of the item at which to begin the response.

reference_id
string
Example: reference_id=411f62d0-05e0-4689-b09c-85904ef542e8

Transaction reference in the system from where it originated. For partners this could be transaction ID in their bank. For gift purchase transactions, this will be gift ID.

id
string
Example: id=1sa42e3b-4s36-6440-b0ba-0050asd2143b

Unique identifier of the transaction in fund account service

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "pagination": {
    },
  • "data": [
    ]
}

Get details of the specific transaction using the ID

Operation is used to retrieve details of the specific transaction using the ID in the platform. Unlike from GET /transactions this operation only returns single transaction details and requires specification of the platform transaction ID.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

id
required
string
Example: 1sa42e3b-4s36-6440-b0ba-0050asd2143b

Unique identifier of the transaction in the platform

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Initiate Deposit

This operation registers new pending deposit transaction to be approved by the platform admins. All transactions created from this endpoint will have status PENDING. Transactions will only be reflected on account balance once they have been approved by the platform admins.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
amount
required
integer >= 0

Amount of the transaction. Should be specified in cents. For example: if partner deposited $10 than 1000 needs to be specified in the parameter

reference_id
required
string

Transaction reference in the system from where it originated. For partners this could be transaction ID in their bank, Check number... It is recommended to use UUID or random long string as a reference id. Combination of owner (account ID) + transaction type + referrence ID must be unique in the system.

payment_method
required
string
Enum: "ACH" "WIRE" "CHECK"

Payment method used to perform the transaction

comment
string or null <= 250 characters

Additional comment about the transaction being created

Responses

Request samples

Content type
application/json
{
  • "amount": 10012,
  • "reference_id": "411f62d0-05e0-4689-b09c-85904ef542e8",
  • "payment_method": "ACH",
  • "comment": "string"
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Get Account Balance

This operation returns current balance of partners funding account in the platform.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Merchant Onboarding Submissions

Partners can use Merchant Onboarding Submissions to submit merchants for onboarding with the CLG platform. These merchants will be reviewed and if approved become available in the catalog for gifting.

Create Merchant Onboarding Submission

This operation is used to create a new merchant onboarding submission. New merchant onboarding submissions will be reviewed and approved or rejected by Wolfe's internal review process. This endpoint is only available to select partners.

Authorizations:
ApiKey
Request Body schema: application/json
business_name
required
string <= 255 characters

Name of the business for the merchant onboarding submission

contact_first_name
required
string <= 255 characters

First name of the contact at the merchant

contact_last_name
required
string <= 255 characters

Last name of the contact at the merchant

email
required
string <email> <= 255 characters

Email for the contact at the merchant

phone_number
required
string <phone> = 11 characters

Phone number for the contact at the merchant

required
object

Address for the business

website
string <url> <= 255 characters

Official website for the merchant

image
string <base64>

Base64 encoded logo for the merchant. The logo must be a valid image format (PNG, JPG, etc.) and should not exceed 2MB in size

Responses

Request samples

Content type
application/json
{
  • "business_name": "Jim's Pizza",
  • "contact_first_name": "Jim",
  • "contact_last_name": "Jones",
  • "email": "jim@jimspizza.com",
  • "phone_number": "15552341234",
  • "address": {
    },
  • "image": "data:image/png;charset=utf-8;base64,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"
}

Response samples

Content type
application/json
{
  • "code": 202,
  • "message": "SUCCESS",
  • "data": {
    }
}

Get Merchant Onboarding Submission Status

Operation is used to retrieve status of the merchant onbaording submission

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

id
required
string

Unique id of the resource to retrieve.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Merchant Catalog

Partners can use Merchant Catalog Operations to retrieve list & details of all the merchants available for them. It will return following merchant information:

  • Unique ID in the platform.
  • Name.
  • Minimum & maximum allowed gift amounts.
  • Number of locations.
  • Redemption methods available for the merchant.

Redemption Methods

The platform returns list of all the redemption methods supported for each merchant. At the moment following methods are supported:

  • EGIFT - Standard merchant eGift.
  • CARD_LINK - Connect your Visa, MasterCard or AMEX card to the gift
  • VISA - Exchange gift for prepaid Visa card
  • EXCHANGE - Exchange it for different merchant
  • SELECT MERCHANT - Select the merchant for which you want to redeem the gift. This option is only available for merchant select.

When returning redemption methods available on the specific merchant, partner API also provides configuration details for each method. Structure of the configuration is different for each method.

EGIFT configuration

EGIFT could have two types of configuration:

  • RANGE - In this case min and max values are returned
  • FIXED - In this case denomination is returned
{
"redemption_method":"EGIFT",
"configuration":{
    "type":"RANGE",
    "min":10,
    "max":50
    }
}

For the card linked redemption, the platform provides a list of cards that could be linked on the merchant. At the moment 3 types of cards could be linked on the gift:

  • VISA
  • Mastercard
  • AMEX
{
"redemption_method":"CARD_LINK",
"configuration":{
    "cards":["VISA","MC","AMEX"]
    }
}

VISA

VISA card has a minimum amount on which it can be requested.

{
"redemption_method":"VISA",
"configuration":{
    "min_amount":5
    }
}

EXCHANGE & REGIFTING

The platform does not return any configuration details for EXCHANGE or REGIFTING.

Merchant Catalog Operations

Returns list & details of merchants and their locations available for the partner.

Get Merchants

Each partner has a Merchant Catalog. It contains all the merchants that are available for them. This operation will list and filter all the merchants from partner's catalog. In other words, this endpoint provides list and information about all the merchants available for the partner.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
from_date
string

Start date of the period when the merchant was made available for the partner. In other words, date when the merchant was added in partners catalog

to_date
string

End date of the period when the merchant was made available for the partner. In other words, date when the merchant was added in partners catalog

name
string >= 2 characters
Example: name=Amaz

Filters list based on the name of the merchant. It uses like algorithm. This means that method will return all the results that will partially match specified text. Criteria must contain at least 3 characters.

is_national
boolean
Example: is_national=true

Allows to filter national brands. If true only national brands will be returned. If false only non-national brands. If not specified will return everything.

offset
integer
Default: 0
Example: offset=20

The offset of the item at which to begin the response.

limit
integer
Default: 20
Example: limit=10

The maximum number of items to return per page.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "pagination": {
    },
  • "data": []
}

Get Merchant

Operation is used to retrieve details of the specific merchant

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

id
required
string

Unique id of the resource to retrieve.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {}
}

Get Locations

Operation is used to retrieve & filter list of all the locations available for the partner

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
from_date
string
Example: from_date=2022-10-20

Start date of the period when the location was registered in the system.

to_date
string
Example: to_date=2022-11-26

End date of the period period when the location was registered in the system.

offset
integer
Default: 0
Example: offset=20

The offset of the item at which to begin the response.

limit
integer
Default: 20
Example: limit=10

The maximum number of items to return per page.

merchant_id
string
Example: merchant_id=21aed077-807c-419e-9516-a7ddd1f1c8dd

ID of the merchant that owns the location

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "pagination": {
    },
  • "data": [
    ]
}

Get Location

Operation is used to retrieve details of the specific location

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

id
required
string

Unique id of the resource to retrieve.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Gifts Management Operations

Operations allowing partners to perform all the gift purchase related activities. Inlcuding: Purchasing the gift, retrieving gift details & claiming the gift.

Purchase Gift & Notify Recipient

This operation will be used to purchase a new gift in the platform and send notification to the recipient so that they can claim it from Wolfe consumer website / app. It only allows purchase of a single gift. Batch purchases are not currently supported by the API.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
amount
required
integer <int32> [ 500 .. 10000 ]

Amount of the gift. Should be specified in cents. For example: if $10 gift is being purchased then 1000 needs to be specified in the parameter

reference_id
required
string <= 255 characters

Transaction reference in the system from where it originated. It must be unique within the partner. A non-unique reference_id will result in a 409 response code.

merchant_id
required
string <uuid>

ID of the merchant for which the gift is being purchased

email
string <email>

Email of the gift recipient. It can only be NULL if mobile_number or client_recipient_id parameter is specified

mobile_number
string = 11 characters

US mobile number of the gift recipient. It can only be NULL if email or client_recipient_id parameter is specified

message
string <= 1000 characters

Message to the recipient. If not specified, the platform will generate default message.

Responses

Request samples

Content type
application/json
{
  • "amount": 1000,
  • "reference_id": "411f62d0-05e0-4689-b09c-85904ef542e8",
  • "merchant_id": "500924a8-3f5e-4c00-beb8-2efcde988aea",
  • "email": "user@example.com",
  • "mobile_number": "12345476890",
  • "message": "Congratulations on reaching your milestone."
}

Response samples

Content type
application/json
{
  • "code": 201,
  • "message": "SUCCESS",
  • "data": {
    }
}

Purchase Gift

This operation will be used to purchase a new gift. No recipient information (besides ID in external system) is specified during this operation. The platform does not send any notification to the recipient. Redemption of the gifts done from this endpoint is managed on partner side. It only allows purchase of a single gift. Batch purchases are not currently supported by the API.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
amount
required
integer <int32> [ 500 .. 10000 ]

Amount of the gift. Should be specified in cents. For example: if $10 gift is being purchased then 1000 needs to be specified in the parameter

reference_id
required
string <= 255 characters

Transaction reference in the system from where it originated. It must be unique within the partner. A non-unique reference_id will result in a 409 response code.

merchant_id
required
string <uuid>

ID of the merchant for which the gift is being purchased

client_recipient_id
string

Unique identifier of the recipient user in the partners system. If it is not specified, than claim_gift request needs to be sent on the gift before it can be redeemed.

Responses

Request samples

Content type
application/json
{
  • "amount": 1000,
  • "reference_id": "411f62d0-05e0-4689-b09c-85904ef542e8",
  • "merchant_id": "500924a8-3f5e-4c00-beb8-2efcde988aea",
  • "client_recipient_id": "12346"
}

Response samples

Content type
application/json
{
  • "code": 201,
  • "message": "SUCCESS",
  • "data": {
    }
}

Get Gift

This operation returns details of the specific gift.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
gift_id
string
Example: gift_id=21aed077-807c-419e-9516-a7ddd1f1c8dd

ID of the gift in the platform system. It is returned in the response of Purchase Gift operation. It must be specified if reference_id is NULL

reference_id
string
Example: reference_id=411f62d0-05e0-4689-b09c-85904ef542e8

reference in the system from where it originated. It must be unique within the partner. It must be specified if gift_id is NULL

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Get Gift History

Returns a list of all events that occurred for a specified gift. Each event in the response will include datetime, event, description, and metadata properties. The description is a human-readable string describing the event that may be presented to the user. The metadata contains event-relevant properties which are provided so that the partner may construct their own customized event descriptions for their users.

The properties returned in the metadata property will differ based on the event. Below is a list of the events that are reported, including a list of the metadata properties that will be available for each event type.

Event Description Metadata Properties
gift.claim Recipient claims the gift. amount : int gift amount in pennies
merchant : string name of merchant associated with the gift
gift.link Gift is linked to a payment card. merchant : string name of merchant associated with the gift
network : string name of network for the card linked to the gift
card : string last four PAN digits of card linked to the gift
expiration : string expiration date of card linked to the gift (format MM/YY)
gift.unlink Gift is unlinked from a payment card. merchant : string name of merchant associated with the gift
network : string name of network for the card linked to the gift
card : string last four PAN digits of card linked to the gift
expiration : string expiration date of card linked to the gift (format MM/YY)
gift.merchant_swap Recipient changes the merchant associated with the gift. amount : int new gift amount in pennies
fee : int processing fee in pennies deducted from original gift balance
merchant : string name of merchant associated with the new gift
original_merchant : string name of merchant associated with the exchanged gift
credit.pending Card transaction is received for a linked card. amount : int credit amount in pennies
merchant : string name of merchant associated with the gift that triggered the redemption
network : string name of network for the card linked to the gift
card : string last four PAN digits of card linked to the gift
expiration : string expiration date of card linked to the gift (format MM/YY)
credit.success Credit is successfully issued to a linked card. amount : int credit amount in pennies
merchant : string name of merchant associated with the gift that triggered the redemption
network : string name of network for the card linked to the gift
card : string last four PAN digits of card linked to the gift
expiration : string expiration date of card linked to the gift (format MM/YY)
credit.failure Credit fails to be issued to a linked card. amount : int credit amount in pennies
merchant : string name of merchant associated with the gift that triggered the redemption
network : string name of network for the card linked to the gift
card : string last four PAN digits of card linked to the gift
expiration : string expiration date of card linked to the gift (format MM/YY)
redemption.egift Recipient redeems gift as an eGift. amount : int new eGift load value amount in pennies
fee : int processing fee in pennies deducted from the original gift amount
merchant : string name of merchant associated with the eGift
redemption.visa Recipient redeems gift as a Visa card. amount : int new Visa card load value amount in pennies
fee : int processing fee in pennies deducted from original gift amount
redemption.visa.processing Visa card request is submitted for processing amount : int new Visa card load value amount in pennies
redemption.visa.shipped Visa card is shipped to the recipient. amount : int new Visa card load value amount in pennies
first_name : string card recipient first name
last_name : string card recipient last name
address : string card delivery address
redemption.zelle Recipient redeems gift as a Zelle transfer. amount : int Zelle transfer amount in pennies
fee : int processing fee in pennies deducted from original gift amount
account : string Zelle account token associated with the transfer
Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
gift_id
string
Example: gift_id=21aed077-807c-419e-9516-a7ddd1f1c8dd

ID of the gift in the platform system. It is returned in the response of Purchase Gift operation. It must be specified if reference_id is NULL

reference_id
string
Example: reference_id=411f62d0-05e0-4689-b09c-85904ef542e8

reference in the system from where it originated. It must be unique within the partner. It must be specified if gift_id is NULL

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": [
    ]
}

Claim Gift

This endpoint associates gift with the recipient. This operation must be invoked when recipient claims the gift in the partners system.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
gift_id
string

Unique identifier of the gift in the platform

client_recipient_id
string

Unique identifier of the recipient user in the partners system.

Responses

Request samples

Content type
application/json
{
  • "gift_id": "7b86f0fa-e61d-48f3-9237-227533683776",
  • "client_recipient_id": "12346"
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS"
}

Cancel Gift

This endpoint allows the partner to cancel the gift. This can only be done on the gifts that have not been claimed or redeemed yet.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
gift_id
string

Unique identifier in the platform of the gift that should be canceled.

Responses

Request samples

Content type
application/json
{
  • "gift_id": "7b86f0fa-e61d-48f3-9237-227533683776"
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS"
}

Card Linking

Operations to link the user card to the gift

Get All Card Linking Attempts

This operation returns list of all the card linking attempts activity. It includes both successful and failed attempts.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
from_date
string

Start date of the period for which the log should be retrieved.

to_date
string

End date of the period of the period for which the log should be retrieved.

gift_id
string
Example: gift_id=7b86f0fa-e61d-48f3-9237-227533683776

ID of the gift for which the log should be retrieved.

client_recipient_id
string
Example: client_recipient_id=12346

Unique identifier of the recipient user in the partner system for which the log should be retrieved.

session
string
Example: session=64e1580f-aac2-4dbe-a626-d9ce158d0879

Session for which the data needs to be retrieved.

limit
integer
Default: 20
Example: limit=10

The maximum number of items to return per page.

offset
integer
Default: 0
Example: offset=20

The offset of the item at which to begin the response.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "pagination": {
    },
  • "data": [
    ]
}

Change Merchant

Operations allowing partner to change / update merchant of the gift. This operation has its fee. After each successful merchant update, partner user is charged with the fee. Fee is charged from gifts balance (not partners funding account).

Change Merchant

This operation will be used to swap merchant of the gift for another one. There is a fee associated with the operation. Each time gifts merchant is updated, fee of the operation is deducted from gifts balance (not from partners funding account).

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
gift_id
required
string <= 255 characters

ID of the original gift that needs to be swapped.

merchant_id
required
string <uuid>

ID of the new merchant for which the gift needs to be exchanged

Responses

Request samples

Content type
application/json
{
  • "gift_id": "21aed077-807c-419e-9516-a7ddd1f1c8dd",
  • "merchant_id": "500924a8-3f5e-4c00-beb8-2efcde988aea"
}

Response samples

Content type
application/json
{
  • "code": 201,
  • "message": "SUCCESS",
  • "data": {
    }
}

Select Merchant

Operation allowing partner to select merchant for the gift. This operation is only available on Merchant Select.

Select Merchant

This operation is only available on Merchant Select gifts. It allows user to select merchant for the gift. Once merchant is selected, gift becomes Active and can be redeemed by linking the card or receiving an eGift. Unlike from merchant exchange, this operation does not create new gift. It simply updates merchant on the existing one.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
gift_id
required
string <= 255 characters

ID of the gift for which the merchant is selected.

merchant_id
required
string <uuid>

ID of the merchant that needs to be selected for the gift.

Responses

Request samples

Content type
application/json
{
  • "gift_id": "21aed077-807c-419e-9516-a7ddd1f1c8dd",
  • "merchant_id": "500924a8-3f5e-4c00-beb8-2efcde988aea"
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS"
}

Regift

Operation allowing partner to update recipient of the gift. This operation has its fee. After each successful regift, appropriate fee amount will be deducted from gifts balance. When regifting, partner users can only give away the whole gift. They can't give away partial amount of the gift.

Regift

This operation allows recipient to give away gift they received to someone else. After each successful regift, operation fee is charged from the balance of the gift being given away.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
gift_id
required
string <= 255 characters

ID of the original gift that needs to be swapped.

client_recipient_id
string

Unique identifier of the recipient user in the partners system.Needs to be specified if email or mobile_number is NULL

merchant_id
string <uuid>

Optional parameter. Specified only if regift is done for the merchant different from the existing one.

Responses

Request samples

Content type
application/json
{
  • "gift_id": "21aed077-807c-419e-9516-a7ddd1f1c8dd",
  • "client_recipient_id": "12346",
  • "merchant_id": "500924a8-3f5e-4c00-beb8-2efcde988aea"
}

Response samples

Content type
application/json
{
  • "code": 201,
  • "message": "SUCCESS",
  • "data": {
    }
}

eGifts

Operations allowing partners to redeem the gift as an eGift and retrieve data about users eGifts

Get eGift Details

This operation allows to retrieve details of the specific eGift using its id. ID of the eGift is returned by the API when redeeming the gift as eGift or redemption_info parameter of GET gift response.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

egift_id
required
string <uuid>

Unique id of the eGift redeemed on the platform.

Responses

Response samples

Content type
application/json
{}

Create eGift

This operation allows to redeem the specified gift as an eGift.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
gift_id
required
string <= 255 characters

ID of the gift to be redeemed as an eGift.

Responses

Request samples

Content type
application/json
{
  • "gift_id": "21aed077-807c-419e-9516-a7ddd1f1c8dd"
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": [
    ]
}

Visa Card

Operations allowing partners to retrieve data about physical Visa card requests

Get requested Visa card details

This operation allows partners to retrieve details of the specific Visa card request using its id. Visa card request ID can be obtained from the response of Visa card redemption request or redemption_info parameter of GET gift response.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

visa_card_id
required
string

Unique id of the Visa card request in the platform.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Redeem Visa card

This operation allows user to redeem the gift as a Visa card

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
gift_id
required
string <= 255 characters

ID of the gift to be redeemed for a Visa card.

first_name
string

First name of the recipient of the Visa card

last_name
string

Last name of the recipient of the Visa card

object

Address where the Visa card should be shipped

Responses

Request samples

Content type
application/json
{
  • "gift_id": "21aed077-807c-419e-9516-a7ddd1f1c8dd",
  • "first_name": "Sherlock",
  • "last_name": "Holmes",
  • "address": {
    }
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Zelle

Operations allowing partners to redeem gifts using Zelle and manage Zelle accounts

Get Zelle Accounts

This operation allows partner to lookup Zelle account of the user. It can only be filtered by client_recipient_id or zelle account id. At least one of these parameters must be specified.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
client_recipient_id
string
Example: client_recipient_id=12346

ID of the user in the partners system. It must be specified if wallet_id parameter is null.

zelle_account_id
string
Example: zelle_account_id=ffb6cd62-2421-4489-bf97-98e9e6a1ce98

ID of the Zelle account in the Platform. It must be specified if client_recipient_id parameter is null.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": [
    ]
}

Get Zelle Transaction Details

This operation returns details of the specified transaction.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

zelle_transaction_id
required
string
Example: ffb6cd62-2421-4489-bf97-98e9e6a1ce98

ID of the Zelle transaction in the Platform

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Redeem Zelle Gift

This operation allows partner to redeem users gift using Zelle. Partner must provide either gift_id, zelle_account_id and address or gift_id, token, token_type, first_name, last_nameandaddress` to process a request.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
gift_id
string

ID of the gift that is being redeemed

zelle_account_id
string

ID of the Zelle account in the Platform associated with the user

account_token
string

Zelle account token on which transaction is to be made

token_type
required
string
Enum: "email" "mobile"

Type of the token that was validated. It will either be email or telephone

first_name
required
string

First name of the user as registered in Zelle

last_name
required
string

Last name of the user as registered in Zelle

required
object

Address of the user requesting redemption

Responses

Request samples

Content type
application/json
{
  • "gift_id": "7b86f0fa-e61d-48f3-9237-227533683776",
  • "zelle_account_id": "ffb6cd62-2421-4489-bf97-98e9e6a1ce98",
  • "account_token": "john.doe@example.com",
  • "token_type": "email",
  • "first_name": "John",
  • "last_name": "Doe",
  • "address": {
    }
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Lookup Zelle Account

This operation allows partner to lookup Zelle account of the user.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
token
required
string

Zelle account token that needs to be validated. It must either be telephone number or email.

token_type
required
string
Enum: "email" "mobile"

Type of the token that is being validated. It can either be email or telephone

gift_id
string

ID of the gift for which Zelle redemption is being attempted.

Responses

Request samples

Content type
application/json
{
  • "token": "john.doe@example.com",
  • "token_type": "email",
  • "gift_id": "7b86f0fa-e61d-48f3-9237-227533683776"
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Cards Management Operations

Operations allowing partners to manage cards their users have enrolled or linked with the platform

Get Cards Of The User

This operation allows to retrieve and filter all the cards enrolled or linked by the specific user of the partner.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

client_recipient_id
required
string <uuid>

Unique id of the user in partners system

query Parameters
card_id
string
Example: card_id=8b908674-7b88-4644-b7a5-c8d68d5020c7

Unique identifier of the bank card on which the credit was issued

limit
integer
Default: 20
Example: limit=10

The maximum number of items to return per page.

offset
integer
Default: 0
Example: offset=20

The offset of the item at which to begin the response.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "pagination": {
    },
  • "data": [
    ]
}

Unenrol Card

This operation allows partner to unenroll a users card from the payment networks.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

client_recipient_id
required
string <uuid>

Unique id of the user in partners system

Request Body schema: application/json
card_id
string

Unique identifier of the card in the platform.

Responses

Request samples

Content type
application/json
{
  • "card_id": "8b908674-7b88-4644-b7a5-c8d68d5020c7"
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": [
    ]
}

Transactions

Operations allowing partners to retrieve data about both credit transactions issued to the user and linked card transactions at merchants

Get Credit Transactions

Operation is used to retrieve and filter list of credit transactions issued to the user.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
status
string
Example: status=SUCCESS

Status of the transaction. If not specified will return transactions with all the statuses

from_date
string

Start date of the period when the transaction was created

to_date
string

End date of the period when the transaction was created

gift_id
string

ID of the gift for which the credit was issued.

limit
integer
Default: 20
Example: limit=10

The maximum number of items to return per page.

offset
integer
Default: 0
Example: offset=20

The offset of the item at which to begin the response.

id
string
Example: id=1sa42e3b-4s36-6440-b0ba-0050asd2143b

Unique identifier of the transaction in fund account service

card_id
string
Example: card_id=8b908674-7b88-4644-b7a5-c8d68d5020c7

Unique identifier of the bank card on which the credit was issued

client_recipient_id
string
Example: client_recipient_id=12346

Unique identifier of the user in the partner system who was supposed to be credited

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "pagination": {
    },
  • "data": [
    ]
}

Get Merchant Transactions Deprecated

Operation is used to retrieve and filter list of all the transactions performed on card linked gift that need to be credited.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
from_date
string

Start date of the period when the transaction was created

to_date
string

End date of the period when the transaction was created

gift_id
string

ID of the gift for which the transaction was created

limit
integer
Default: 20
Example: limit=10

The maximum number of items to return per page.

offset
integer
Default: 0
Example: offset=20

The offset of the item at which to begin the response.

id
string
Example: id=1sa42e3b-4s36-6440-b0ba-0050asd2143b

Unique identifier of the transaction in the platform.

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "pagination": {
    },
  • "data": [
    ]
}

Administration

Operations allowing partner to retrieve detailed activity log of their users and register missing credits requests.

Get Missing Credit Details

This operation returns details of the specific missing credit.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

query Parameters
id
string
Example: id=21aed077-807c-419e-9516-a7ddd1f1c8dd

ID of the missing credit request in the platform system. It is returned in the response of POST operation. It must be specified if reference_id is NULL

reference_id
string
Example: reference_id=411f62d0-05e0-4689-b09c-85904ef542e8

Reference in the system from where it originated. It must be unique within the partner. It must be specified if id is NULL

Responses

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Register missing credit request

This operation should be used by the partner in case their user complains that they performed a transaction but didn't get credit back. This endpoint allows partners to register new missing credit request, that if valid will automatically credit users linked account.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
merchant_id
string

Merchant ID of the gift that was not credited.

transaction_date
string

Date when user performed a transaction with the merchant.

comment
string

Additional comment on the missing credit

client_recipient_id
string

Unique identifier of the recipient user in the partner system who didn't get credited.

card_id
string

Unique identifier of the card that was used to pay at the merchants.

is_online
boolean

Where was the transaction performed: Online or In Store.

reference_id
string

Unique identifier of the missing credit request on partners side.

transaction_amount
integer

Amount user paid at the merchant. It can be greater than gift amount. Platform will always credit back remaining balance of the gift. Amount must always be specified in cents.

Responses

Request samples

Content type
application/json
{
  • "merchant_id": "21aed077-807c-419e-9516-a7ddd1f1c8dd",
  • "transaction_date": "2023-01-01",
  • "comment": "$5 was additional tip on the transaction.",
  • "client_recipient_id": "12346",
  • "card_id": "8b908674-7b88-4644-b7a5-c8d68d5020c7",
  • "is_online": "true",
  • "reference_id": "7ee8f857-e5b8-4a03-b41f-455439a13428",
  • "transaction_amount": 1000
}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS",
  • "data": {
    }
}

Webhooks

APIa uses webhooks to notify partner application when an events happens in their account. In other words, it enables the platform to push real time notifications to partners app over the HTTPS as a JSON payload.

Webhooks are usefull for:

  • Receiving information about created transactions (like when the request got timed out, webhook could be used to obtain request status)
  • Asyncronous events (like when the gift is redeemed by the recipient in the the platform or deposit transaction approved by the admin).

Partners could use webhooks to execute actions in their system.

Webhook Types

There are 2 types of webhook events currently supported by the platform:

  • Transaction Status Update
  • Gift Update

Transaction Status Update

{
    "event":"TRANSACTION_UPDATE",
    "id": "1sa42e3b-4s36-6440-b0ba-0050asd2143b",
    "account_number": "GE28TB1237812369812732781",
    "amount": 85.32,
    "status": "APPROVED",
    "transaction_type": "1",
    "reference_id": "411f62d0-05e0-4689-b09c-85904ef542e8",
    "before_balance": 1,
    "date_created": "2022-10-10 14:00",
    "date_modified": "2022-11-10 15:00"
}

Gift Status Update

{
    "event":"GIFT_UPDATE",
    "id": "7b86f0fa-e61d-48f3-9237-227533683776",
    "amount": 10.99,
    "merchant_id": "Dunkin Donut",
    "balance": 5.15,
    "status": "2",
    "create_date": "2022-10-22 14:00",
    "redemption_date": "2022-10-23 15:30",
    "email": "john.doe@example.com",
    "mobile_number": "123424353467"
}

Webhook Security

Each webhook will be signed by the platform API and signature will be provided in the Header of the webhook. Partner must first verify authencity of the request using the signature before performing any action on it.

IP whitelist must be implemented by the partner on the endpoint receiving the notifications. It must only allow incoming traffic from the platform API (10.10.10.10).

Additionally, as a most secure safeguard, it is recommended that partner always checks validity of the webhook by calling Get Transaction or Get Gift endpoint after they recieve the webhook.

Webhook Operations

Subscribe or unsubscribe from webhook events. Update existing webhook configuration

Configure Webhooks Deprecated

This endpoint can be used by the partner to set up / update their webhook / callback configuration. This operation can be used to:

  • Subscribe to webhook notification and set up callback URL
  • Unsubscribe from the webhook notification
  • Update existing webhook configurations
Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Request Body schema: application/json
callback_url
string

Address on the partner side where callback notifications should be sent for the subscribed events

events
Array of strings

List of events for which the partner wants to subscribe

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "code": 200,
  • "message": "SUCCESS"
}

View Webhooks Configuration Deprecated

This endpoint can be used to retrieve current callback configuration setup by the partner.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Responses

Response samples

Content type
application/json
{}

Retrieve Webhook Portal Link

This endpoint can be used to retrieve webhook portal link from where partner can manage their webhook messages and configurations.

Authorizations:
ApiKey
path Parameters
company_id
required
string <uuid>

Unique company id assigned to the partner.

Responses