{"id":185,"library":"squareup","title":"Square Python SDK","description":"Official Square payments Python SDK. Current version: 44.0.1 (Mar 2026). VERSIONING QUIRK: squareup uses date-based versions (44.0.1.20260122) — major version tracks Square API version. Releases every ~4-6 weeks. Install is 'squareup', import is 'square'. Square uses idempotency_key for all payment creation — required, not optional. Amount in smallest currency unit (cents for USD). Test environment uses sandbox credentials with 'sandbox-' prefix.","status":"active","version":"44.0.1.20260122","language":"python","source_language":"en","source_url":"https://github.com/square/square-python-sdk","tags":["square","payments","python","payment-gateway","pos"],"install":[{"cmd":"pip install squareup","lang":"bash","label":"Python"}],"dependencies":[{"reason":"Required. Installed automatically.","package":"requests","optional":false}],"imports":[{"wrong":"from square import Client","symbol":"AsyncSquare","correct":"from square import AsyncSquare"},{"wrong":"from square import Client","symbol":"Square","correct":"from square import Square"}],"quickstart":{"code":"# pip install squareup\nimport square\nimport uuid\n\nclient = square.Client(\n    access_token='EAAAl...',  # sandbox token from developer.squareup.com\n    environment='sandbox'\n)\n\n# Create payment\nresult = client.payments.create_payment({\n    'source_id': 'cnon:card-nonce-ok',  # test nonce\n    'idempotency_key': str(uuid.uuid4()),\n    'amount_money': {\n        'amount': 100,   # cents\n        'currency': 'USD'\n    },\n    'note': 'Test payment'\n})\n\nif result.is_success():\n    payment = result.body['payment']\n    print(f'Payment {payment[\"id\"]}: {payment[\"status\"]}')\nelif result.is_error():\n    for error in result.errors:\n        print(f'Error {error[\"code\"]}: {error[\"detail\"]}')","lang":"python","description":"Square Python SDK — create payment with test nonce."},"warnings":[{"fix":"pip install squareup; then import square","message":"Install is 'squareup' but import is 'import square'. Common confusion — installing 'square' installs a different package.","severity":"breaking","affected_versions":"all"},{"fix":"'idempotency_key': str(uuid.uuid4())","message":"idempotency_key is required for payments.create_payment(). Omitting it raises a validation error. Must be unique per payment attempt.","severity":"breaking","affected_versions":"all"},{"fix":"amount_in_cents = int(amount_in_dollars * 100)","message":"Amount is in smallest currency unit — cents for USD. 100 = $1.00. Passing 1.00 as float or passing dollars will result in undercharging.","severity":"breaking","affected_versions":"all"},{"fix":"if result.is_success(): — not if result.is_success:","message":"result.is_success() and result.is_error() are METHODS not properties. Calling result.is_success without () always returns truthy.","severity":"gotcha","affected_versions":"all"},{"fix":"Check Square changelog before upgrading: developer.squareup.com/docs/changelog","message":"Version numbering is date-based (44.0.1.20260122). Major version tracks Square API version. Pin carefully — minor releases can add breaking API changes.","severity":"gotcha","affected_versions":"all"},{"fix":"Sandbox test nonce: 'cnon:card-nonce-ok'. Production: collect via Square Web Payments JS SDK.","message":"Sandbox uses test card nonces from Square docs. Production uses nonces from Square Web Payments SDK on frontend. Never pass real card numbers as source_id.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'-6':32 '2026':13 '4':31 '44.0.1':11 '44.0.1.20260122':22 'amount':51 'api':27 'base':20 'cent':56 'creation':47 'credenti':63 'currenc':54 'current':9 'date':19 'date-bas':18 'environ':60 'everi':30 'gateway':72 'idempot':42 'import':37 'instal':34 'key':43 'major':23 'mar':12 'offici':4 'option':50 'payment':6,46,68,71 'payment-gateway':70 'pos':73 'prefix':66 'python':2,7,69 'quirk':15 'releas':29 'requir':48 'sandbox':62,65 'sdk':3,8 'smallest':53 'squar':1,5,26,39,40,67 'squareup':16,36 'test':59 'track':25 'unit':55 'usd':58 'use':17,41,61 'version':10,14,21,24,28 'week':33","created_at":"2026-03-25T03:08:35.451141+00:00","updated_at":"2026-04-16T22:17:02.660783+00:00","problems":null,"ecosystem":"pypi","meta_description":null,"install_score":100,"quickstart_score":0,"quickstart_tag":"stale","pypi_latest":"45.1.0.20260819","cli_name":"","cli_version":null,"type":"library","homepage":"https://squareup.com","github":"https://github.com/square/square-python-sdk","docs":null,"changelog":null,"pypi":"https://pypi.org/project/squareup/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["payments"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-07-03","last_verified":"2026-08-26","next_check":"2026-08-02","install_tag":"verified"}}