Open2
ShopifyをHeadlessに使う
会員の登録について
mutation customerCreate($input: CustomerCreateInput!) {
customerCreate(input: $input) {
customer {
firstName
lastName
email
phone
acceptsMarketing
}
customerUserErrors {
field
message
code
}
}
}
{
"input": {
"firstName": "John",
"lastName": "Smith",
"email": "johnsmith@shopify.com",
"phone": "+15146669999",
"password": "5hopify",
"acceptsMarketing": true
}
}
会員のログインについて
以下でアクセストークンを取得できる
仮に自社の認証基盤で管理する場合は、passwordを自社側で発行してログインさせる手があるかと思う。
ただ、そのpasswordはどう管理するのか?DBに保存するのであればShopify側のログインpasswordを平文で保存している状態と変わらないためセキュリティ的には望ましくなさそう
mutation customerAccessTokenCreate {
customerAccessTokenCreate(input: {email: "ghaida@example.com", password: "7dx2gx2Z"}) {
customerAccessToken {
accessToken
}
customerUserErrors {
message
}
}
}
今考えている手法の場合、下記の様に毎回顧客情報を入力してもらう必要が出てくる可能性がある
ただひとつ気になるのが、buyerIdentifyには顧客情報を追加できるので、そもそもこれを自社側で持っていればそれをbuyerIdentifyに入れて送信すれば良いだけな気がする。
初回購入時だけは値がないので入力してもらう。入力した値はAPI経由で自社DBに共有する
確かShopifyはemailをIDにしている節があるので、emailさえ変わらなければ同一ユーザーとして扱えたような。