Take your integration live
[Step 6 of 6] In this step, you will update your integration to use production values and review a pre-launch checklist. At the end of this step, you will be able to process live transactions.
Note: If your publicKeyId does not have an environment prefix (does not begin with 'SANDBOX' or 'LIVE') follow these instructions instead.
Note: If your publicKeyId has an environment prefix (for example: SANDBOX-AFVX7ULWSGBZ5535PCUQOY7B) follow these instructions instead.
1. Update publicKeyId
In the button integration code, replacepublicKeyId
with your Live API public Key ID. See these instructions for how to generate a public key ID.
<script type="text/javascript" charset="utf-8">
amazon.Pay.renderButton('#AmazonPayButton', {
// set checkout environment
merchantId: 'merchant_id',
publicKeyId: 'LIVE-xxxxxxxxxx',
ledgerCurrency: 'USD',
// customize the buyer experience
checkoutLanguage: 'en_US',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold',
// configure Create Checkout Session request
createCheckoutSessionConfig: {
payloadJSON: 'payload',
signature: 'xxxx'
}
});
</script>
<script type="text/javascript" charset="utf-8">
amazon.Pay.renderButton('#AmazonPayButton', {
// set checkout environment
merchantId: 'merchant_id',
publicKeyId: 'LIVE-xxxxxxxxxx',
ledgerCurrency: 'EUR',
// customize the buyer experience
checkoutLanguage: 'en_GB',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold',
// configure Create Checkout Session request
createCheckoutSessionConfig: {
payloadJSON: 'payload',
signature: 'xxxx'
}
});
</script>
<script type="text/javascript" charset="utf-8">
amazon.Pay.renderButton('#AmazonPayButton', {
// set checkout environment
merchantId: 'merchant_id',
publicKeyId: 'LIVE-xxxxxxxxxx',
ledgerCurrency: 'GBP',
// customize the buyer experience
checkoutLanguage: 'en_GB',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold',
// configure Create Checkout Session request
createCheckoutSessionConfig: {
payloadJSON: 'payload',
signature: 'xxxx'
}
});
</script>
<script type="text/javascript" charset="utf-8">
amazon.Pay.renderButton('#AmazonPayButton', {
// set checkout environment
merchantId: 'merchant_id',
publicKeyId: 'LIVE-xxxxxxxxxx',
ledgerCurrency: 'JPY',
// customize the buyer experience
checkoutLanguage: 'ja_JP',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold',
// configure Create Checkout Session request
createCheckoutSessionConfig: {
payloadJSON: 'payload',
signature: 'xxxx'
}
});
</script>
3. Review the pre-launch checklist
Ensure that stakeholders within your business have the proper user access permissions for Seller Central, and are aware of the launch date. Review the pre-launch checklist below to ensure a successful launch.Complete account setup
- Ensure that you have completed Amazon Pay merchant account registration, and you’re ready to process payments in Production.
- Ensure all domains have been added to Seller Central. See Add domains to Seller Central for more info.
- Add your logo to the Amazon Pay store configuration to maintain a seamless checkout experience. Note that the logo will be automatically resized to 50 x 150 pixels.
- If you're using IPNs to handle asynchronous processes, add production IPN endpoints. See using IPNs for more info.
- Upgrade to a live account if you’re using a developer account: US, EU, UK, JP.
Optimize the buyer experience
- Verify that the Amazon Pay checkout experience is optimized for both desktop and mobile experiences.
- Check that buyer communication provides accurate information.
Common integration issues
- Some Amazon Pay transactions are processed asynchronously. This means that Amazon Pay will return a pending response and the object will be in an Pending state until processing is complete. If applicable, make sure that you’re handling asynchronous processing.
- Amazon Pay returns a string string for buyer name. Make sure you’re parsing the buyer name correctly. Note that some buyers may only provide a single name, e.g. “Jane”.
1. Update the button-rendering code
In the button integration code, remove thesandbox
parameter. You must also generate a new signature if payloadJSON
changes.
<script type="text/javascript" charset="utf-8">
amazon.Pay.renderButton('#AmazonPayButton', {
// set checkout environment
merchantId: 'merchant_id',
ledgerCurrency: 'USD',
// customize the buyer experience
checkoutLanguage: 'en_US',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold',
// configure Create Checkout Session request
createCheckoutSessionConfig: {
payloadJSON: 'payload',
signature: 'xxxx',
publicKeyId: 'xxxxxxxxxx'
}
});
</script>
<script type="text/javascript" charset="utf-8">
amazon.Pay.renderButton('#AmazonPayButton', {
// set checkout environment
merchantId: 'merchant_id',
ledgerCurrency: 'EUR',
// customize the buyer experience
checkoutLanguage: 'en_GB',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold',
// configure Create Checkout Session request
createCheckoutSessionConfig: {
payloadJSON: 'payload',
signature: 'xxxx',
publicKeyId: 'xxxxxxxxxx'
}
});
</script>
<script type="text/javascript" charset="utf-8">
amazon.Pay.renderButton('#AmazonPayButton', {
// set checkout environment
merchantId: 'merchant_id',
ledgerCurrency: 'GBP',
// customize the buyer experience
checkoutLanguage: 'en_GB',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold',
// configure Create Checkout Session request
createCheckoutSessionConfig: {
payloadJSON: 'payload',
signature: 'xxxx',
publicKeyId: 'xxxxxxxxxx'
}
});
</script>
<script type="text/javascript" charset="utf-8">
amazon.Pay.renderButton('#AmazonPayButton', {
// set checkout environment
merchantId: 'merchant_id',
ledgerCurrency: 'JPY',
// customize the buyer experience
checkoutLanguage: 'ja_JP',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold',
// configure Create Checkout Session request
createCheckoutSessionConfig: {
payloadJSON: 'payload',
signature: 'xxxx',
publicKeyId: 'xxxxxxxxxx'
}
});
</script>
2. Update API endpoints
Change API endpoints from sandbox to live:Region
|
Sandbox base API endpoint
|
Production base API endpoint
|
US
|
https://pay-api.amazon.com/sandbox/:version
|
https://pay-api.amazon.com/live/:version
|
EU/UK
|
https://pay-api.amazon.eu/sandbox/:version
|
https://pay-api.amazon.eu/live/:version
|
JP
|
https://pay-api.amazon.jp/sandbox/:version
|
https://pay-api.amazon.jp/live/:version
|
3. Review the pre-launch checklist
Ensure that stakeholders within your business have the proper user access permissions for Seller Central, and are aware of the launch date. Review the pre-launch checklist below to ensure a successful launch.Complete account setup
- Ensure that you have completed Amazon Pay merchant account registration, and you’re ready to process payments in Production.
- Ensure all domains have been added to Seller Central. See Add domains to Seller Central for more info.
- Add your logo to the Amazon Pay store configuration to maintain a seamless checkout experience. Note that the logo will be automatically resized to 50 x 150 pixels.
- If you're using IPNs to handle asynchronous processes, add production IPN endpoints. See using IPNs for more info.
- Upgrade to a live account if you’re using a developer account: US, EU, UK, JP.
Optimize the buyer experience
- Verify that the Amazon Pay checkout experience is optimized for both desktop and mobile experiences.
- Check that buyer communication provides accurate information.
Common integration issues
- Some Amazon Pay transactions are processed asynchronously. This means that Amazon Pay will return a pending response and the object will be in an Pending state until processing is complete. If applicable, make sure that you’re handling asynchronous processing.
- Amazon Pay returns a string string for buyer name. Make sure you’re parsing the buyer name correctly. Note that some buyers may only provide a single name, e.g. “Jane”.