BlueSnap

Global payment processing platform

developers.bluesnap.com ↗
Version
8976-Tools
OpenAPI
3.0.3
Endpoints
36
Schemas
16
Updated
3 days ago
Payments payments ecommerce global
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://sandbox.bluesnap.com/services/2

Authentication

basic apiKey

Endpoints

Agreement 3 endpoints

GET /agreements/28521

for Australia and Canada

operationId: Agreement_getDetails

Responses

200 OK
GET /agreements/28521
POST /agreements/debit/{region}/{type}

for Australia and Canada

operationId: Agreement_createDebitForAusCan

Parameters

Name In Required Type Description
region path required string Represents the country. Possible Values: `au`, `ca`
type path required string Represents the mandate type. Possible Values: `onetime`,`recurring`, `ondemand`
planid query optional string SKU number
overriderecurringchargeamount query optional string the amount which overrides recurring charge

Responses

200 OK
POST /agreements/debit/{region}/{type}
GET /agreements/prenotification/1105235763

for Australia and Canada

operationId: Agreement_getAusCan

Responses

200 OK
GET /agreements/prenotification/1105235763

Authorization 1 endpoints

POST /transactions
operationId: Authorization_createTransaction

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/AuthorizationCreateTransactionRequest"
      }
    }
  }
}

Responses

200 OK
POST /transactions

Plan 4 endpoints

POST /recurring/plans
operationId: Plan_createRecurringPlan

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/PlanCreateRecurringPlanRequest"
      }
    }
  }
}

Responses

200 OK
POST /recurring/plans
GET /recurring/plans/{planId}
operationId: Plan_getSpecific

Parameters

Name In Required Type Description
planId path required integer BlueSnap identifier for the plan.

Responses

200 OK
GET /recurring/plans/{planId}
PUT /recurring/plans/{planId}
operationId: Plan_updateRecurringPlan

Parameters

Name In Required Type Description
planId path required integer BlueSnap identifier for the plan.

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/PlanUpdateRecurringPlanRequest"
      }
    }
  }
}

Responses

200 OK
PUT /recurring/plans/{planId}
GET /recurring/plans?{parameters}
operationId: Plan_getAll

Parameters

Name In Required Type Description
pagesize query optional string
after query optional string
gettotal query optional boolean
fulldescription query optional boolean

Responses

200 OK
GET /recurring/plans?{parameters}

Reversal 1 endpoints

PUT /transactions
operationId: Reversal_authTransaction

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/ReversalAuthTransactionRequest"
      }
    }
  }
}

Responses

200 OK
PUT /transactions

Shopper 4 endpoints

POST /vaulted-shoppers
operationId: Shopper_createVaultedShopper

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/ShopperCreateVaultedShopperRequest"
      }
    }
  }
}

Responses

200 OK
POST /vaulted-shoppers
DELETE /vaulted-shoppers/{vaultedShopperId}
operationId: Shopper_deleteVaultedShopper

Parameters

Name In Required Type Description
vaultedShopperId path required string vaultedShopperId received from BlueSnap

Responses

200 OK
DELETE /vaulted-shoppers/{vaultedShopperId}
GET /vaulted-shoppers/{vaultedShopperId}
operationId: Shopper_get

Parameters

Name In Required Type Description
vaultedShopperId path required string vaultedShopperId received from BlueSnap

Responses

200 OK
GET /vaulted-shoppers/{vaultedShopperId}
PUT /vaulted-shoppers/{vaultedShopperId}
operationId: Shopper_updateVaultedShopper

Parameters

Name In Required Type Description
vaultedShopperId path required string vaultedShopperId received from BlueSnap

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/ShopperUpdateVaultedShopperRequest"
      }
    }
  }
}

Responses

200 OK
PUT /vaulted-shoppers/{vaultedShopperId}

Subscription 8 endpoints

POST /recurring/ondemand
operationId: Subscription_createMerchantManagedSubscription

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/SubscriptionCreateMerchantManagedSubscriptionRequest"
      }
    }
  }
}

Responses

200 OK
POST /recurring/ondemand
POST /recurring/ondemand/{subscriptionId}
operationId: Subscription_createMerchantManagedCharge

