SQUARE TERMINAL API

Connect your app to Square Terminal for in-person payments.

Whether you’re building a point-of-sale app or business management system, you can wirelessly connect your app to Square Terminal, the all-in-one card machine built by Square. Now developers on any platform can offer in-person payments with Square.


Étape 1 : Jumelez votre application avec Square Terminal.

Déclenchez un appel API pour générer un code d’appareil et l’afficher pour votre utilisateur. Une fois que votre utilisateur s’est connecté au Terminal en utilisant le code, un événement Webhook (qui comporte le device_id) vous informera que l’appareil est prêt à recevoir une demande de vérification de la part de votre système.

body = {
idempotency_key: '{{RANDOM_STRING}}',
 device_code: {
   name: 'Counter 1',
   product_type: 'TERMINAL_API',
   location_id: 'B5E4484SHHNYH',
 }
}

client.devices.create_device_code(body: body)

Étape 2 : Envoyez le montant du paiement à partir de votre application au Terminal.

Invoquez Créer un passage en caisse avec Square Terminal pour le montant du paiement. L’appareil invitera alors l’acheteur à payer.

body = {
 idempotency_key: '{{RANDOM_STRING}}',
 checkout: {
   amount_money: {
     amount: 2610,
     currency: 'CAD'
   },
   reference_id: 'id123',
   note: 'A brief note',
   device_options: {
     device_id: '{{DEVICE_ID}}'
   }
 }
}

client.terminal.create_terminal_checkout(body: body)

Étape 3 : Finalisez la vente dans votre application.

Une fois le paiement effectué, des Webhooks vous signaleront que vous pouvez conclure la vente.

{
  "merchant_id": "7NZR...NPC",
  "type": "terminal.checkout.updated",
  "event_id": "7229a692-def5-4a7e-b4f3-80638aa2f24d",
  "created_at": "2020-04-10T14:43:55.262Z",
  "data": {
    "type": "checkout.event",
    "id": "dhgENdnFOPXqO",
    "object": {
      "checkout": {
        "amount_money": {
          "amount": 2610,
          "currency": "CAD"
        },
        "app_id": "sq0idp-734M...nm6g",
        "created_at": "2020-04-10T14:43:55.262Z",
        "deadline_duration": "PT5M",
        "device_options": {
          "device_id": "{{DEVICE_ID}}",
          "skip_receipt_screen": false,
          "tip_settings": {
            "allow_tipping": false
          }
        },
        "id": "dhgENdnFOPXqO",
        "note": "A brief note",
        "payment_ids": [
           "dgzrZT...PouaB"
         ],
         "reference_id": "id123",
         "status": "COMPLETED",
         "updated_at": "2020-04-10T14:44:06.039Z"
      }
    }
  }
}

Pourquoi Square Terminal?

Square Terminal est votre appareil tout-en-un pour les paiements par carte et pour les reçus. Square l’a conçu de sorte qu’il offre une façon sécurisée, fiable et totalement équitable d’encaisser des paiements.

Laissez Square gérer les paiements pour vous.

Pour en savoir plus, consultez la documentation sur l’interface API Terminal.