{"id":16463023,"url":"https://github.com/sunaoka/amazon-pay-api-sdk-php-laravel","last_synced_at":"2026-05-12T08:38:37.901Z","repository":{"id":65836434,"uuid":"600999545","full_name":"sunaoka/amazon-pay-api-sdk-php-laravel","owner":"sunaoka","description":"Amazon Pay API SDK (PHP) for Laravel","archived":false,"fork":false,"pushed_at":"2024-03-29T00:38:17.000Z","size":44,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2024-04-29T16:42:16.204Z","etag":null,"topics":["amazon-pay","laravel","php"],"latest_commit_sha":null,"homepage":"https://packagist.org/packages/sunaoka/amazon-pay-api-sdk-php-laravel","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sunaoka.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-02-13T06:31:24.000Z","updated_at":"2023-12-26T07:11:17.000Z","dependencies_parsed_at":"2023-11-30T03:28:29.644Z","dependency_job_id":"e2051e90-0f60-4168-9240-01d70a5a96c7","html_url":"https://github.com/sunaoka/amazon-pay-api-sdk-php-laravel","commit_stats":{"total_commits":13,"total_committers":1,"mean_commits":13.0,"dds":0.0,"last_synced_commit":"556de6020f937bf1c101bc9cced2af064cd16ead"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunaoka%2Famazon-pay-api-sdk-php-laravel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunaoka%2Famazon-pay-api-sdk-php-laravel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunaoka%2Famazon-pay-api-sdk-php-laravel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunaoka%2Famazon-pay-api-sdk-php-laravel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sunaoka","download_url":"https://codeload.github.com/sunaoka/amazon-pay-api-sdk-php-laravel/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240995379,"owners_count":19890726,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["amazon-pay","laravel","php"],"created_at":"2024-10-11T11:13:09.812Z","updated_at":"2026-05-12T08:38:32.858Z","avatar_url":"https://github.com/sunaoka.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Amazon Pay API SDK (PHP) for Laravel\n\n[![Latest Stable Version](https://poser.pugx.org/sunaoka/amazon-pay-api-sdk-php-laravel/v/stable)](https://packagist.org/packages/sunaoka/amazon-pay-api-sdk-php-laravel)\n[![License](https://poser.pugx.org/sunaoka/amazon-pay-api-sdk-php-laravel/license)](https://packagist.org/packages/sunaoka/amazon-pay-api-sdk-php-laravel)\n[![PHP from Packagist](https://img.shields.io/packagist/php-v/sunaoka/amazon-pay-api-sdk-php-laravel)](composer.json)\n[![Laravel](https://img.shields.io/badge/laravel-%3E=%206.x-red)](https://laravel.com/)\n[![Test](https://github.com/sunaoka/amazon-pay-api-sdk-php-laravel/actions/workflows/test.yml/badge.svg)](https://github.com/sunaoka/amazon-pay-api-sdk-php-laravel/actions/workflows/test.yml)\n[![codecov](https://codecov.io/gh/sunaoka/amazon-pay-api-sdk-php-laravel/branch/main/graph/badge.svg?token=B69XU9TMMH)](https://codecov.io/gh/sunaoka/amazon-pay-api-sdk-php-laravel)\n\n----\n\nThis library is The Laravel Framework binding for [amazon-pay-api-sdk-php](https://github.com/amzn/amazon-pay-api-sdk-php).\n\n## Installation\n\n```bash\ncomposer require sunaoka/amazon-pay-api-sdk-php-laravel\n```\n\n## Configurations\n\n```bash\nphp artisan vendor:publish --tag=amazon-pay-config\n```\n\nThe settings can be found in the generated `config/amazon-pay.php` configuration file.\n\n```php\n\u003c?php\n\nreturn [\n    'sandbox'              =\u003e (bool)env('AMAZON_PAY_SANDBOX', true),\n    'merchant_id'          =\u003e env('AMAZON_PAY_MERCHANT_ID'),\n    'store_id'             =\u003e env('AMAZON_PAY_STORE_ID'),\n    'public_key_id'        =\u003e env('AMAZON_PAY_PUBLIC_KEY_ID'),\n    'private_key'          =\u003e env('AMAZON_PAY_PRIVATE_KEY'),\n    'region'               =\u003e env('AMAZON_PAY_REGION'),\n    'language'             =\u003e env('AMAZON_PAY_LANGUAGE'),\n    'currency_code'        =\u003e env('AMAZON_PAY_CURRENCY_CODE'),\n    'algorithm'            =\u003e env('AMAZON_PAY_ALGORITHM'),\n    'override_service_url' =\u003e env('AMAZON_PAY_OVERRIDE_SERVICE_URL'),\n    'proxy'                =\u003e !empty(env('AMAZON_PAY_PROXY_HOST')) ? [\n        'host'     =\u003e env('AMAZON_PAY_PROXY_HOST'),\n        'port'     =\u003e env('AMAZON_PAY_PROXY_PORT'),\n        'username' =\u003e env('AMAZON_PAY_PROXY_USERNAME'),\n        'password' =\u003e env('AMAZON_PAY_PROXY_PASSWORD'),\n    ] : null,\n];\n```\n\n## Usage\n\n```dotenv\n# .env\nAMAZON_PAY_SANDBOX=true\nAMAZON_PAY_MERCHANT_ID=ABC123DEF456XY\nAMAZON_PAY_STORE_ID=amzn1.application-oa2-client.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\nAMAZON_PAY_PUBLIC_KEY_ID=ABC123DEF456XYZ789IJK000\nAMAZON_PAY_PRIVATE_KEY=keys/private.pem\nAMAZON_PAY_REGION=us\nAMAZON_PAY_LANGUAGE=en_US\nAMAZON_PAY_CURRENCY_CODE=USD\n```\n\n```php\n\u003c?php\n\n$payload = [\n    'storeId'            =\u003e config('amazon-pay.store_id'),\n    'webCheckoutDetails' =\u003e [\n        'checkoutReviewReturnUrl' =\u003e 'http://localhost/checkout/review',\n        'checkoutResultReturnUrl' =\u003e 'http://localhost/checkout/result',\n        'checkoutCancelUrl'       =\u003e 'http://localhost/checkout/cancel',\n    ],\n];\n\n$signature = \\AmazonPay::generateButtonSignature($payload);\n\n$button = [\n    'merchantId'                  =\u003e config('amazon-pay.merchant_id'),\n    'ledgerCurrency'              =\u003e config('amazon-pay.currency_code'),\n    'sandbox'                     =\u003e config('amazon-pay.sandbox'),\n    'checkoutLanguage'            =\u003e config('amazon-pay.language'),\n    'productType'                 =\u003e 'PayAndShip',\n    'placement'                   =\u003e 'Cart',\n    'createCheckoutSessionConfig' =\u003e [\n        'payloadJSON' =\u003e $payload,\n        'signature'   =\u003e $signature,\n        'publicKeyId' =\u003e config('amazon-pay.public_key_id'),\n        'algorithm'   =\u003e config('amazon-pay.algorithm'),\n    ],\n];\n```\n\n```html\n\u003cbody\u003e\n    \u003cdiv id=\"AmazonPayButton\"\u003e\u003c/div\u003e\n\n    \u003cscript src=\"{{ \\AmazonPay::getAmazonPayScript() }}\"\u003e\u003c/script\u003e\n    \u003cscript type=\"text/javascript\" charset=\"utf-8\"\u003e\n        amazon.Pay.renderButton('#AmazonPayButton', @json($button));\n    \u003c/script\u003e\n\u003c/body\u003e\n```\n\n## Testing\n\nYou may use the `AmazonPay` facade's `fake` method to apply the mock response.\n\n```php\n\u003c?php\n\n\\AmazonPay::fake([\n    'refundId'           =\u003e 'S01-5105180-3221187-R022311',\n    'chargeId'           =\u003e 'S01-5105180-3221187-C056351',\n    'refundAmount'       =\u003e [\n        'amount'       =\u003e '14.00',\n        'currencyCode' =\u003e 'USD'\n    ],\n    'softDescriptor'     =\u003e 'Descriptor',\n    'creationTimestamp'  =\u003e '20190714T155300Z',\n    'statusDetails'      =\u003e [\n        'state'                =\u003e 'RefundInitiated',\n        'reasonCode'           =\u003e null,\n        'reasonDescription'    =\u003e null,\n        'lastUpdatedTimestamp' =\u003e '20190714T155300Z'\n    ],\n    'releaseEnvironment' =\u003e 'Sandbox',\n]);\n\n$payload = [\n    'chargeId'       =\u003e 'S01-5105180-3221187-C056351',\n    'refundAmount'   =\u003e [\n        'amount'       =\u003e '14.00',\n        'currencyCode' =\u003e 'USD',\n    ],\n    'softDescriptor' =\u003e 'Descriptor',\n];\n\n$response = \\AmazonPay::createRefund($payload, []);\n$result = json_decode($response['response'], true);\n\necho $result['refundId']; // S01-5105180-3221187-R022311\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunaoka%2Famazon-pay-api-sdk-php-laravel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsunaoka%2Famazon-pay-api-sdk-php-laravel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunaoka%2Famazon-pay-api-sdk-php-laravel/lists"}