Parameters

Name In Required Type Description
subscriptionId path required integer BlueSnap identifier for the subscription.

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/SubscriptionCreateMerchantManagedChargeRequest"
      }
    }
  }
}

Responses

200 OK
POST /recurring/ondemand/{subscriptionId}
POST /recurring/subscriptions
operationId: Subscription_createNew

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/SubscriptionCreateNewRequest"
      }
    }
  }
}

Responses

200 OK
POST /recurring/subscriptions
GET /recurring/subscriptions/:subscriptionId /charges?{parameters}
operationId: Subscription_getAllCharges

Parameters

Name In Required Type Description
pagesize query optional string
after query optional string
fulldescription query optional boolean

Responses

200 OK
GET /recurring/subscriptions/:subscriptionId /charges?{parameters}
GET /recurring/subscriptions/:subscriptionId/switch-charge-amount
operationId: Subscription_getSwitchChargeAmount

Parameters

Name In Required Type Description
newplanid query optional string
newquantity query optional string

Responses

200 OK
GET /recurring/subscriptions/:subscriptionId/switch-charge-amount
GET /recurring/subscriptions/{subscriptionId}
operationId: Subscription_getSpecific

Parameters

Name In Required Type Description
subscriptionId path required integer BlueSnap identifier for the subscription.

Responses

200 OK
GET /recurring/subscriptions/{subscriptionId}
PUT /recurring/subscriptions/{subscriptionId}
operationId: Subscription_updateSubscription

Parameters

Name In Required Type Description
subscriptionId path required integer BlueSnap identifier for the subscription.

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/SubscriptionUpdateSubscriptionRequest"
      }
    }
  }
}

Responses

200 OK
PUT /recurring/subscriptions/{subscriptionId}
GET /recurring/subscriptions?{parameters}
operationId: Subscription_listAllSubscriptions

Parameters

Name In Required Type Description
pagesize query optional string
after query optional string
gettotal query optional boolean
fulldescription query optional boolean

Responses

200 OK
GET /recurring/subscriptions?{parameters}

Transaction 11 endpoints

POST /alt-transactions
operationId: Transaction_createSofortTransaction

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/TransactionCreateSofortTransactionRequest"
      }
    }
  }
}

Responses

200 OK
POST /alt-transactions
PUT /alt-transactions
operationId: Transaction_updatePaypalTransaction

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/TransactionUpdatePaypalTransactionRequest"
      }
    }
  }
}

Responses

200 OK
PUT /alt-transactions
GET /alt-transactions/resolve
operationId: Transaction_getSofortTransaction

Parameters

Name In Required Type Description
orderId query required integer Order ID received in the Create Sofort Transaction response from BlueSnap

Responses

200 OK
GET /alt-transactions/resolve
GET /alt-transactions/resolve?orderId={orderId}
operationId: Transaction_getPaypalTransaction

Parameters

Name In Required Type Description
orderId path required string order ID received in the response

Responses

200 OK
GET /alt-transactions/resolve?orderId={orderId}
GET /alt-transactions/{transactionId}
operationId: Transaction_getSepaDd

Parameters

Name In Required Type Description
transactionId path required string transaction ID received in the response from BlueSnap

Responses

200 OK
GET /alt-transactions/{transactionId}
POST /batch-transactions
operationId: Transaction_createBatchTransaction

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/TransactionCreateBatchTransactionRequest"
      }
    }
  }
}

Responses

200 OK
POST /batch-transactions
GET /batch-transactions/{batchId}
operationId: Transaction_getBatchTransaction

Parameters

Name In Required Type Description
batchId path required string batch ID sent in the Create Batch Transaction request

Responses

200 OK
GET /batch-transactions/{batchId}
PUT /transactions/approval
operationId: Transaction_approveMerchantTransaction

Parameters

Name In Required Type Description
transactionid query optional string either `transactionid` or `merchanttransactionid` <b>is required</b> <br />ID of the transaction to be approved/declined
approvetransaction query optional boolean Set to `true` to approve the transaction or to `false` to decline the transaction. Default value is `true`.

Responses

