A prepaid payment token is a container for a prepaid payment instrument. A prepaid payment
instrument is like a gift card. A sender authorizes the creation of a prepaid instrument, funds it and
then can use it to pay for items purchased on your web site. Upon the funding of the instrument, you
(the recipient and caller) receive the money from the sender's payment instrument to create the
sender's prepaid balance. When the sender makes a purchase using the prepaid instrument, you issue a
Pay request, which in the accounting, reduces the prepaid balance by the cost
of the items purchased. You already have the sender's money so no more money is exchanged. However, by
using a Pay request, the accounting is kept balanced and you can use actions
like GetPrepaidBalance to provide up-to-date accounting of balances.
There is a fee for the money transfer. If the sender, for example, purchases a $10 prepaid payment instrument from your web site, Amazon FPS deducts from the $10 its transaction fee and deposits in your Amazon Payments account the difference, for example, $9.70. The prepaid balance for the sender, however, is $10.
To charge senders for purchases they make, you use the prepaid payment token (sender token) which
has a reference to the prepaid instrument, in a Pay request. For more
information, see Making Payments. Aggregated Payments
Quick Start does not support refunding or reversing the prepaid balance to a sender's Amazon Payments
account or credit card. Aggregated Payments Quick Start only supports reversing a prepaid transaction.
By setting the parameters in the Co-Branded service request that creates the prepaid payment instrument, you can constrain its use to a set period of time, until the funds are depleted, or both. For more information about setting prepaid instrument restrictions, see Prepaid Token API.
Prepaid payment instruments serve a wide variety of purposes. For example, a music download company might sell prepaid payment instruments as gift certificates. A buyer can purchase a gift certificate for a specified amount of money, give the certificate to someone as a present, and that person can purchase up to the spending limit of the card in the music store. The following is a sample use case for a fictional business, DigitalDownload.
DigitalDownload is a licensed online retailer selling MP3 files for $0.50 each. John is a
DigitalDownload customer who purchases a prepaid balance of $10 from DigitalDownload using his Amazon
Payments account balance. Each time John purchases an MP3 file, DigitalDownload makes a
Pay request and charges John's prepaid balance. After the purchase
DigitalDownload displays John's prepaid balance in his account on the DigitalDownload web site. Amazon
FPS rejects any prepaid Pay request from DigitalDownload after the prepaid
balance is exhausted.
You create a prepaid instrument using the Prepaid Token API. Upon creation, it has a zero prepaid
balance, and the funding token that contains the balance amount is returned along with the prepaid
instrument. To use the instrument, you must fund it, that is, add money to the balance that gets
used in Pay transactions. You use the FundPrepaid action
to fund the instrument. Funding the instrument moves money from the sender's payment instrument to
the recipient's Amazon Payments account.
Aggregated Payments Quick Start does not support recharging prepaid payment instruments. So, for
example, you cannot use FundPrepaid on the same prepaid instrument twice.
To fund a prepaid instrument
Use FundPrepaid in a request similar to the following. The value to
use for the SenderTokenId is the
fundingTokenID you received from the Prepaid Token API response
(and not the value of the prepaidSenderTokenID). For information
about the Prepaid Token API, see Prepaid Token API.
https://fps.amazonaws.com/? Action=FundPrepaid& AWSAccessKeyId=0656Example83G2& SignatureVersion=1& Timestamp=2008-08-06T13%3A00%3A01Z& PrepaidInstrumentId=254656Example83987& SenderTokenId=we098sfqer8Example09823& CallerReference=293847SKDJRH29387& FundingAmount.Value=10.00& FundingAmount.CurrencyCode=USD& Version=2008-09-17& Signature=<URL-encoded signature value>
This request transfers $10 from the sender to the recipient and creates a balance of $10 on the
prepaid payment instrument identified by SenderTokenId. The
CallerReference number is a value you provide that uniquely identifies
the transaction. For more information, see Important Values to Store in Your Database.
For more information about the parameters, see FundPrepaid.
Once this request completes successfully, the sender can start using the prepaid payment token
on your web site. A sender can use the prepaid instrument to buy goods or services until the
prepaid balance is exhausted or until the instrument expires. Each time a sender initiates a
purchase, you must make a Pay request to Amazon FPS using the prepaid payment
token. For more information, see Making Payments.
Amazon keeps track of the balance in the prepaid token so that you can use other operations, such
as GetPrepaidBalance, to provide account information programmatically.
The response also includes a transaction ID. You can use
GetTransactionStatus with the transaction ID to get more details about the
transaction. For more information, see GetTransactionStatus.
A Pay request uses the PrepaidInstrumentId as the
payment method instead of a credit card, a bank account, or the Amazon Payments account balance.
For more information, see Making Payments.
A sender cannot view a prepaid balance on payments.amazon.com. You can, however, display a sender's prepaid balance on your web
site using GetPrepaidBalance (for more information, see GetPrepaidBalance).
To view a prepaid balance
Issue a request similar to the following.
https://fps.amazonaws.com/?
Action=GetPrepaidBalance&
AWSAccessKeyId=0656Example83G2&
SignatureVersion=1&
Timestamp=2008-08-06T13%3A00%3A01Z&
PrepaidInstrumentId=254656Example83987&
Version=2008-09-17&
Signature=[URL-encoded signature value]PrepaidInstrumentId identifies the prepaid instrument that holds
the prepaid balance. The response contains the prepaid balance.