openapi: 3.0.3 info: title: PAY.JP 3D Secure Plans API description: PAY.JP is an online payment service operated by PAY, Inc. (PAY株式会社) in Japan. The REST API creates charges, tokenizes cards, manages customers, runs subscriptions (定期課金), and reports transfers (入金) and balances in Japanese yen. Authentication is HTTP Basic with a secret key (sk_test_ / sk_live_) as the username and an empty password. All amounts are integer JPY. termsOfService: https://pay.jp/terms contact: name: PAY.JP Support url: https://help.pay.jp/ version: '1.0' servers: - url: https://api.pay.jp/v1 description: PAY.JP REST API (HTTPS only) security: - basicAuth: [] tags: - name: Plans paths: /plans: get: operationId: listPlans tags: - Plans summary: List plans responses: '200': $ref: '#/components/responses/List' post: operationId: createPlan tags: - Plans summary: Create a recurring plan requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: amount: type: integer currency: type: string enum: - jpy default: jpy interval: type: string enum: - month - year trial_days: type: integer billing_day: type: integer name: type: string required: - amount - currency - interval responses: '200': $ref: '#/components/responses/Plan' /plans/{id}: parameters: - $ref: '#/components/parameters/id' get: operationId: retrievePlan tags: - Plans summary: Retrieve a plan responses: '200': $ref: '#/components/responses/Plan' post: operationId: updatePlan tags: - Plans summary: Update a plan responses: '200': $ref: '#/components/responses/Plan' delete: operationId: deletePlan tags: - Plans summary: Delete a plan responses: '200': $ref: '#/components/responses/Deleted' components: schemas: List: type: object properties: object: type: string example: list count: type: integer has_more: type: boolean url: type: string data: type: array items: $ref: '#/components/schemas/Object' Object: type: object properties: id: type: string object: type: string livemode: type: boolean created: type: integer description: Unix timestamp additionalProperties: true responses: Deleted: description: A deletion confirmation content: application/json: schema: type: object properties: id: type: string object: type: string example: charge deleted: type: boolean example: true Plan: description: A Plan object content: application/json: schema: $ref: '#/components/schemas/Object' List: description: A paginated list object content: application/json: schema: $ref: '#/components/schemas/List' parameters: id: name: id in: path required: true schema: type: string securitySchemes: basicAuth: type: http scheme: basic description: HTTP Basic authentication. Use the secret key (sk_test_ / sk_live_) as the username and leave the password empty.