200 OK
PUT /transactions/approval
DELETE /transactions/pending-refund/{transactionId}
operationId: Transaction_cancelPendingRefund

Parameters

Name In Required Type Description
transactionId path required string transactionId received from BlueSnap

Responses

200 OK
DELETE /transactions/pending-refund/{transactionId}
POST /transactions/refund/{transactionId}
operationId: Transaction_initiateRefund

Parameters

Name In Required Type Description
transactionId path required string ID of the transaction to be refunded <br> Required if not using `merchantTransactionId`

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/TransactionInitiateRefundRequest"
      }
    }
  }
}

Responses

200 OK
POST /transactions/refund/{transactionId}
GET /transactions/{transactionId}
operationId: Transaction_getById

Parameters

Name In Required Type Description
transactionId path required string transaction ID received in the response from BlueSnap

Responses

200 OK
GET /transactions/{transactionId}

Vendor 4 endpoints

POST /vendors
operationId: Vendor_create

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/VendorCreateRequest"
      }
    }
  }
}

Responses

200 OK
POST /vendors
GET /vendors/{vendorId}
operationId: Vendor_getVendor

Parameters

Name In Required Type Description
vendorId path required integer BlueSnap identifier for the vendor

Responses

200 OK
GET /vendors/{vendorId}
PUT /vendors/{vendorId}
operationId: Vendor_updateVendor

Parameters

Name In Required Type Description
vendorId path required integer BlueSnap identifier for the vendor

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/VendorUpdateVendorRequest"
      }
    }
  }
}

Responses

200 OK
PUT /vendors/{vendorId}
GET /vendors?{parameters}
operationId: Vendor_getAllVendors

Parameters

Name In Required Type Description
gettotal query optional boolean

Responses

200 OK
GET /vendors?{parameters}

Schemas

