Charges

Card issuance charges

We added an ability to post card issuance charges so that it can be applied to respective cardholder's account. This will be executed one time only for every new card that is issued.

It can be applied when:

1) Personalized physical card is issued for the first time

2) Personalized virtual card is issued for the first time

3) Bulk card is linked to the user

If card is replaced then issuance charges shall not be considered.

A cron job will be executed daily to retrieve charges in "PENDING" status and apply the charge amount to either the cardholder's or master's account, as per the configuration.

Card replacement charges

We have added support of card replacement charges, so that it can be parked, when physical or virtual cards are replaced to cardholder.

New supported enums for 'charge_type' are:

  • PHYSICAL_CARD_REPLACEMENT

  • VIRTUAL_CARD_REPLACEMENT.

Card replacement charges work when 'application_type' = INSTANT.

Card activation charges

We have added the support of card activation charges. This new charge is applied to cardholder when a card is activated for the first time. This will be charged one-time only for every new card that is activated . For example, if two different cards are created for a user, then he will be charged for every card.

New supported enum for 'charge_type' is:

  • CARD_ACTIVATION_CHARGES

  • The card activation charges function properly with application_type = INSTANT.

  • When a card is activated (i.e. status becomes ACTIVE/A0), the charge is debited from the cardholder’s account and the webhook event CHARGE_APPLIED is triggered.

  • Charges will continue to be deducted even if the account status is INACTIVE or SUSPENDED.

Charges APIs

The below APIs are exposed in API Catalog:

Note, that supported enums for 'charge_type' are "PHYSICAL_CARD_ISSUANCE", "VIRTUAL_CARD_ISSUANCE", "PHYSICAL_CARD_REPLACEMENT", "VIRTUAL_CARD_REPLACEMENT" and "DELIVERY".

Webhooks

New webhook event/enum "CHARGE_APPLIED" is addded. Below you can find webhook sample:

{
  "event": "CHARGE_APPLIED",
  "charge_applied": {
    "id": "0fcf8c07-ae35-4243-890d-0a39b2618578",
    "description": "charges dev 28",
    "currency": "AED",
    "amount": 2,
    "card_id": "f3bd66fd-80d5-4c7c-90e2-ac062c923ff0",
    "account_id": "f3bd66fd-80d5-4c7c-90e2-ac062c923ff0",
    "charge_id": "CHARGEAHSAN19",
    "charge_type": "PHYSICAL_CARD_ISSUANCE"
  }
}

Last updated