The checkout object is the data payload that contains information about the customer's order. It is POSTed to the Affirm API to initialize Affirm checkout.
Attributes
| Attribute | Data type | Description | 
|---|---|---|
| merchant required  | object | Merchant specific information. See merchant details. | 
| shipping required*  | object | The shipping details. Note: Shipping is not required if the merchant is not shipping goods for the given transaction. | 
| billing | object | The billing details. | 
| items required  | Array | An array of item. | 
| discounts | object | A list of discounts. Each discount must have their discount code. | 
| metadata | object | See metadata details. | 
| order_id | string | The merchant order id. This is stored for your own future reference. | 
| currency required  | string | Three-letter ISO currency code in uppercase. Possible values: - USD - CAD - GBP  | 
| financing_program | string | A financing program applied on this checkout. | 
| shipping_amount | integer | The total shipping amount in cents. A positive integer representing how much, in USD or CAD cents (e.g., 100 cents to charge $1.00). | 
| tax_amount | integer | The total tax amount in cents. A positive integer representing how much, in USD or CAD cents (e.g., 100 cents to charge $1.00). | 
| total required  | integer | The total amount of the checkout in USD or CAD cents (e.g., 100 cents to charge $1.00). | 
| checkout_expiration | timestamp | A date-timestamp of when the checkout_id will expire. - ISO timestamp format - No milliseconds | 
| expiration_time | timestamp | If set, this defines a time-to-live (TTL) deadline for the checkout. The checkout must be confirmed before this timestamp. Any confirmation attempt after the TTL expires will be rejected. | 
{
   "merchant":{
      "user_confirmation_url":"https://merchantsite.com/confirm",
      "user_cancel_url":"https://merchantsite.com/cancel",
      "user_confirmation_url_action":"POST",
      "use_vcn": false,
      "name":"Your Customer-Facing Merchant Name"
   },
   "shipping":{
      "name":{
         "full":"John Doe"
      },
      "address":{
         "street1": "4519 Rue Levy",
      	 "street2": "Apt 1",
      	 "city": "Saint-Laurent",
      	 "region1_code": "QC",
      	 "postal_code": "H4R2P9",
     		 "country_code": "CAN"
      },
      "phone_number":"4155555555",
      "email":"[email protected]"
   },
   "billing":{
      "name":{
         "full":"John Doe"
      },
      "address":{
         "street1": "4519 Rue Levy",
      	 "street2": "Apt 1",
      	 "city": "Saint-Laurent",
      	 "region1_code": "QC",
      	 "postal_code": "H4R2P9",
     		 "country_code": "CAN"
      },
      "phone_number":"4155555555",
      "email":"[email protected]"
   },
   "items":[
      {
         "display_name":"Awesome Pants",
         "sku":"ABC-123",
         "unit_price":1999,
         "qty":3,
         "item_image_url":"http://merchantsite.com/images/awesome-pants.jpg",
         "item_url":"http://merchantsite.com/products/awesome-pants.html"
      }
   ],
   "discounts":{
      "RETURN5":{
         "discount_amount":500,
         "discount_display_name":"Returning customer 5% discount"
      },
      "PRESDAY10":{
         "discount_amount":1000,
         "discount_display_name":"President's Day 10% off"
      }
   },
   "metadata":{
      "shipping_type":"UPS Ground",
      "mode":"modal"
   },
   "order_id":"JKLMO4321",
   "currency":"CAD",  
   "financing_program":"flyus_3z6r12r",
   "shipping_amount":1000,
   "tax_amount":500,
   "total":5997
}