object AuthorizationCreateTransactionRequest
{
  "type": "object",
  "properties": {
    "amount": {
      "type": "number",
      "format": "float",
      "default": 11
    },
    "currency": {
      "type": "string",
      "default": "USD"
    },
    "creditCard": {
      "type": "object",
      "properties": {
        "cardNumber": {
          "type": "string",
          "default": "4263982640269299"
        },
        "securityCode": {
          "type": "integer",
          "format": "int32",
          "default": 837
        },
        "expirationYear": {
          "type": "integer",
          "format": "int32",
          "default": 2026
        },
        "expirationMonth": {
          "type": "string",
          "default": "02"
        }
      }
    },
    "cardHolderInfo": {
      "type": "object",
      "properties": {
        "zip": {
          "type": "string",
          "default": "02453"
        },
        "lastName": {
          "type": "string",
          "default": "test last name"
        },
        "firstName": {
          "type": "string",
          "default": "test first name"
        }
      }
    },
    "softDescriptor": {
      "type": "string",
      "default": "DescTest"
    },
    "cardTransactionType": {
      "type": "string",
      "default": "AUTH_ONLY"
    }
  }
}
object PlanCreateRecurringPlanRequest
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "default": "Gold Plan"
    },
    "currency": {
      "type": "string",
      "default": "USD"
    },
    "chargeFrequency": {
      "type": "string",
      "default": "MONTHLY"
    },
    "gracePeriodDays": {
      "type": "integer",
      "format": "int32",
      "default": 10
    },
    "trialPeriodDays": {
      "type": "integer",
      "format": "int32",
      "default": 14
    },
    "chargeOnPlanSwitch": {
      "type": "boolean",
      "default": true
    },
    "maxNumberOfCharges": {
      "type": "integer",
      "format": "int32",
      "default": 12
    },
    "initialChargeAmount": {
      "type": "integer",
      "format": "int32",
      "default": 100
    },
    "recurringChargeAmount": {
      "type": "number",
      "format": "float",
      "default": 29.99
    }
  }
}
object PlanUpdateRecurringPlanRequest
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "default": "Gold Plan"
    },
    "currency": {
      "type": "string",
      "default": "USD"
    },
    "chargeFrequency": {
      "type": "string",
      "default": "MONTHLY"
    },
    "trialPeriodDays": {
      "type": "string",
      "default": "7"
    },
    "initialChargeAmount": {
      "type": "string",
      "default": "30"
    },
    "recurringChargeAmount": {
      "type": "string",
      "default": "29.99"
    }
  }
}
object ReversalAuthTransactionRequest
{
  "type": "object",
  "properties": {
    "transactionId": {
      "type": "integer",
      "format": "int32",
      "default": 1011671987
    },
    "cardTransactionType": {
      "type": "string",
      "default": "AUTH_REVERSAL"
    }
  }
}
object ShopperCreateVaultedShopperRequest
{
  "type": "object",
  "properties": {
    "lastName": {
      "type": "string",
      "default": "LastName"
    },
    "firstName": {
      "type": "string",
      "default": "FirstName"
    },
    "paymentSources": {
      "type": "object",
      "properties": {
        "creditCardInfo": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "creditCard": {
                "type": "object",
                "properties": {
                  "cardNumber": {
                    "type": "string",
                    "default": "4263982640269299"
                  },
                  "securityCode": {
                    "type": "string",
                    "default": "837"
                  },
                  "expirationYear": {
                    "type": "integer",
                    "format": "int32",
                    "default": 2023
                  },
                  "expirationMonth": {
                    "type": "integer",
                    "format": "int32",
                    "default": 2
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
object ShopperUpdateVaultedShopperRequest
{
  "type": "object",
  "properties": {
    "lastName": {
      "type": "string",
      "default": "LastName"
    },
    "firstName": {
      "type": "string",
      "default": "FirstName"
    },
    "paymentSources": {
      "type": "object",
      "properties": {
        "creditCardInfo": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "creditCard": {
                "type": "object",
                "properties": {
                  "cardNumber": {
                    "type": "string",
                    "default": "4263982640269299"
                  },
                  "securityCode": {
                    "type": "string",
                    "default": "837"
                  },
                  "expirationYear": {
                    "type": "integer",
                    "format": "int32",
                    "default": 2023
                  },
                  "expirationMonth": {
                    "type": "integer",
                    "format": "int32",
                    "default": 2
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
object SubscriptionCreateMerchantManagedChargeRequest
{
  "type": "object",
  "properties": {
    "amount": {
      "type": "number",
      "format": "float",
      "default": 45
    },
    "currency": {
      "type": "string",
      "default": "USD"
    },
    "taxReference": {
      "type": "string",
      "default": "048deff0-a285-47e1-bc39-42f79bf0095b"
    },
    "merchantTransactionId": {
      "type": "string",
      "default": "MyUniqueOnDemandSubscription"
    }
  }
}
object SubscriptionCreateMerchantManagedSubscriptionRequest
{
  "type": "object",
  "properties": {
    "amount": {
      "type": "number",
      "format": "float",
      "default": 45
    },
    "currency": {
      "type": "string",
      "default": "USD"
    },
    "payerInfo": {
      "type": "object",
      "properties": {
        "zip": {
          "type": "string",
          "default": "02453"
        },
        "country": {
          "type": "string",
          "default": "us"
        },
        "lastName": {
          "type": "string",
          "default": "Doe"
        },
        "firstName": {
          "type": "string",
          "default": "John"
        }
      }
    },
    "paymentSource": {
      "type": "object",
      "properties": {
        "creditCardInfo": {
          "type": "object",
          "properties": {
            "creditCard": {
              "type": "object",
              "properties": {
                "cardNumber": {
                  "type": "string",
                  "default": "4012000033330026"
                },
                "securityCode": {
                  "type": "string",
                  "default": "111"
                },
                "expirationYear": {
                  "type": "integer",
                  "format": "int32",
                  "default": 2026
                },
                "expirationMonth": {
                  "type": "integer",
                  "format": "int32",
                  "default": 5
                }
              }
            }
          }
        }
      }
    }
  }
}
object SubscriptionCreateNewRequest
{
  "type": "object",
  "properties": {
    "planId": {
      "type": "integer",
      "format": "int32",
      "default": 2283845
    },
    "payerInfo": {
      "type": "object",
      "properties": {
        "zip": {
          "type": "string",
          "default": "02453"
        },
        "phone": {
          "type": "string",
          "default": "1234567890"
        },
        "lastName": {
          "type": "string",
          "default": "Doe"
        },
        "firstName": {
          "type": "string",
          "default": "John"
        }
      }
    },
    "paymentSource": {
      "type": "object",
      "properties": {
        "creditCardInfo": {
          "type": "object",
          "properties": {
            "creditCard": {
              "type": "object",
              "properties": {
                "cardNumber": {
                  "type": "string",
                  "default": "4111111111111111"
                },
                "securityCode": {
                  "type": "string",
                  "default": "111"
                },
                "expirationYear": {
                  "type": "integer",
                  "format": "int32",
                  "default": 2023
                },
                "expirationMonth": {
                  "type": "string",
                  "default": "07"
                }
              }
            }
          }
        }
      }
    }
  }
}
object SubscriptionUpdateSubscriptionRequest
{
  "type": "object",
  "properties": {
    "planId": {
      "type": "string",
      "default": "2283849"
    }
  }
}
object TransactionCreateBatchTransactionRequest
{
  "type": "object",
  "properties": {
    "batchTransaction": {
      "type": "object",
      "properties": {
        "batchId": {
          "type": "string",
          "default": "567890"
        },
        "callbackUrl": {
          "type": "string",
          "default": "http://example.com/batch_callback"
        },
        "cardTransaction": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "amount": {
                "type": "string",
                "default": "20.00"
              },
              "currency": {
                "type": "string",
                "default": "USD"
              },
              "creditCard": {
                "type": "object",
                "properties": {
                  "": {
                    "type": "string"
                  },
                  "cardNumber": {
                    "type": "string",
                    "default": "4263982640269299"
                  },
                  "expirationYear": {
                    "type": "string",
                    "default": "2023"
                  },
                  "expirationMonth": {
                    "type": "string",
                    "default": "02"
                  }
                }
              },
              "cardHolderInfo": {
                "type": "object",
                "properties": {
                  "zip": {
                    "type": "string",
                    "default": "02453"
                  },
                  "lastName": {
                    "type": "string",
                    "default": "test last name"
                  },
                  "firstName": {
                    "type": "string",
                    "default": "test first name"
                  }
                }
              },
              "cardTransactionType": {
                "type": "string",
                "default": "AUTH_CAPTURE"
              },
              "merchantTransactionId": {
                "type": "string",
                "default": "566"
              }
            }
          }
        }
      }
    }
  }
}
object TransactionCreateSofortTransactionRequest
{
  "type": "object",
  "properties": {
    "amount": {
      "type": "number",
      "format": "float",
      "default": 42
    },
    "currency": {
      "type": "string",
      "default": "EUR"
    },
    "payerInfo": {
      "type": "object",
      "properties": {
        "zip": {
          "type": "string",
          "default": "12345"
        },
        "phone": {
          "type": "string",
          "default": "1234567890"
        },
        "country": {
          "type": "string",
          "default": "uk"
        },
        "lastName": {
          "type": "string",
          "default": "Doe"
        },
        "firstName": {
          "type": "string",
          "default": "John"
        }
      }
    },
    "ecpTransaction": {
      "type": "object",
      "properties": {
        "accountType": {
          "type": "string",
          "default": "CONSUMER_CHECKING"
        },
        "accountNumber": {
          "type": "integer",
          "format": "int32",
          "default": 4099999992
        },
        "routingNumber": {
          "type": "string",
          "default": "011075150"
        }
      }
    },
    "softDescriptor": {
      "type": "string",
      "default": "ABC COMPANY"
    },
    "idealTransaction": {
      "type": "object",
      "properties": {
        "returnUrl": {
          "type": "string",
          "default": "http://www.returnURL.com"
        }
      }
    },
    "paypalTransaction": {
      "type": "object",
      "properties": {
        "cancelUrl": {
          "type": "string",
          "default": "http://www.cancelURL.com"
        },
        "returnUrl": {
          "type": "string",
          "default": "http://www.returnURL.com"
        },
        "transactionType": {
          "type": "string",
          "default": "SET_ORDER"
        }
      }
    },
    "sofortTransaction": {
      "type": "object",
      "properties": {
        "returnUrl": {
          "type": "string",
          "default": "http://www.returnURL.com"
        }
      }
    },
    "authorizedByShopper": {
      "type": "boolean",
      "default": true
    },
    "acssDirectDebitTransaction": {
      "type": "object",
      "properties": {
        "accountType": {
          "type": "string",
          "default": "PERSONAL"
        },
        "agreementId": {
          "type": "integer",
          "format": "int32",
          "default": 87
        },
        "accountNumber": {
          "type": "string",
          "default": "9990000001"
        },
        "routingNumber": {
          "type": "string",
          "default": "001004820"
        }
      }
    },
    "becsDirectDebitTransaction": {
      "type": "object",
      "properties": {
        "bsbNumber": {
          "type": "string",
          "default": "980201"
        },
        "branchName": {
          "type": "string",
          "default": "branchName"
        },
        "accountName": {
          "type": "string",
          "default": "Boris Britva"
        },
        "agreementId": {
          "type": "integer",
          "format": "int32",
          "default": 81
        },
        "accountNumber": {
          "type": "string",
          "default": "9990000001"
        },
        "financialInstitution": {
          "type": "string",
          "default": "financialInstitution"
        }
      }
    },
    "sepaDirectDebitTransaction": {
      "type": "object",
      "properties": {
        "iban": {
          "type": "string",
          "default": "DE09100100101234567893"
        }
      }
    },
    "localBankTransferTransaction": {
      "type": "object",
      "properties": {
        "{}": {
          "type": "string"
        }
      },
      "description": "empty object"
    }
  }
}
object TransactionInitiateRefundRequest
{
  "type": "object",
  "properties": {
    "reason": {
      "type": "string",
      "default": "Refund for order #1992"
    },
    "cancelSubscriptions": {
      "type": "boolean",
      "default": false
    },
    "transactionMetaData": {
      "type": "object",
      "properties": {
        "metaData": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "metaKey": {
                "type": "string",
                "default": "refundedItems"
              },
              "metaValue": {
                "type": "string",
                "default": 15528832
              },
              "metaDescription": {
                "type": "string",
                "default": "Refunded Items"
              }
            }
          }
        }
      }
    }
  }
}
object TransactionUpdatePaypalTransactionRequest
{
  "type": "object",
  "properties": {
    "amount": {
      "type": "number",
      "format": "float",
      "default": 105
    },
    "currency": {
      "type": "string",
      "default": "USD"
    },
    "paypalTransaction": {
      "type": "object",
      "properties": {
        "orderId": {
          "type": "string",
          "default": "7078033"
        },
        "transactionType": {
          "type": "string",
          "default": "DO_ORDER"
        }
      }
    }
  }
}
object VendorCreateRequest
{
  "type": "object",
  "properties": {
    "zip": {
      "type": "string",
      "default": "02453"
    },
    "city": {
      "type": "string",
      "default": "Boston"
    },
    "email": {
      "type": "string",
      "default": "vendor@example.com"
    },
    "phone": {
      "type": "string",
      "default": "1-123-456-7890"
    },
    "state": {
      "type": "string",
      "default": "MA"
    },
    "ipnUrl": {
      "type": "string",
      "default": "https://ipnaddress.com"
    },
    "address": {
      "type": "string",
      "default": "123 Main Street"
    },
    "country": {
      "type": "string",
      "default": "US"
    },
    "lastName": {
      "type": "string",
      "default": "Smith"
    },
    "firstName": {
      "type": "string",
      "default": "Joe"
    },
    "payoutInfo": {
      "type": "object",
      "properties": {}
    },
    "vendorAgreement": {
      "type": "object",
      "properties": {
        "commissionPercent": {
          "type": "integer",
          "format": "int32",
          "default": 30
        }
      }
    },
    "vendorPrincipal": {
      "type": "object",
      "properties": {
        "dob": {
          "type": "string",
          "default": "28-09-9999"
        },
        "zip": {
          "type": "string",
          "default": "02453"
        },
        "city": {
          "type": "string",
          "default": "Boston"
        },
        "email": {
          "type": "string",
          "default": "individual.vendor@bluesnap.com"
        },
        "address": {
          "type": "string",
          "default": "123 Main Street"
        },
        "country": {
          "type": "string",
          "default": "US"
        },
        "lastName": {
          "type": "string",
          "default": "Smith"
        },
        "firstName": {
          "type": "string",
          "default": "Joe"
        },
        "driverLicenseNumber": {
          "type": "string",
          "default": "561196411"
        },
        "personalIdentificationNumber": {
          "type": "string",
          "default": "1234"
        }
      }
    },
    "defaultPayoutCurrency": {
      "type": "string",
      "default": "USD"
    }
  }
}
object VendorUpdateVendorRequest
{
  "type": "object",
  "properties": {
    "zip": {
      "type": "string",
      "default": "02453"
    },
    "city": {
      "type": "string",
      "default": "testing city"
    },
    "name": {
      "type": "string",
      "default": "Important Vendor"
    },
    "email": {
      "type": "string",
      "default": "vendor@bluesnap.com"
    },
    "phone": {
      "type": "string",
      "default": "1-054-976-6778"
    },
    "state": {
      "type": "string",
      "default": "MA"
    },
    "taxId": {
      "type": "integer",
      "format": "int32",
      "default": 123456789
    },
    "ipnUrl": {
      "type": "string",
      "default": "https://ipnaddress.com"
    },
    "address": {
      "type": "string",
      "default": "123 Main Street"
    },
    "country": {
      "type": "string",
      "default": "US"
    },
    "lastName": {
      "type": "string",
      "default": "Smith"
    },
    "firstName": {
      "type": "string",
      "default": "Joe"
    },
    "vendorUrl": {
      "type": "string",
      "default": "http://mycompany.com"
    },
    "payoutInfo": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "zip": {
            "type": "string",
            "default": "02453"
          },
          "city": {
            "type": "string",
            "default": "Portland"
          },
          "state": {
            "type": "string",
            "default": "MA"
          },
          "bankId": {
            "type": "string",
            "default": "123456789"
          },
          "address": {
            "type": "string",
            "default": "1 bank address"
          },
          "country": {
            "type": "string",
            "default": "US"
          },
          "bankName": {
            "type": "string",
            "default": "Leumi"
          },
          "payoutType": {
            "type": "string",
            "default": "ACH"
          },
          "baseCurrency": {
            "type": "string",
            "default": "USD"
          },
          "bankAccountId": {
            "type": "string",
            "default": "123456789"
          },
          "nameOnAccount": {
            "type": "string",
            "default": "vendor"
          },
          "refundReserve": {
            "type": "integer",
            "format": "int32",
            "default": 200
          },
          "bankAccountType": {
            "type": "string",
            "default": "CHECKING"
          },
          "bankAccountClass": {
            "type": "string",
            "default": "PERSONAL"
          },
          "paymentReference": {
            "type": "string",
            "default": "Payment for vendor 1234"
          },
          "minimalPayoutAmount": {
            "type": "integer",
            "format": "int32",
            "default": 50
          }
        }
      }
    },
    "vendorAgreement": {
      "type": "object",
      "properties": {
        "accountStatus": {
          "type": "string",
          "default": "ACTIVE"
        },
        "commissionPercent": {
          "type": "integer",
          "format": "int32",
          "default": 20
        }
      }
    },
    "vendorPrincipal": {
      "type": "object",
      "properties": {
        "dob": {
          "type": "string",
          "default": "28-09-9999"
        },
        "zip": {
          "type": "string",
          "default": "02453"
        },
        "city": {
          "type": "string",
          "default": "Juneau"
        },
        "email": {
          "type": "string",
          "default": "principal.name@vendor.com"
        },
        "address": {
          "type": "string",
          "default": "123 Main Street"
        },
        "country": {
          "type": "string",
          "default": "US"
        },
        "lastName": {
          "type": "string",
          "default": "Smith"
        },
        "firstName": {
          "type": "string",
          "default": "Joe"
        },
        "driverLicenseNumber": {
          "type": "string",
          "default": "561196411"
        },
        "personalIdentificationNumber": {
          "type": "integer",
          "format": "int32",
          "default": 1234
        }
      }
    },
    "defaultPayoutCurrency": {
      "type": "string",
      "default": "USD"
    }
  }
}