American Express Membership Rewards
The Mastercard Gateway allows you to offer American Express Membership Rewards as a method of payment to your payers.
American Express Membership Rewards is a customer loyalty program that rewards payers for using their American Express debit/credit cards. The payers enrolled in the program earn points on purchases made with the card and can subsequently redeem the available points for a currency equivalent when making an eligible purchase with the card. For more details on the rewards program, see the American Express website.
Support for American Express Membership Rewards via the gateway is provided for:
- Internet transactions (
transaction.source=INTERNET
) - One-off payments
- Authorize transactions (
apiOperation=AUTHORIZE
)
Prerequisites
To offer American Express Membership Rewards via the gateway:
- you must sign up with the American Express Membership Rewards program.
- your merchant profile on the gateway must be configured for the American Express Membership Rewards acquirer by your payment service provider.
Adding support for American Express Membership Rewards to your integration
If you want to offer American Express Membership Rewards as a payment method on your own payment page, you can integrate using Direct Payment.
The integration steps you need to implement depend on the payment scenarios you want to support on your shop site:
- If you want to present the rewards balance available on a card, you need Step 1 only.
- If you want to offer the payer the option to redeem rewards points for a payment, both Step 1 and Step 2 are required.
When a payer chooses to pay using American Express Membership Rewards, you must first check if a rewards balance is available. You should only offer American Express Membership Rewards if a rewards balance is available for the payer to spend. You can also check the rewards balance in the event of a balance inquiry from a payer who has their account set up on your shop site.
You can request the rewards balance on the card using the APIBalance Inquiry
operation. It's important to present the balance information to the payer to enable them to redeem a valid number of rewards (points) for their purchases. The balance information provides the maximum and minimum spend amounts, and also the incremental spend amount. For example, if the minimum spend amount is $100, the maximum spend amount is $500, and the incremental spend amount is $20, then the payer can redeem points for purchases between $100 and $500 in increments of $20. If the purchase is for $155 they can redeem $140 from rewards points and will need to pay the balance of $15 on their card.
You need to provide the following fields in the Balance Inquiry
request:
sourceOfFunds.type
=CARD
sourceOfFunds.provided.card.number
: The debit/credit card number associated with the American Express Membership Rewards for which you are requesting rewards balance information.sourceOfFunds.provided.card.expiry
sourceOfFunds.provided.card.securityCode
Balance Inquiry API Reference[REST][NVP]
The response fields for a Balance Inquiry
request will determine your next step, as shown in the table below.
Balance Inquiry Response Fields |
What This Means... |
---|---|
result=SUCCESS balanceId : This is a unique identifier generated by the gateway when a rewards balance is available for the card. availableBalance.reward.amount availableBalance.reward.currency availableBalance.reward.points availableBalance.reward.program =AMERICAN_EXPRESS_MEMBERSHIP_REWARDS availableBalance.reward.conversionRate availableBalance.reward.incrementalSpendAmount availableBalance.reward.maximumSpendAmount availableBalance.reward.minimumSpendAmount response.gatewayCode=BALANCE_AVAILABLE
|
The balance information for the card is available. Note that the available balance may be zero. You can present this information to your payer and subsequently submit an authorization for this card if the payer wishes to redeem the rewards points. |
result=SUCCESS response.gatewayCode=NO_BALANCE |
The balance information for the card is not available, for example, card not enrolled in the rewards program. The payer will be unable to use rewards points for the payment. |
result=FAILURE response.gatewayCode=TIMED_OUT |
The balance inquiry request was unsuccessful, for example, the request timed out to the acquirer, system error. You can try again after some time. |
If a rewards balance is available, you can offer the payer to redeem rewards points for their payment. If the payer wishes to spend rewards, submit an authorization for the card with the rewards amount. The rewards amount may cover some or all of the order amount (but must not exceed the order amount). As a prerequisite, a successful balance inquiry for the card must have been performed via the gateway before submitting the authorization (you will need to provide the balance ID returned for the balance inquiry request in the authorization transaction).
You need to provide the following fields in the Authorize
request:
order.reward.balanceId
: The value for thebalanceId
field returned to you in theBALANCE_INQUIRY
response.order.reward.amount
: The amount the payer has chosen to pay by redeeming rewards points.
If successful, the following response fields are returned in addition to the standard fields:
order.reward.amount
, echoed from your request.order.reward.points
: The rewards value (points) that the payer has redeemed as full or part payment for this order.order.reward.program
=AMERICAN_EXPRESS_MEMBERSHIP_REWARDS
If these fields are not returned in the response, it means that the rewards authorization is not successful,i.e., the payer cannot redeem the rewards points. In this case, you must present the payer with the option to proceed with the order without redeeming the rewards amount.
Captures and Refunds
You can perform captures and refunds on an order containing rewards amount similar to a card transaction. The transactions, if successful, will be settled into the card account. Standalone captures and refunds are not supported with the rewards amount.
Branding requirements
When displaying American Express Membership Rewards as a payment option on your payment page, you must comply with the branding requirements from American Express. You must also provide a link to the American Express Membership Rewards terms and conditions on your checkout page. For more information on branding requirements, contact American Express.
Test and go-live
You can test your American Express Membership Rewards card integration using your test merchant profile.